use crate::table::{
BOPOMOFO, BOPOMOFO_EXTENDED, CJK_COMPATIBILITY_IDEOGRAPHS,
CJK_COMPATIBILITY_IDEOGRAPHS_SUPPLEMENT, CJK_RADICALS_SUPPLEMENT, CJK_STROKES,
CJK_UNIFIED_IDEOGRAPHS, CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A, CJK_UNIFIED_IDEOGRAPHS_EXTENSION_B,
CJK_UNIFIED_IDEOGRAPHS_EXTENSION_C, CJK_UNIFIED_IDEOGRAPHS_EXTENSION_D,
CJK_UNIFIED_IDEOGRAPHS_EXTENSION_E, CJK_UNIFIED_IDEOGRAPHS_EXTENSION_F,
CJK_UNIFIED_IDEOGRAPHS_EXTENSION_G, CJK_UNIFIED_IDEOGRAPHS_EXTENSION_H,
CJK_UNIFIED_IDEOGRAPHS_EXTENSION_I, HANGUL_COMPATIBILITY_JAMO, HANGUL_JAMO,
HANGUL_JAMO_EXTENDED_A, HANGUL_JAMO_EXTENDED_B, HANGUL_SYLLABLES, HIRAGANA, KANGXI_RADICALS,
KATAKANA, KATAKANA_PHONETIC_EXTENSIONS,
};
pub type CharRange = (char, char);
pub type CharPointRange = (u32, u32);
pub const R_NUMBERS: &[CharRange] = &[('\u{30}', '\u{39}')];
pub const R_CHINESE: &[CharRange] = &[
CJK_RADICALS_SUPPLEMENT, KANGXI_RADICALS, BOPOMOFO, BOPOMOFO_EXTENDED, CJK_STROKES, CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A, CJK_UNIFIED_IDEOGRAPHS, CJK_COMPATIBILITY_IDEOGRAPHS, CJK_UNIFIED_IDEOGRAPHS_EXTENSION_B, CJK_UNIFIED_IDEOGRAPHS_EXTENSION_C, CJK_UNIFIED_IDEOGRAPHS_EXTENSION_D, CJK_UNIFIED_IDEOGRAPHS_EXTENSION_E, CJK_UNIFIED_IDEOGRAPHS_EXTENSION_F, CJK_UNIFIED_IDEOGRAPHS_EXTENSION_I, CJK_COMPATIBILITY_IDEOGRAPHS_SUPPLEMENT, CJK_UNIFIED_IDEOGRAPHS_EXTENSION_G, CJK_UNIFIED_IDEOGRAPHS_EXTENSION_H, ];
pub const R_JAPANESE: &[CharRange] = &[
HIRAGANA, KATAKANA, KATAKANA_PHONETIC_EXTENSIONS, ];
pub const R_KOREAN: &[CharRange] = &[
HANGUL_JAMO, HANGUL_COMPATIBILITY_JAMO, HANGUL_JAMO_EXTENDED_A, HANGUL_SYLLABLES, HANGUL_JAMO_EXTENDED_B, ];
pub const R_OPEN_PARENTHESES: &[char] = &[
'\u{0028}', '\u{003c}', '\u{005b}', '\u{007b}', '\u{3008}', '\u{300a}', '\u{300c}', '\u{300e}',
'\u{3010}', '\u{3014}', '\u{3016}', '\u{3018}', '\u{301a}', '\u{fe59}', '\u{fe5b}', '\u{fe5d}',
'\u{fe64}', '\u{ff08}', '\u{ff1c}', '\u{ff3b}', '\u{ff5b}', '\u{ff5f}', '\u{ff62}',
];
pub const R_CLOSE_PARENTHESES: &[char] = &[
'\u{0029}', '\u{003e}', '\u{005d}', '\u{007d}', '\u{3009}', '\u{300b}', '\u{300d}', '\u{300f}',
'\u{3011}', '\u{3015}', '\u{3017}', '\u{3019}', '\u{301b}', '\u{fe5a}', '\u{fe5c}', '\u{fe5e}',
'\u{fe65}', '\u{ff09}', '\u{ff1d}', '\u{ff3c}', '\u{ff5c}', '\u{ff60}', '\u{ff63}',
];
pub const R_COMMON_SYMBOLS: &[char] = &[
'\u{0023}', '\u{0024}', '\u{0025}', '\u{0026}', '\u{002a}', '\u{002b}', '\u{002d}', '\u{002f}',
'\u{003d}', '\u{0040}', '\u{005c}', '\u{007c}', '\u{007e}',
];
pub const R_WESTERN_SENTENCE_PUNCTUATIONS: &[char] =
&['\u{0021}', '\u{002c}', '\u{002e}', '\u{003b}', '\u{003f}'];
pub const R_QUOTES: &[char] = &['\u{0022}', '\u{0027}', '\u{0060}'];