#![deny(missing_docs, unsafe_code)]
#![no_std]
pub const UNICODE_VERSION: (u64, u64, u64) = (9, 0, 0);
pub trait UnicodeBrackets {
fn is_open_bracket(&self) -> bool;
fn is_close_bracket(&self) -> bool;
fn to_open_bracket(&self) -> Self;
fn to_close_bracket(&self) -> Self;
}
impl UnicodeBrackets for char {
fn is_open_bracket(&self) -> bool {
match *self {
'\u{0028}' => true, '\u{005B}' => true, '\u{007B}' => true, '\u{0F3A}' => true, '\u{0F3C}' => true, '\u{169B}' => true, '\u{2045}' => true, '\u{207D}' => true, '\u{208D}' => true, '\u{2308}' => true, '\u{230A}' => true, '\u{2329}' => true, '\u{2768}' => true, '\u{276A}' => true, '\u{276C}' => true, '\u{276E}' => true, '\u{2770}' => true, '\u{2772}' => true, '\u{2774}' => true, '\u{27C5}' => true, '\u{27E6}' => true, '\u{27E8}' => true, '\u{27EA}' => true, '\u{27EC}' => true, '\u{27EE}' => true, '\u{2983}' => true, '\u{2985}' => true, '\u{2987}' => true, '\u{2989}' => true, '\u{298B}' => true, '\u{298D}' => true, '\u{298F}' => true, '\u{2991}' => true, '\u{2993}' => true, '\u{2995}' => true, '\u{2997}' => true, '\u{29D8}' => true, '\u{29DA}' => true, '\u{29FC}' => true, '\u{2E22}' => true, '\u{2E24}' => true, '\u{2E26}' => true, '\u{2E28}' => true, '\u{3008}' => true, '\u{300A}' => true, '\u{300C}' => true, '\u{300E}' => true, '\u{3010}' => true, '\u{3014}' => true, '\u{3016}' => true, '\u{3018}' => true, '\u{301A}' => true, '\u{FE59}' => true, '\u{FE5B}' => true, '\u{FE5D}' => true, '\u{FF08}' => true, '\u{FF3B}' => true, '\u{FF5B}' => true, '\u{FF5F}' => true, '\u{FF62}' => true, _ => false,
}
}
fn is_close_bracket(&self) -> bool {
match *self {
'\u{0029}' => true, '\u{005D}' => true, '\u{007D}' => true, '\u{0F3B}' => true, '\u{0F3D}' => true, '\u{169C}' => true, '\u{2046}' => true, '\u{207E}' => true, '\u{208E}' => true, '\u{2309}' => true, '\u{230B}' => true, '\u{232A}' => true, '\u{2769}' => true, '\u{276B}' => true, '\u{276D}' => true, '\u{276F}' => true, '\u{2771}' => true, '\u{2773}' => true, '\u{2775}' => true, '\u{27C6}' => true, '\u{27E7}' => true, '\u{27E9}' => true, '\u{27EB}' => true, '\u{27ED}' => true, '\u{27EF}' => true, '\u{2984}' => true, '\u{2986}' => true, '\u{2988}' => true, '\u{298A}' => true, '\u{298C}' => true, '\u{298E}' => true, '\u{2990}' => true, '\u{2992}' => true, '\u{2994}' => true, '\u{2996}' => true, '\u{2998}' => true, '\u{29D9}' => true, '\u{29DB}' => true, '\u{29FD}' => true, '\u{2E23}' => true, '\u{2E25}' => true, '\u{2E27}' => true, '\u{2E29}' => true, '\u{3009}' => true, '\u{300B}' => true, '\u{300D}' => true, '\u{300F}' => true, '\u{3011}' => true, '\u{3015}' => true, '\u{3017}' => true, '\u{3019}' => true, '\u{301B}' => true, '\u{FE5A}' => true, '\u{FE5C}' => true, '\u{FE5E}' => true, '\u{FF09}' => true, '\u{FF3D}' => true, '\u{FF5D}' => true, '\u{FF60}' => true, '\u{FF63}' => true, _ => false,
}
}
fn to_close_bracket(&self) -> char {
match *self {
'\u{0028}' => '\u{0029}', '\u{005B}' => '\u{005D}', '\u{007B}' => '\u{007D}', '\u{0F3A}' => '\u{0F3B}', '\u{0F3C}' => '\u{0F3D}', '\u{169B}' => '\u{169C}', '\u{2045}' => '\u{2046}', '\u{207D}' => '\u{207E}', '\u{208D}' => '\u{208E}', '\u{2308}' => '\u{2309}', '\u{230A}' => '\u{230B}', '\u{2329}' => '\u{232A}', '\u{2768}' => '\u{2769}', '\u{276A}' => '\u{276B}', '\u{276C}' => '\u{276D}', '\u{276E}' => '\u{276F}', '\u{2770}' => '\u{2771}', '\u{2772}' => '\u{2773}', '\u{2774}' => '\u{2775}', '\u{27C5}' => '\u{27C6}', '\u{27E6}' => '\u{27E7}', '\u{27E8}' => '\u{27E9}', '\u{27EA}' => '\u{27EB}', '\u{27EC}' => '\u{27ED}', '\u{27EE}' => '\u{27EF}', '\u{2983}' => '\u{2984}', '\u{2985}' => '\u{2986}', '\u{2987}' => '\u{2988}', '\u{2989}' => '\u{298A}', '\u{298B}' => '\u{298C}', '\u{298D}' => '\u{2990}', '\u{298F}' => '\u{298E}', '\u{2991}' => '\u{2992}', '\u{2993}' => '\u{2994}', '\u{2995}' => '\u{2996}', '\u{2997}' => '\u{2998}', '\u{29D8}' => '\u{29D9}', '\u{29DA}' => '\u{29DB}', '\u{29FC}' => '\u{29FD}', '\u{2E22}' => '\u{2E23}', '\u{2E24}' => '\u{2E25}', '\u{2E26}' => '\u{2E27}', '\u{2E28}' => '\u{2E29}', '\u{3008}' => '\u{3009}', '\u{300A}' => '\u{300B}', '\u{300C}' => '\u{300D}', '\u{300E}' => '\u{300F}', '\u{3010}' => '\u{3011}', '\u{3014}' => '\u{3015}', '\u{3016}' => '\u{3017}', '\u{3018}' => '\u{3019}', '\u{301A}' => '\u{301B}', '\u{FE59}' => '\u{FE5A}', '\u{FE5B}' => '\u{FE5C}', '\u{FE5D}' => '\u{FE5E}', '\u{FF08}' => '\u{FF09}', '\u{FF3B}' => '\u{FF3D}', '\u{FF5B}' => '\u{FF5D}', '\u{FF5F}' => '\u{FF60}', '\u{FF62}' => '\u{FF63}', _ => *self,
}
}
fn to_open_bracket(&self) -> char {
match *self {
'\u{0029}' => '\u{0028}', '\u{005D}' => '\u{005B}', '\u{007D}' => '\u{007B}', '\u{0F3B}' => '\u{0F3A}', '\u{0F3D}' => '\u{0F3C}', '\u{169C}' => '\u{169B}', '\u{2046}' => '\u{2045}', '\u{207E}' => '\u{207D}', '\u{208E}' => '\u{208D}', '\u{2309}' => '\u{2308}', '\u{230B}' => '\u{230A}', '\u{232A}' => '\u{2329}', '\u{2769}' => '\u{2768}', '\u{276B}' => '\u{276A}', '\u{276D}' => '\u{276C}', '\u{276F}' => '\u{276E}', '\u{2771}' => '\u{2770}', '\u{2773}' => '\u{2772}', '\u{2775}' => '\u{2774}', '\u{27C6}' => '\u{27C5}', '\u{27E7}' => '\u{27E6}', '\u{27E9}' => '\u{27E8}', '\u{27EB}' => '\u{27EA}', '\u{27ED}' => '\u{27EC}', '\u{27EF}' => '\u{27EE}', '\u{2984}' => '\u{2983}', '\u{2986}' => '\u{2985}', '\u{2988}' => '\u{2987}', '\u{298A}' => '\u{2989}', '\u{298C}' => '\u{298B}', '\u{298E}' => '\u{298F}', '\u{2990}' => '\u{298D}', '\u{2992}' => '\u{2991}', '\u{2994}' => '\u{2993}', '\u{2996}' => '\u{2995}', '\u{2998}' => '\u{2997}', '\u{29D9}' => '\u{29D8}', '\u{29DB}' => '\u{29DA}', '\u{29FD}' => '\u{29FC}', '\u{2E23}' => '\u{2E22}', '\u{2E25}' => '\u{2E24}', '\u{2E27}' => '\u{2E26}', '\u{2E29}' => '\u{2E28}', '\u{3009}' => '\u{3008}', '\u{300B}' => '\u{300A}', '\u{300D}' => '\u{300C}', '\u{300F}' => '\u{300E}', '\u{3011}' => '\u{3010}', '\u{3015}' => '\u{3014}', '\u{3017}' => '\u{3016}', '\u{3019}' => '\u{3018}', '\u{301B}' => '\u{301A}', '\u{FE5A}' => '\u{FE59}', '\u{FE5C}' => '\u{FE5B}', '\u{FE5E}' => '\u{FE5D}', '\u{FF09}' => '\u{FF08}', '\u{FF3D}' => '\u{FF3B}', '\u{FF5D}' => '\u{FF5B}', '\u{FF60}' => '\u{FF5F}', '\u{FF63}' => '\u{FF62}', _ => *self,
}
}
}