mirror of
https://github.com/rust-lang/rust.git
synced 2026-05-21 17:52:12 +03:00
auto merge of #12561 : pzol/rust/char-case, r=alexcrichton
Added common and simple case folding, i.e. mapping one to one character mapping. For more information see http://www.unicode.org/faq/casemap_charprop.html Removed auto-generated dead code which wasn't used.
This commit is contained in:
+79
-39
@@ -19,7 +19,7 @@
|
||||
# programs". It is not meant to be a complete implementation of unicode.
|
||||
# For that we recommend you use a proper binding to libicu.
|
||||
|
||||
import fileinput, re, os, sys
|
||||
import fileinput, re, os, sys, operator
|
||||
|
||||
|
||||
def fetch(f):
|
||||
@@ -35,6 +35,8 @@ def fetch(f):
|
||||
def load_unicode_data(f):
|
||||
fetch(f)
|
||||
gencats = {}
|
||||
upperlower = {}
|
||||
lowerupper = {}
|
||||
combines = []
|
||||
canon_decomp = {}
|
||||
compat_decomp = {}
|
||||
@@ -44,6 +46,7 @@ def load_unicode_data(f):
|
||||
c_hi = 0
|
||||
com_lo = 0
|
||||
com_hi = 0
|
||||
|
||||
for line in fileinput.input(f):
|
||||
fields = line.split(";")
|
||||
if len(fields) != 15:
|
||||
@@ -52,7 +55,17 @@ def load_unicode_data(f):
|
||||
decomp, deci, digit, num, mirror,
|
||||
old, iso, upcase, lowcase, titlecase ] = fields
|
||||
|
||||
code = int(code, 16)
|
||||
code_org = code
|
||||
code = int(code, 16)
|
||||
|
||||
# generate char to char direct common and simple conversions
|
||||
# uppercase to lowercase
|
||||
if gencat == "Lu" and lowcase != "" and code_org != lowcase:
|
||||
upperlower[code] = int(lowcase, 16)
|
||||
|
||||
# lowercase to uppercase
|
||||
if gencat == "Ll" and upcase != "" and code_org != upcase:
|
||||
lowerupper[code] = int(upcase, 16)
|
||||
|
||||
if decomp != "":
|
||||
if decomp.startswith('<'):
|
||||
@@ -96,7 +109,7 @@ def load_unicode_data(f):
|
||||
com_lo = code
|
||||
com_hi = code
|
||||
|
||||
return (canon_decomp, compat_decomp, gencats, combines)
|
||||
return (canon_decomp, compat_decomp, gencats, combines, lowerupper, upperlower)
|
||||
|
||||
def load_properties(f, interestingprops):
|
||||
fetch(f)
|
||||
@@ -147,25 +160,28 @@ def ch_prefix(ix):
|
||||
|
||||
def emit_bsearch_range_table(f):
|
||||
f.write("""
|
||||
fn bsearch_range_table(c: char, r: &'static [(char,char)]) -> bool {
|
||||
use cmp::{Equal, Less, Greater};
|
||||
use vec::ImmutableVector;
|
||||
use option::None;
|
||||
r.bsearch(|&(lo,hi)| {
|
||||
if lo <= c && c <= hi { Equal }
|
||||
else if hi < c { Less }
|
||||
else { Greater }
|
||||
}) != None
|
||||
}\n\n
|
||||
fn bsearch_range_table(c: char, r: &'static [(char,char)]) -> bool {
|
||||
use cmp::{Equal, Less, Greater};
|
||||
use vec::ImmutableVector;
|
||||
use option::None;
|
||||
r.bsearch(|&(lo,hi)| {
|
||||
if lo <= c && c <= hi { Equal }
|
||||
else if hi < c { Less }
|
||||
else { Greater }
|
||||
}) != None
|
||||
}\n\n
|
||||
""");
|
||||
|
||||
def emit_property_module(f, mod, tbl):
|
||||
f.write("pub mod %s {\n" % mod)
|
||||
keys = tbl.keys()
|
||||
keys.sort()
|
||||
emit_bsearch_range_table(f);
|
||||
|
||||
for cat in keys:
|
||||
if cat == "Cs": continue
|
||||
if cat not in ["Nd", "Nl", "No", "Cc",
|
||||
"XID_Start", "XID_Continue", "Alphabetic",
|
||||
"Lowercase", "Uppercase", "White_Space"]:
|
||||
continue
|
||||
f.write(" static %s_table : &'static [(char,char)] = &[\n" % cat)
|
||||
ix = 0
|
||||
for pair in tbl[cat]:
|
||||
@@ -175,35 +191,55 @@ def emit_property_module(f, mod, tbl):
|
||||
f.write("\n ];\n\n")
|
||||
|
||||
f.write(" pub fn %s(c: char) -> bool {\n" % cat)
|
||||
f.write(" bsearch_range_table(c, %s_table)\n" % cat)
|
||||
f.write(" super::bsearch_range_table(c, %s_table)\n" % cat)
|
||||
f.write(" }\n\n")
|
||||
f.write("}\n")
|
||||
|
||||
|
||||
def emit_property_module_old(f, mod, tbl):
|
||||
f.write("mod %s {\n" % mod)
|
||||
keys = tbl.keys()
|
||||
keys.sort()
|
||||
for cat in keys:
|
||||
f.write(" fn %s(c: char) -> bool {\n" % cat)
|
||||
f.write(" ret alt c {\n")
|
||||
prefix = ' '
|
||||
for pair in tbl[cat]:
|
||||
if pair[0] == pair[1]:
|
||||
f.write(" %c %s\n" %
|
||||
(prefix, escape_char(pair[0])))
|
||||
else:
|
||||
f.write(" %c %s to %s\n" %
|
||||
(prefix,
|
||||
escape_char(pair[0]),
|
||||
escape_char(pair[1])))
|
||||
prefix = '|'
|
||||
f.write(" { true }\n")
|
||||
f.write(" _ { false }\n")
|
||||
f.write(" };\n")
|
||||
f.write(" }\n\n")
|
||||
def emit_conversions_module(f, lowerupper, upperlower):
|
||||
f.write("pub mod conversions {\n")
|
||||
f.write("""
|
||||
use cmp::{Equal, Less, Greater};
|
||||
use vec::ImmutableVector;
|
||||
use tuple::Tuple2;
|
||||
use option::{Option, Some, None};
|
||||
|
||||
pub fn to_lower(c: char) -> char {
|
||||
match bsearch_case_table(c, LuLl_table) {
|
||||
None => c,
|
||||
Some(index) => LuLl_table[index].val1()
|
||||
}
|
||||
}
|
||||
|
||||
pub fn to_upper(c: char) -> char {
|
||||
match bsearch_case_table(c, LlLu_table) {
|
||||
None => c,
|
||||
Some(index) => LlLu_table[index].val1()
|
||||
}
|
||||
}
|
||||
|
||||
fn bsearch_case_table(c: char, table: &'static [(char, char)]) -> Option<uint> {
|
||||
table.bsearch(|&(key, _)| {
|
||||
if c == key { Equal }
|
||||
else if key < c { Less }
|
||||
else { Greater }
|
||||
})
|
||||
}
|
||||
""");
|
||||
emit_caseconversion_table(f, "LuLl", upperlower)
|
||||
emit_caseconversion_table(f, "LlLu", lowerupper)
|
||||
f.write("}\n")
|
||||
|
||||
def emit_caseconversion_table(f, name, table):
|
||||
f.write(" static %s_table : &'static [(char, char)] = &[\n" % name)
|
||||
sorted_table = sorted(table.iteritems(), key=operator.itemgetter(0))
|
||||
ix = 0
|
||||
for key, value in sorted_table:
|
||||
f.write(ch_prefix(ix))
|
||||
f.write("(%s, %s)" % (escape_char(key), escape_char(value)))
|
||||
ix += 1
|
||||
f.write("\n ];\n\n")
|
||||
|
||||
def format_table_content(f, content, indent):
|
||||
line = " "*indent
|
||||
first = True
|
||||
@@ -359,7 +395,8 @@ for i in [r]:
|
||||
os.remove(i);
|
||||
rf = open(r, "w")
|
||||
|
||||
(canon_decomp, compat_decomp, gencats, combines) = load_unicode_data("UnicodeData.txt")
|
||||
(canon_decomp, compat_decomp, gencats,
|
||||
combines, lowerupper, upperlower) = load_unicode_data("UnicodeData.txt")
|
||||
|
||||
# Preamble
|
||||
rf.write('''// Copyright 2012-2013 The Rust Project Developers. See the COPYRIGHT
|
||||
@@ -379,13 +416,16 @@ rf.write('''// Copyright 2012-2013 The Rust Project Developers. See the COPYRIGH
|
||||
|
||||
''')
|
||||
|
||||
emit_bsearch_range_table(rf);
|
||||
emit_property_module(rf, "general_category", gencats)
|
||||
|
||||
emit_decomp_module(rf, canon_decomp, compat_decomp, combines)
|
||||
|
||||
derived = load_properties("DerivedCoreProperties.txt",
|
||||
["XID_Start", "XID_Continue", "Alphabetic", "Lowercase", "Uppercase"])
|
||||
|
||||
emit_property_module(rf, "derived_property", derived)
|
||||
|
||||
props = load_properties("PropList.txt", ["White_Space"])
|
||||
emit_property_module(rf, "property", props)
|
||||
emit_conversions_module(rf, lowerupper, upperlower)
|
||||
|
||||
+72
-1
@@ -28,7 +28,7 @@
|
||||
use option::{None, Option, Some};
|
||||
use iter::{Iterator, range_step};
|
||||
use str::StrSlice;
|
||||
use unicode::{derived_property, property, general_category, decompose};
|
||||
use unicode::{derived_property, property, general_category, decompose, conversions};
|
||||
|
||||
#[cfg(test)] use str::OwnedStr;
|
||||
|
||||
@@ -225,6 +225,38 @@ pub fn to_digit(c: char, radix: uint) -> Option<uint> {
|
||||
else { None }
|
||||
}
|
||||
|
||||
/// Convert a char to its uppercase equivalent
|
||||
///
|
||||
/// The case-folding performed is the common or simple mapping:
|
||||
/// it maps one unicode codepoint (one char in Rust) to its uppercase equivalent according
|
||||
/// to the Unicode database at ftp://ftp.unicode.org/Public/UNIDATA/UnicodeData.txt
|
||||
/// The additional SpecialCasing.txt is not considered here, as it expands to multiple
|
||||
/// codepoints in some cases.
|
||||
///
|
||||
/// A full reference can be found here
|
||||
/// http://www.unicode.org/versions/Unicode4.0.0/ch03.pdf#G33992
|
||||
///
|
||||
/// # Return value
|
||||
///
|
||||
/// Returns the char itself if no conversion was made
|
||||
#[inline]
|
||||
pub fn to_uppercase(c: char) -> char {
|
||||
conversions::to_upper(c)
|
||||
}
|
||||
|
||||
/// Convert a char to its lowercase equivalent
|
||||
///
|
||||
/// The case-folding performed is the common or simple mapping
|
||||
/// see `to_uppercase` for references and more information
|
||||
///
|
||||
/// # Return value
|
||||
///
|
||||
/// Returns the char itself if no conversion if possible
|
||||
#[inline]
|
||||
pub fn to_lowercase(c: char) -> char {
|
||||
conversions::to_lower(c)
|
||||
}
|
||||
|
||||
///
|
||||
/// Converts a number to the character representing it
|
||||
///
|
||||
@@ -385,6 +417,8 @@ pub trait Char {
|
||||
fn is_digit(&self) -> bool;
|
||||
fn is_digit_radix(&self, radix: uint) -> bool;
|
||||
fn to_digit(&self, radix: uint) -> Option<uint>;
|
||||
fn to_lowercase(&self) -> char;
|
||||
fn to_uppercase(&self) -> char;
|
||||
fn from_digit(num: uint, radix: uint) -> Option<char>;
|
||||
fn escape_unicode(&self, f: |char|);
|
||||
fn escape_default(&self, f: |char|);
|
||||
@@ -421,6 +455,10 @@ fn is_digit_radix(&self, radix: uint) -> bool { is_digit_radix(*self, radix) }
|
||||
|
||||
fn to_digit(&self, radix: uint) -> Option<uint> { to_digit(*self, radix) }
|
||||
|
||||
fn to_lowercase(&self) -> char { to_lowercase(*self) }
|
||||
|
||||
fn to_uppercase(&self) -> char { to_uppercase(*self) }
|
||||
|
||||
fn from_digit(num: uint, radix: uint) -> Option<char> { from_digit(num, radix) }
|
||||
|
||||
fn escape_unicode(&self, f: |char|) { escape_unicode(*self, f) }
|
||||
@@ -516,6 +554,39 @@ fn test_to_digit() {
|
||||
assert_eq!('$'.to_digit(36u), None);
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_to_lowercase() {
|
||||
assert_eq!('A'.to_lowercase(), 'a');
|
||||
assert_eq!('Ö'.to_lowercase(), 'ö');
|
||||
assert_eq!('ß'.to_lowercase(), 'ß');
|
||||
assert_eq!('Ü'.to_lowercase(), 'ü');
|
||||
assert_eq!('💩'.to_lowercase(), '💩');
|
||||
assert_eq!('Σ'.to_lowercase(), 'σ');
|
||||
assert_eq!('Τ'.to_lowercase(), 'τ');
|
||||
assert_eq!('Ι'.to_lowercase(), 'ι');
|
||||
assert_eq!('Γ'.to_lowercase(), 'γ');
|
||||
assert_eq!('Μ'.to_lowercase(), 'μ');
|
||||
assert_eq!('Α'.to_lowercase(), 'α');
|
||||
assert_eq!('Σ'.to_lowercase(), 'σ');
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_to_uppercase() {
|
||||
assert_eq!('a'.to_uppercase(), 'A');
|
||||
assert_eq!('ö'.to_uppercase(), 'Ö');
|
||||
assert_eq!('ß'.to_uppercase(), 'ß'); // not ẞ: Latin capital letter sharp s
|
||||
assert_eq!('ü'.to_uppercase(), 'Ü');
|
||||
assert_eq!('💩'.to_uppercase(), '💩');
|
||||
|
||||
assert_eq!('σ'.to_uppercase(), 'Σ');
|
||||
assert_eq!('τ'.to_uppercase(), 'Τ');
|
||||
assert_eq!('ι'.to_uppercase(), 'Ι');
|
||||
assert_eq!('γ'.to_uppercase(), 'Γ');
|
||||
assert_eq!('μ'.to_uppercase(), 'Μ');
|
||||
assert_eq!('α'.to_uppercase(), 'Α');
|
||||
assert_eq!('ς'.to_uppercase(), 'Σ');
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn test_is_control() {
|
||||
assert!('\u0000'.is_control());
|
||||
|
||||
+1045
-1389
@@ -12,990 +12,27 @@
|
||||
|
||||
#[allow(missing_doc)];
|
||||
#[allow(non_uppercase_statics)];
|
||||
#[allow(dead_code)];
|
||||
|
||||
|
||||
fn bsearch_range_table(c: char, r: &'static [(char,char)]) -> bool {
|
||||
use cmp::{Equal, Less, Greater};
|
||||
use vec::ImmutableVector;
|
||||
use option::None;
|
||||
r.bsearch(|&(lo,hi)| {
|
||||
if lo <= c && c <= hi { Equal }
|
||||
else if hi < c { Less }
|
||||
else { Greater }
|
||||
}) != None
|
||||
}
|
||||
|
||||
|
||||
pub mod general_category {
|
||||
|
||||
fn bsearch_range_table(c: char, r: &'static [(char,char)]) -> bool {
|
||||
use cmp::{Equal, Less, Greater};
|
||||
use vec::ImmutableVector;
|
||||
use option::None;
|
||||
r.bsearch(|&(lo,hi)| {
|
||||
if lo <= c && c <= hi { Equal }
|
||||
else if hi < c { Less }
|
||||
else { Greater }
|
||||
}) != None
|
||||
}
|
||||
|
||||
|
||||
static Cc_table : &'static [(char,char)] = &[
|
||||
('\x00', '\x1f'), ('\x7f', '\x9f')
|
||||
];
|
||||
|
||||
pub fn Cc(c: char) -> bool {
|
||||
bsearch_range_table(c, Cc_table)
|
||||
}
|
||||
|
||||
static Cf_table : &'static [(char,char)] = &[
|
||||
('\xad', '\xad'), ('\u0600', '\u0604'),
|
||||
('\u061c', '\u061c'), ('\u06dd', '\u06dd'),
|
||||
('\u070f', '\u070f'), ('\u180e', '\u180e'),
|
||||
('\u200b', '\u200f'), ('\u202a', '\u202e'),
|
||||
('\u2060', '\u206f'), ('\ufeff', '\ufeff'),
|
||||
('\ufff9', '\ufffb'), ('\U000110bd', '\U000110bd'),
|
||||
('\U0001d173', '\U0001d17a'), ('\U000e0001', '\U000e007f')
|
||||
];
|
||||
|
||||
pub fn Cf(c: char) -> bool {
|
||||
bsearch_range_table(c, Cf_table)
|
||||
}
|
||||
|
||||
static Co_table : &'static [(char,char)] = &[
|
||||
('\ue000', '\uf8ff')
|
||||
];
|
||||
|
||||
pub fn Co(c: char) -> bool {
|
||||
bsearch_range_table(c, Co_table)
|
||||
}
|
||||
|
||||
static Ll_table : &'static [(char,char)] = &[
|
||||
('\x61', '\x7a'), ('\xb5', '\xb5'),
|
||||
('\xdf', '\xf6'), ('\xf8', '\xff'),
|
||||
('\u0101', '\u0101'), ('\u0103', '\u0103'),
|
||||
('\u0105', '\u0105'), ('\u0107', '\u0107'),
|
||||
('\u0109', '\u0109'), ('\u010b', '\u010b'),
|
||||
('\u010d', '\u010d'), ('\u010f', '\u010f'),
|
||||
('\u0111', '\u0111'), ('\u0113', '\u0113'),
|
||||
('\u0115', '\u0115'), ('\u0117', '\u0117'),
|
||||
('\u0119', '\u0119'), ('\u011b', '\u011b'),
|
||||
('\u011d', '\u011d'), ('\u011f', '\u011f'),
|
||||
('\u0121', '\u0121'), ('\u0123', '\u0123'),
|
||||
('\u0125', '\u0125'), ('\u0127', '\u0127'),
|
||||
('\u0129', '\u0129'), ('\u012b', '\u012b'),
|
||||
('\u012d', '\u012d'), ('\u012f', '\u012f'),
|
||||
('\u0131', '\u0131'), ('\u0133', '\u0133'),
|
||||
('\u0135', '\u0135'), ('\u0137', '\u0138'),
|
||||
('\u013a', '\u013a'), ('\u013c', '\u013c'),
|
||||
('\u013e', '\u013e'), ('\u0140', '\u0140'),
|
||||
('\u0142', '\u0142'), ('\u0144', '\u0144'),
|
||||
('\u0146', '\u0146'), ('\u0148', '\u0149'),
|
||||
('\u014b', '\u014b'), ('\u014d', '\u014d'),
|
||||
('\u014f', '\u014f'), ('\u0151', '\u0151'),
|
||||
('\u0153', '\u0153'), ('\u0155', '\u0155'),
|
||||
('\u0157', '\u0157'), ('\u0159', '\u0159'),
|
||||
('\u015b', '\u015b'), ('\u015d', '\u015d'),
|
||||
('\u015f', '\u015f'), ('\u0161', '\u0161'),
|
||||
('\u0163', '\u0163'), ('\u0165', '\u0165'),
|
||||
('\u0167', '\u0167'), ('\u0169', '\u0169'),
|
||||
('\u016b', '\u016b'), ('\u016d', '\u016d'),
|
||||
('\u016f', '\u016f'), ('\u0171', '\u0171'),
|
||||
('\u0173', '\u0173'), ('\u0175', '\u0175'),
|
||||
('\u0177', '\u0177'), ('\u017a', '\u017a'),
|
||||
('\u017c', '\u017c'), ('\u017e', '\u0180'),
|
||||
('\u0183', '\u0183'), ('\u0185', '\u0185'),
|
||||
('\u0188', '\u0188'), ('\u018c', '\u018d'),
|
||||
('\u0192', '\u0192'), ('\u0195', '\u0195'),
|
||||
('\u0199', '\u019b'), ('\u019e', '\u019e'),
|
||||
('\u01a1', '\u01a1'), ('\u01a3', '\u01a3'),
|
||||
('\u01a5', '\u01a5'), ('\u01a8', '\u01a8'),
|
||||
('\u01aa', '\u01ab'), ('\u01ad', '\u01ad'),
|
||||
('\u01b0', '\u01b0'), ('\u01b4', '\u01b4'),
|
||||
('\u01b6', '\u01b6'), ('\u01b9', '\u01ba'),
|
||||
('\u01bd', '\u01bf'), ('\u01c6', '\u01c6'),
|
||||
('\u01c9', '\u01c9'), ('\u01cc', '\u01cc'),
|
||||
('\u01ce', '\u01ce'), ('\u01d0', '\u01d0'),
|
||||
('\u01d2', '\u01d2'), ('\u01d4', '\u01d4'),
|
||||
('\u01d6', '\u01d6'), ('\u01d8', '\u01d8'),
|
||||
('\u01da', '\u01da'), ('\u01dc', '\u01dd'),
|
||||
('\u01df', '\u01df'), ('\u01e1', '\u01e1'),
|
||||
('\u01e3', '\u01e3'), ('\u01e5', '\u01e5'),
|
||||
('\u01e7', '\u01e7'), ('\u01e9', '\u01e9'),
|
||||
('\u01eb', '\u01eb'), ('\u01ed', '\u01ed'),
|
||||
('\u01ef', '\u01f0'), ('\u01f3', '\u01f3'),
|
||||
('\u01f5', '\u01f5'), ('\u01f9', '\u01f9'),
|
||||
('\u01fb', '\u01fb'), ('\u01fd', '\u01fd'),
|
||||
('\u01ff', '\u01ff'), ('\u0201', '\u0201'),
|
||||
('\u0203', '\u0203'), ('\u0205', '\u0205'),
|
||||
('\u0207', '\u0207'), ('\u0209', '\u0209'),
|
||||
('\u020b', '\u020b'), ('\u020d', '\u020d'),
|
||||
('\u020f', '\u020f'), ('\u0211', '\u0211'),
|
||||
('\u0213', '\u0213'), ('\u0215', '\u0215'),
|
||||
('\u0217', '\u0217'), ('\u0219', '\u0219'),
|
||||
('\u021b', '\u021b'), ('\u021d', '\u021d'),
|
||||
('\u021f', '\u021f'), ('\u0221', '\u0221'),
|
||||
('\u0223', '\u0223'), ('\u0225', '\u0225'),
|
||||
('\u0227', '\u0227'), ('\u0229', '\u0229'),
|
||||
('\u022b', '\u022b'), ('\u022d', '\u022d'),
|
||||
('\u022f', '\u022f'), ('\u0231', '\u0231'),
|
||||
('\u0233', '\u0239'), ('\u023c', '\u023c'),
|
||||
('\u023f', '\u0240'), ('\u0242', '\u0242'),
|
||||
('\u0247', '\u0247'), ('\u0249', '\u0249'),
|
||||
('\u024b', '\u024b'), ('\u024d', '\u024d'),
|
||||
('\u024f', '\u0293'), ('\u0295', '\u02af'),
|
||||
('\u0371', '\u0371'), ('\u0373', '\u0373'),
|
||||
('\u0377', '\u0377'), ('\u037b', '\u037d'),
|
||||
('\u0390', '\u0390'), ('\u03ac', '\u03ce'),
|
||||
('\u03d0', '\u03d1'), ('\u03d5', '\u03d7'),
|
||||
('\u03d9', '\u03d9'), ('\u03db', '\u03db'),
|
||||
('\u03dd', '\u03dd'), ('\u03df', '\u03df'),
|
||||
('\u03e1', '\u03e1'), ('\u03e3', '\u03e3'),
|
||||
('\u03e5', '\u03e5'), ('\u03e7', '\u03e7'),
|
||||
('\u03e9', '\u03e9'), ('\u03eb', '\u03eb'),
|
||||
('\u03ed', '\u03ed'), ('\u03ef', '\u03f3'),
|
||||
('\u03f5', '\u03f5'), ('\u03f8', '\u03f8'),
|
||||
('\u03fb', '\u03fc'), ('\u0430', '\u045f'),
|
||||
('\u0461', '\u0461'), ('\u0463', '\u0463'),
|
||||
('\u0465', '\u0465'), ('\u0467', '\u0467'),
|
||||
('\u0469', '\u0469'), ('\u046b', '\u046b'),
|
||||
('\u046d', '\u046d'), ('\u046f', '\u046f'),
|
||||
('\u0471', '\u0471'), ('\u0473', '\u0473'),
|
||||
('\u0475', '\u0475'), ('\u0477', '\u0477'),
|
||||
('\u0479', '\u0479'), ('\u047b', '\u047b'),
|
||||
('\u047d', '\u047d'), ('\u047f', '\u047f'),
|
||||
('\u0481', '\u0481'), ('\u048b', '\u048b'),
|
||||
('\u048d', '\u048d'), ('\u048f', '\u048f'),
|
||||
('\u0491', '\u0491'), ('\u0493', '\u0493'),
|
||||
('\u0495', '\u0495'), ('\u0497', '\u0497'),
|
||||
('\u0499', '\u0499'), ('\u049b', '\u049b'),
|
||||
('\u049d', '\u049d'), ('\u049f', '\u049f'),
|
||||
('\u04a1', '\u04a1'), ('\u04a3', '\u04a3'),
|
||||
('\u04a5', '\u04a5'), ('\u04a7', '\u04a7'),
|
||||
('\u04a9', '\u04a9'), ('\u04ab', '\u04ab'),
|
||||
('\u04ad', '\u04ad'), ('\u04af', '\u04af'),
|
||||
('\u04b1', '\u04b1'), ('\u04b3', '\u04b3'),
|
||||
('\u04b5', '\u04b5'), ('\u04b7', '\u04b7'),
|
||||
('\u04b9', '\u04b9'), ('\u04bb', '\u04bb'),
|
||||
('\u04bd', '\u04bd'), ('\u04bf', '\u04bf'),
|
||||
('\u04c2', '\u04c2'), ('\u04c4', '\u04c4'),
|
||||
('\u04c6', '\u04c6'), ('\u04c8', '\u04c8'),
|
||||
('\u04ca', '\u04ca'), ('\u04cc', '\u04cc'),
|
||||
('\u04ce', '\u04cf'), ('\u04d1', '\u04d1'),
|
||||
('\u04d3', '\u04d3'), ('\u04d5', '\u04d5'),
|
||||
('\u04d7', '\u04d7'), ('\u04d9', '\u04d9'),
|
||||
('\u04db', '\u04db'), ('\u04dd', '\u04dd'),
|
||||
('\u04df', '\u04df'), ('\u04e1', '\u04e1'),
|
||||
('\u04e3', '\u04e3'), ('\u04e5', '\u04e5'),
|
||||
('\u04e7', '\u04e7'), ('\u04e9', '\u04e9'),
|
||||
('\u04eb', '\u04eb'), ('\u04ed', '\u04ed'),
|
||||
('\u04ef', '\u04ef'), ('\u04f1', '\u04f1'),
|
||||
('\u04f3', '\u04f3'), ('\u04f5', '\u04f5'),
|
||||
('\u04f7', '\u04f7'), ('\u04f9', '\u04f9'),
|
||||
('\u04fb', '\u04fb'), ('\u04fd', '\u04fd'),
|
||||
('\u04ff', '\u04ff'), ('\u0501', '\u0501'),
|
||||
('\u0503', '\u0503'), ('\u0505', '\u0505'),
|
||||
('\u0507', '\u0507'), ('\u0509', '\u0509'),
|
||||
('\u050b', '\u050b'), ('\u050d', '\u050d'),
|
||||
('\u050f', '\u050f'), ('\u0511', '\u0511'),
|
||||
('\u0513', '\u0513'), ('\u0515', '\u0515'),
|
||||
('\u0517', '\u0517'), ('\u0519', '\u0519'),
|
||||
('\u051b', '\u051b'), ('\u051d', '\u051d'),
|
||||
('\u051f', '\u051f'), ('\u0521', '\u0521'),
|
||||
('\u0523', '\u0523'), ('\u0525', '\u0525'),
|
||||
('\u0527', '\u0527'), ('\u0561', '\u0587'),
|
||||
('\u1d00', '\u1d2b'), ('\u1d6b', '\u1d77'),
|
||||
('\u1d79', '\u1d9a'), ('\u1e01', '\u1e01'),
|
||||
('\u1e03', '\u1e03'), ('\u1e05', '\u1e05'),
|
||||
('\u1e07', '\u1e07'), ('\u1e09', '\u1e09'),
|
||||
('\u1e0b', '\u1e0b'), ('\u1e0d', '\u1e0d'),
|
||||
('\u1e0f', '\u1e0f'), ('\u1e11', '\u1e11'),
|
||||
('\u1e13', '\u1e13'), ('\u1e15', '\u1e15'),
|
||||
('\u1e17', '\u1e17'), ('\u1e19', '\u1e19'),
|
||||
('\u1e1b', '\u1e1b'), ('\u1e1d', '\u1e1d'),
|
||||
('\u1e1f', '\u1e1f'), ('\u1e21', '\u1e21'),
|
||||
('\u1e23', '\u1e23'), ('\u1e25', '\u1e25'),
|
||||
('\u1e27', '\u1e27'), ('\u1e29', '\u1e29'),
|
||||
('\u1e2b', '\u1e2b'), ('\u1e2d', '\u1e2d'),
|
||||
('\u1e2f', '\u1e2f'), ('\u1e31', '\u1e31'),
|
||||
('\u1e33', '\u1e33'), ('\u1e35', '\u1e35'),
|
||||
('\u1e37', '\u1e37'), ('\u1e39', '\u1e39'),
|
||||
('\u1e3b', '\u1e3b'), ('\u1e3d', '\u1e3d'),
|
||||
('\u1e3f', '\u1e3f'), ('\u1e41', '\u1e41'),
|
||||
('\u1e43', '\u1e43'), ('\u1e45', '\u1e45'),
|
||||
('\u1e47', '\u1e47'), ('\u1e49', '\u1e49'),
|
||||
('\u1e4b', '\u1e4b'), ('\u1e4d', '\u1e4d'),
|
||||
('\u1e4f', '\u1e4f'), ('\u1e51', '\u1e51'),
|
||||
('\u1e53', '\u1e53'), ('\u1e55', '\u1e55'),
|
||||
('\u1e57', '\u1e57'), ('\u1e59', '\u1e59'),
|
||||
('\u1e5b', '\u1e5b'), ('\u1e5d', '\u1e5d'),
|
||||
('\u1e5f', '\u1e5f'), ('\u1e61', '\u1e61'),
|
||||
('\u1e63', '\u1e63'), ('\u1e65', '\u1e65'),
|
||||
('\u1e67', '\u1e67'), ('\u1e69', '\u1e69'),
|
||||
('\u1e6b', '\u1e6b'), ('\u1e6d', '\u1e6d'),
|
||||
('\u1e6f', '\u1e6f'), ('\u1e71', '\u1e71'),
|
||||
('\u1e73', '\u1e73'), ('\u1e75', '\u1e75'),
|
||||
('\u1e77', '\u1e77'), ('\u1e79', '\u1e79'),
|
||||
('\u1e7b', '\u1e7b'), ('\u1e7d', '\u1e7d'),
|
||||
('\u1e7f', '\u1e7f'), ('\u1e81', '\u1e81'),
|
||||
('\u1e83', '\u1e83'), ('\u1e85', '\u1e85'),
|
||||
('\u1e87', '\u1e87'), ('\u1e89', '\u1e89'),
|
||||
('\u1e8b', '\u1e8b'), ('\u1e8d', '\u1e8d'),
|
||||
('\u1e8f', '\u1e8f'), ('\u1e91', '\u1e91'),
|
||||
('\u1e93', '\u1e93'), ('\u1e95', '\u1e9d'),
|
||||
('\u1e9f', '\u1e9f'), ('\u1ea1', '\u1ea1'),
|
||||
('\u1ea3', '\u1ea3'), ('\u1ea5', '\u1ea5'),
|
||||
('\u1ea7', '\u1ea7'), ('\u1ea9', '\u1ea9'),
|
||||
('\u1eab', '\u1eab'), ('\u1ead', '\u1ead'),
|
||||
('\u1eaf', '\u1eaf'), ('\u1eb1', '\u1eb1'),
|
||||
('\u1eb3', '\u1eb3'), ('\u1eb5', '\u1eb5'),
|
||||
('\u1eb7', '\u1eb7'), ('\u1eb9', '\u1eb9'),
|
||||
('\u1ebb', '\u1ebb'), ('\u1ebd', '\u1ebd'),
|
||||
('\u1ebf', '\u1ebf'), ('\u1ec1', '\u1ec1'),
|
||||
('\u1ec3', '\u1ec3'), ('\u1ec5', '\u1ec5'),
|
||||
('\u1ec7', '\u1ec7'), ('\u1ec9', '\u1ec9'),
|
||||
('\u1ecb', '\u1ecb'), ('\u1ecd', '\u1ecd'),
|
||||
('\u1ecf', '\u1ecf'), ('\u1ed1', '\u1ed1'),
|
||||
('\u1ed3', '\u1ed3'), ('\u1ed5', '\u1ed5'),
|
||||
('\u1ed7', '\u1ed7'), ('\u1ed9', '\u1ed9'),
|
||||
('\u1edb', '\u1edb'), ('\u1edd', '\u1edd'),
|
||||
('\u1edf', '\u1edf'), ('\u1ee1', '\u1ee1'),
|
||||
('\u1ee3', '\u1ee3'), ('\u1ee5', '\u1ee5'),
|
||||
('\u1ee7', '\u1ee7'), ('\u1ee9', '\u1ee9'),
|
||||
('\u1eeb', '\u1eeb'), ('\u1eed', '\u1eed'),
|
||||
('\u1eef', '\u1eef'), ('\u1ef1', '\u1ef1'),
|
||||
('\u1ef3', '\u1ef3'), ('\u1ef5', '\u1ef5'),
|
||||
('\u1ef7', '\u1ef7'), ('\u1ef9', '\u1ef9'),
|
||||
('\u1efb', '\u1efb'), ('\u1efd', '\u1efd'),
|
||||
('\u1eff', '\u1f07'), ('\u1f10', '\u1f15'),
|
||||
('\u1f20', '\u1f27'), ('\u1f30', '\u1f37'),
|
||||
('\u1f40', '\u1f45'), ('\u1f50', '\u1f57'),
|
||||
('\u1f60', '\u1f67'), ('\u1f70', '\u1f87'),
|
||||
('\u1f90', '\u1f97'), ('\u1fa0', '\u1fa7'),
|
||||
('\u1fb0', '\u1fb7'), ('\u1fbe', '\u1fbe'),
|
||||
('\u1fc2', '\u1fc7'), ('\u1fd0', '\u1fd7'),
|
||||
('\u1fe0', '\u1fe7'), ('\u1ff2', '\u1ff7'),
|
||||
('\u210a', '\u210a'), ('\u210e', '\u210f'),
|
||||
('\u2113', '\u2113'), ('\u212f', '\u212f'),
|
||||
('\u2134', '\u2134'), ('\u2139', '\u2139'),
|
||||
('\u213c', '\u213d'), ('\u2146', '\u2149'),
|
||||
('\u214e', '\u214e'), ('\u2184', '\u2184'),
|
||||
('\u2c30', '\u2c5e'), ('\u2c61', '\u2c61'),
|
||||
('\u2c65', '\u2c66'), ('\u2c68', '\u2c68'),
|
||||
('\u2c6a', '\u2c6a'), ('\u2c6c', '\u2c6c'),
|
||||
('\u2c71', '\u2c71'), ('\u2c73', '\u2c74'),
|
||||
('\u2c76', '\u2c7b'), ('\u2c81', '\u2c81'),
|
||||
('\u2c83', '\u2c83'), ('\u2c85', '\u2c85'),
|
||||
('\u2c87', '\u2c87'), ('\u2c89', '\u2c89'),
|
||||
('\u2c8b', '\u2c8b'), ('\u2c8d', '\u2c8d'),
|
||||
('\u2c8f', '\u2c8f'), ('\u2c91', '\u2c91'),
|
||||
('\u2c93', '\u2c93'), ('\u2c95', '\u2c95'),
|
||||
('\u2c97', '\u2c97'), ('\u2c99', '\u2c99'),
|
||||
('\u2c9b', '\u2c9b'), ('\u2c9d', '\u2c9d'),
|
||||
('\u2c9f', '\u2c9f'), ('\u2ca1', '\u2ca1'),
|
||||
('\u2ca3', '\u2ca3'), ('\u2ca5', '\u2ca5'),
|
||||
('\u2ca7', '\u2ca7'), ('\u2ca9', '\u2ca9'),
|
||||
('\u2cab', '\u2cab'), ('\u2cad', '\u2cad'),
|
||||
('\u2caf', '\u2caf'), ('\u2cb1', '\u2cb1'),
|
||||
('\u2cb3', '\u2cb3'), ('\u2cb5', '\u2cb5'),
|
||||
('\u2cb7', '\u2cb7'), ('\u2cb9', '\u2cb9'),
|
||||
('\u2cbb', '\u2cbb'), ('\u2cbd', '\u2cbd'),
|
||||
('\u2cbf', '\u2cbf'), ('\u2cc1', '\u2cc1'),
|
||||
('\u2cc3', '\u2cc3'), ('\u2cc5', '\u2cc5'),
|
||||
('\u2cc7', '\u2cc7'), ('\u2cc9', '\u2cc9'),
|
||||
('\u2ccb', '\u2ccb'), ('\u2ccd', '\u2ccd'),
|
||||
('\u2ccf', '\u2ccf'), ('\u2cd1', '\u2cd1'),
|
||||
('\u2cd3', '\u2cd3'), ('\u2cd5', '\u2cd5'),
|
||||
('\u2cd7', '\u2cd7'), ('\u2cd9', '\u2cd9'),
|
||||
('\u2cdb', '\u2cdb'), ('\u2cdd', '\u2cdd'),
|
||||
('\u2cdf', '\u2cdf'), ('\u2ce1', '\u2ce1'),
|
||||
('\u2ce3', '\u2ce4'), ('\u2cec', '\u2cec'),
|
||||
('\u2cee', '\u2cee'), ('\u2cf3', '\u2cf3'),
|
||||
('\u2d00', '\u2d2d'), ('\ua641', '\ua641'),
|
||||
('\ua643', '\ua643'), ('\ua645', '\ua645'),
|
||||
('\ua647', '\ua647'), ('\ua649', '\ua649'),
|
||||
('\ua64b', '\ua64b'), ('\ua64d', '\ua64d'),
|
||||
('\ua64f', '\ua64f'), ('\ua651', '\ua651'),
|
||||
('\ua653', '\ua653'), ('\ua655', '\ua655'),
|
||||
('\ua657', '\ua657'), ('\ua659', '\ua659'),
|
||||
('\ua65b', '\ua65b'), ('\ua65d', '\ua65d'),
|
||||
('\ua65f', '\ua65f'), ('\ua661', '\ua661'),
|
||||
('\ua663', '\ua663'), ('\ua665', '\ua665'),
|
||||
('\ua667', '\ua667'), ('\ua669', '\ua669'),
|
||||
('\ua66b', '\ua66b'), ('\ua66d', '\ua66d'),
|
||||
('\ua681', '\ua681'), ('\ua683', '\ua683'),
|
||||
('\ua685', '\ua685'), ('\ua687', '\ua687'),
|
||||
('\ua689', '\ua689'), ('\ua68b', '\ua68b'),
|
||||
('\ua68d', '\ua68d'), ('\ua68f', '\ua68f'),
|
||||
('\ua691', '\ua691'), ('\ua693', '\ua693'),
|
||||
('\ua695', '\ua695'), ('\ua697', '\ua697'),
|
||||
('\ua723', '\ua723'), ('\ua725', '\ua725'),
|
||||
('\ua727', '\ua727'), ('\ua729', '\ua729'),
|
||||
('\ua72b', '\ua72b'), ('\ua72d', '\ua72d'),
|
||||
('\ua72f', '\ua731'), ('\ua733', '\ua733'),
|
||||
('\ua735', '\ua735'), ('\ua737', '\ua737'),
|
||||
('\ua739', '\ua739'), ('\ua73b', '\ua73b'),
|
||||
('\ua73d', '\ua73d'), ('\ua73f', '\ua73f'),
|
||||
('\ua741', '\ua741'), ('\ua743', '\ua743'),
|
||||
('\ua745', '\ua745'), ('\ua747', '\ua747'),
|
||||
('\ua749', '\ua749'), ('\ua74b', '\ua74b'),
|
||||
('\ua74d', '\ua74d'), ('\ua74f', '\ua74f'),
|
||||
('\ua751', '\ua751'), ('\ua753', '\ua753'),
|
||||
('\ua755', '\ua755'), ('\ua757', '\ua757'),
|
||||
('\ua759', '\ua759'), ('\ua75b', '\ua75b'),
|
||||
('\ua75d', '\ua75d'), ('\ua75f', '\ua75f'),
|
||||
('\ua761', '\ua761'), ('\ua763', '\ua763'),
|
||||
('\ua765', '\ua765'), ('\ua767', '\ua767'),
|
||||
('\ua769', '\ua769'), ('\ua76b', '\ua76b'),
|
||||
('\ua76d', '\ua76d'), ('\ua76f', '\ua76f'),
|
||||
('\ua771', '\ua778'), ('\ua77a', '\ua77a'),
|
||||
('\ua77c', '\ua77c'), ('\ua77f', '\ua77f'),
|
||||
('\ua781', '\ua781'), ('\ua783', '\ua783'),
|
||||
('\ua785', '\ua785'), ('\ua787', '\ua787'),
|
||||
('\ua78c', '\ua78c'), ('\ua78e', '\ua78e'),
|
||||
('\ua791', '\ua791'), ('\ua793', '\ua793'),
|
||||
('\ua7a1', '\ua7a1'), ('\ua7a3', '\ua7a3'),
|
||||
('\ua7a5', '\ua7a5'), ('\ua7a7', '\ua7a7'),
|
||||
('\ua7a9', '\ua7a9'), ('\ua7fa', '\ua7fa'),
|
||||
('\ufb00', '\ufb17'), ('\uff41', '\uff5a'),
|
||||
('\U00010428', '\U0001044f'), ('\U0001d41a', '\U0001d433'),
|
||||
('\U0001d44e', '\U0001d467'), ('\U0001d482', '\U0001d49b'),
|
||||
('\U0001d4b6', '\U0001d4cf'), ('\U0001d4ea', '\U0001d503'),
|
||||
('\U0001d51e', '\U0001d537'), ('\U0001d552', '\U0001d56b'),
|
||||
('\U0001d586', '\U0001d59f'), ('\U0001d5ba', '\U0001d5d3'),
|
||||
('\U0001d5ee', '\U0001d607'), ('\U0001d622', '\U0001d63b'),
|
||||
('\U0001d656', '\U0001d66f'), ('\U0001d68a', '\U0001d6a5'),
|
||||
('\U0001d6c2', '\U0001d6da'), ('\U0001d6dc', '\U0001d6e1'),
|
||||
('\U0001d6fc', '\U0001d714'), ('\U0001d716', '\U0001d71b'),
|
||||
('\U0001d736', '\U0001d74e'), ('\U0001d750', '\U0001d755'),
|
||||
('\U0001d770', '\U0001d788'), ('\U0001d78a', '\U0001d78f'),
|
||||
('\U0001d7aa', '\U0001d7c2'), ('\U0001d7c4', '\U0001d7c9'),
|
||||
('\U0001d7cb', '\U0001d7cb')
|
||||
];
|
||||
|
||||
pub fn Ll(c: char) -> bool {
|
||||
bsearch_range_table(c, Ll_table)
|
||||
}
|
||||
|
||||
static Lm_table : &'static [(char,char)] = &[
|
||||
('\u02b0', '\u02c1'), ('\u02c6', '\u02d1'),
|
||||
('\u02e0', '\u02e4'), ('\u02ec', '\u02ec'),
|
||||
('\u02ee', '\u02ee'), ('\u0374', '\u0374'),
|
||||
('\u037a', '\u037a'), ('\u0559', '\u0559'),
|
||||
('\u0640', '\u0640'), ('\u06e5', '\u06e6'),
|
||||
('\u07f4', '\u07f5'), ('\u07fa', '\u07fa'),
|
||||
('\u081a', '\u081a'), ('\u0824', '\u0824'),
|
||||
('\u0828', '\u0828'), ('\u0971', '\u0971'),
|
||||
('\u0e46', '\u0e46'), ('\u0ec6', '\u0ec6'),
|
||||
('\u10fc', '\u10fc'), ('\u17d7', '\u17d7'),
|
||||
('\u1843', '\u1843'), ('\u1aa7', '\u1aa7'),
|
||||
('\u1c78', '\u1c7d'), ('\u1d2c', '\u1d6a'),
|
||||
('\u1d78', '\u1d78'), ('\u1d9b', '\u1dbf'),
|
||||
('\u2071', '\u2071'), ('\u207f', '\u207f'),
|
||||
('\u2090', '\u209c'), ('\u2c7c', '\u2c7d'),
|
||||
('\u2d6f', '\u2d6f'), ('\u2e2f', '\u2e2f'),
|
||||
('\u3005', '\u3005'), ('\u3031', '\u3035'),
|
||||
('\u303b', '\u303b'), ('\u309d', '\u309e'),
|
||||
('\u30fc', '\u30fe'), ('\ua015', '\ua015'),
|
||||
('\ua4f8', '\ua4fd'), ('\ua60c', '\ua60c'),
|
||||
('\ua67f', '\ua67f'), ('\ua717', '\ua71f'),
|
||||
('\ua770', '\ua770'), ('\ua788', '\ua788'),
|
||||
('\ua7f8', '\ua7f9'), ('\ua9cf', '\ua9cf'),
|
||||
('\uaa70', '\uaa70'), ('\uaadd', '\uaadd'),
|
||||
('\uaaf3', '\uaaf4'), ('\uff70', '\uff70'),
|
||||
('\uff9e', '\uff9f'), ('\U00016f93', '\U00016f9f')
|
||||
];
|
||||
|
||||
pub fn Lm(c: char) -> bool {
|
||||
bsearch_range_table(c, Lm_table)
|
||||
}
|
||||
|
||||
static Lo_table : &'static [(char,char)] = &[
|
||||
('\xaa', '\xaa'), ('\xba', '\xba'),
|
||||
('\u01bb', '\u01bb'), ('\u01c0', '\u01c3'),
|
||||
('\u0294', '\u0294'), ('\u05d0', '\u05f2'),
|
||||
('\u0620', '\u063f'), ('\u0641', '\u064a'),
|
||||
('\u066e', '\u066f'), ('\u0671', '\u06d3'),
|
||||
('\u06d5', '\u06d5'), ('\u06ee', '\u06ef'),
|
||||
('\u06fa', '\u06fc'), ('\u06ff', '\u06ff'),
|
||||
('\u0710', '\u0710'), ('\u0712', '\u072f'),
|
||||
('\u074d', '\u07a5'), ('\u07b1', '\u07b1'),
|
||||
('\u07ca', '\u07ea'), ('\u0800', '\u0815'),
|
||||
('\u0840', '\u0858'), ('\u08a0', '\u08ac'),
|
||||
('\u0904', '\u0939'), ('\u093d', '\u093d'),
|
||||
('\u0950', '\u0950'), ('\u0958', '\u0961'),
|
||||
('\u0972', '\u097f'), ('\u0985', '\u09b9'),
|
||||
('\u09bd', '\u09bd'), ('\u09ce', '\u09ce'),
|
||||
('\u09dc', '\u09e1'), ('\u09f0', '\u09f1'),
|
||||
('\u0a05', '\u0a39'), ('\u0a59', '\u0a5e'),
|
||||
('\u0a72', '\u0a74'), ('\u0a85', '\u0ab9'),
|
||||
('\u0abd', '\u0abd'), ('\u0ad0', '\u0ae1'),
|
||||
('\u0b05', '\u0b39'), ('\u0b3d', '\u0b3d'),
|
||||
('\u0b5c', '\u0b61'), ('\u0b71', '\u0b71'),
|
||||
('\u0b83', '\u0bb9'), ('\u0bd0', '\u0bd0'),
|
||||
('\u0c05', '\u0c3d'), ('\u0c58', '\u0c61'),
|
||||
('\u0c85', '\u0cb9'), ('\u0cbd', '\u0cbd'),
|
||||
('\u0cde', '\u0ce1'), ('\u0cf1', '\u0cf2'),
|
||||
('\u0d05', '\u0d3d'), ('\u0d4e', '\u0d4e'),
|
||||
('\u0d60', '\u0d61'), ('\u0d7a', '\u0d7f'),
|
||||
('\u0d85', '\u0dc6'), ('\u0e01', '\u0e30'),
|
||||
('\u0e32', '\u0e33'), ('\u0e40', '\u0e45'),
|
||||
('\u0e81', '\u0eb0'), ('\u0eb2', '\u0eb3'),
|
||||
('\u0ebd', '\u0ec4'), ('\u0edc', '\u0f00'),
|
||||
('\u0f40', '\u0f6c'), ('\u0f88', '\u0f8c'),
|
||||
('\u1000', '\u102a'), ('\u103f', '\u103f'),
|
||||
('\u1050', '\u1055'), ('\u105a', '\u105d'),
|
||||
('\u1061', '\u1061'), ('\u1065', '\u1066'),
|
||||
('\u106e', '\u1070'), ('\u1075', '\u1081'),
|
||||
('\u108e', '\u108e'), ('\u10d0', '\u10fa'),
|
||||
('\u10fd', '\u135a'), ('\u1380', '\u138f'),
|
||||
('\u13a0', '\u13f4'), ('\u1401', '\u166c'),
|
||||
('\u166f', '\u167f'), ('\u1681', '\u169a'),
|
||||
('\u16a0', '\u16ea'), ('\u1700', '\u1711'),
|
||||
('\u1720', '\u1731'), ('\u1740', '\u1751'),
|
||||
('\u1760', '\u1770'), ('\u1780', '\u17b3'),
|
||||
('\u17dc', '\u17dc'), ('\u1820', '\u1842'),
|
||||
('\u1844', '\u18a8'), ('\u18aa', '\u191c'),
|
||||
('\u1950', '\u19ab'), ('\u19c1', '\u19c7'),
|
||||
('\u1a00', '\u1a16'), ('\u1a20', '\u1a54'),
|
||||
('\u1b05', '\u1b33'), ('\u1b45', '\u1b4b'),
|
||||
('\u1b83', '\u1ba0'), ('\u1bae', '\u1baf'),
|
||||
('\u1bba', '\u1be5'), ('\u1c00', '\u1c23'),
|
||||
('\u1c4d', '\u1c4f'), ('\u1c5a', '\u1c77'),
|
||||
('\u1ce9', '\u1cec'), ('\u1cee', '\u1cf1'),
|
||||
('\u1cf5', '\u1cf6'), ('\u2135', '\u2138'),
|
||||
('\u2d30', '\u2d67'), ('\u2d80', '\u2dde'),
|
||||
('\u3006', '\u3006'), ('\u303c', '\u303c'),
|
||||
('\u3041', '\u3096'), ('\u309f', '\u309f'),
|
||||
('\u30a1', '\u30fa'), ('\u30ff', '\u318e'),
|
||||
('\u31a0', '\u31ba'), ('\u31f0', '\u31ff'),
|
||||
('\u3400', '\u4db5'), ('\u4e00', '\ua014'),
|
||||
('\ua016', '\ua48c'), ('\ua4d0', '\ua4f7'),
|
||||
('\ua500', '\ua60b'), ('\ua610', '\ua61f'),
|
||||
('\ua62a', '\ua62b'), ('\ua66e', '\ua66e'),
|
||||
('\ua6a0', '\ua6e5'), ('\ua7fb', '\ua801'),
|
||||
('\ua803', '\ua805'), ('\ua807', '\ua80a'),
|
||||
('\ua80c', '\ua822'), ('\ua840', '\ua873'),
|
||||
('\ua882', '\ua8b3'), ('\ua8f2', '\ua8f7'),
|
||||
('\ua8fb', '\ua8fb'), ('\ua90a', '\ua925'),
|
||||
('\ua930', '\ua946'), ('\ua960', '\ua97c'),
|
||||
('\ua984', '\ua9b2'), ('\uaa00', '\uaa28'),
|
||||
('\uaa40', '\uaa42'), ('\uaa44', '\uaa4b'),
|
||||
('\uaa60', '\uaa6f'), ('\uaa71', '\uaa76'),
|
||||
('\uaa7a', '\uaa7a'), ('\uaa80', '\uaaaf'),
|
||||
('\uaab1', '\uaab1'), ('\uaab5', '\uaab6'),
|
||||
('\uaab9', '\uaabd'), ('\uaac0', '\uaac0'),
|
||||
('\uaac2', '\uaadc'), ('\uaae0', '\uaaea'),
|
||||
('\uaaf2', '\uaaf2'), ('\uab01', '\uabe2'),
|
||||
('\uac00', '\ud7fb'), ('\uf900', '\ufad9'),
|
||||
('\ufb1d', '\ufb1d'), ('\ufb1f', '\ufb28'),
|
||||
('\ufb2a', '\ufbb1'), ('\ufbd3', '\ufd3d'),
|
||||
('\ufd50', '\ufdfb'), ('\ufe70', '\ufefc'),
|
||||
('\uff66', '\uff6f'), ('\uff71', '\uff9d'),
|
||||
('\uffa0', '\uffdc'), ('\U00010000', '\U000100fa'),
|
||||
('\U00010280', '\U0001031e'), ('\U00010330', '\U00010340'),
|
||||
('\U00010342', '\U00010349'), ('\U00010380', '\U0001039d'),
|
||||
('\U000103a0', '\U000103cf'), ('\U00010450', '\U0001049d'),
|
||||
('\U00010800', '\U00010855'), ('\U00010900', '\U00010915'),
|
||||
('\U00010920', '\U00010939'), ('\U00010980', '\U00010a00'),
|
||||
('\U00010a10', '\U00010a33'), ('\U00010a60', '\U00010a7c'),
|
||||
('\U00010b00', '\U00010b35'), ('\U00010b40', '\U00010b55'),
|
||||
('\U00010b60', '\U00010b72'), ('\U00010c00', '\U00010c48'),
|
||||
('\U00011003', '\U00011037'), ('\U00011083', '\U000110af'),
|
||||
('\U000110d0', '\U000110e8'), ('\U00011103', '\U00011126'),
|
||||
('\U00011183', '\U000111b2'), ('\U000111c1', '\U000111c4'),
|
||||
('\U00011680', '\U000116aa'), ('\U00012000', '\U0001236e'),
|
||||
('\U00013000', '\U00016f50'), ('\U0001b000', '\U0001b001'),
|
||||
('\U0001ee00', '\U0001eebb'), ('\U00020000', '\U0002fa1d')
|
||||
];
|
||||
|
||||
pub fn Lo(c: char) -> bool {
|
||||
bsearch_range_table(c, Lo_table)
|
||||
}
|
||||
|
||||
static Lt_table : &'static [(char,char)] = &[
|
||||
('\u01c5', '\u01c5'), ('\u01c8', '\u01c8'),
|
||||
('\u01cb', '\u01cb'), ('\u01f2', '\u01f2'),
|
||||
('\u1f88', '\u1f8f'), ('\u1f98', '\u1f9f'),
|
||||
('\u1fa8', '\u1faf'), ('\u1fbc', '\u1fbc'),
|
||||
('\u1fcc', '\u1fcc'), ('\u1ffc', '\u1ffc')
|
||||
];
|
||||
|
||||
pub fn Lt(c: char) -> bool {
|
||||
bsearch_range_table(c, Lt_table)
|
||||
}
|
||||
|
||||
static Lu_table : &'static [(char,char)] = &[
|
||||
('\x41', '\x5a'), ('\xc0', '\xd6'),
|
||||
('\xd8', '\xde'), ('\u0100', '\u0100'),
|
||||
('\u0102', '\u0102'), ('\u0104', '\u0104'),
|
||||
('\u0106', '\u0106'), ('\u0108', '\u0108'),
|
||||
('\u010a', '\u010a'), ('\u010c', '\u010c'),
|
||||
('\u010e', '\u010e'), ('\u0110', '\u0110'),
|
||||
('\u0112', '\u0112'), ('\u0114', '\u0114'),
|
||||
('\u0116', '\u0116'), ('\u0118', '\u0118'),
|
||||
('\u011a', '\u011a'), ('\u011c', '\u011c'),
|
||||
('\u011e', '\u011e'), ('\u0120', '\u0120'),
|
||||
('\u0122', '\u0122'), ('\u0124', '\u0124'),
|
||||
('\u0126', '\u0126'), ('\u0128', '\u0128'),
|
||||
('\u012a', '\u012a'), ('\u012c', '\u012c'),
|
||||
('\u012e', '\u012e'), ('\u0130', '\u0130'),
|
||||
('\u0132', '\u0132'), ('\u0134', '\u0134'),
|
||||
('\u0136', '\u0136'), ('\u0139', '\u0139'),
|
||||
('\u013b', '\u013b'), ('\u013d', '\u013d'),
|
||||
('\u013f', '\u013f'), ('\u0141', '\u0141'),
|
||||
('\u0143', '\u0143'), ('\u0145', '\u0145'),
|
||||
('\u0147', '\u0147'), ('\u014a', '\u014a'),
|
||||
('\u014c', '\u014c'), ('\u014e', '\u014e'),
|
||||
('\u0150', '\u0150'), ('\u0152', '\u0152'),
|
||||
('\u0154', '\u0154'), ('\u0156', '\u0156'),
|
||||
('\u0158', '\u0158'), ('\u015a', '\u015a'),
|
||||
('\u015c', '\u015c'), ('\u015e', '\u015e'),
|
||||
('\u0160', '\u0160'), ('\u0162', '\u0162'),
|
||||
('\u0164', '\u0164'), ('\u0166', '\u0166'),
|
||||
('\u0168', '\u0168'), ('\u016a', '\u016a'),
|
||||
('\u016c', '\u016c'), ('\u016e', '\u016e'),
|
||||
('\u0170', '\u0170'), ('\u0172', '\u0172'),
|
||||
('\u0174', '\u0174'), ('\u0176', '\u0176'),
|
||||
('\u0178', '\u0179'), ('\u017b', '\u017b'),
|
||||
('\u017d', '\u017d'), ('\u0181', '\u0182'),
|
||||
('\u0184', '\u0184'), ('\u0186', '\u0187'),
|
||||
('\u0189', '\u018b'), ('\u018e', '\u0191'),
|
||||
('\u0193', '\u0194'), ('\u0196', '\u0198'),
|
||||
('\u019c', '\u019d'), ('\u019f', '\u01a0'),
|
||||
('\u01a2', '\u01a2'), ('\u01a4', '\u01a4'),
|
||||
('\u01a6', '\u01a7'), ('\u01a9', '\u01a9'),
|
||||
('\u01ac', '\u01ac'), ('\u01ae', '\u01af'),
|
||||
('\u01b1', '\u01b3'), ('\u01b5', '\u01b5'),
|
||||
('\u01b7', '\u01b8'), ('\u01bc', '\u01bc'),
|
||||
('\u01c4', '\u01c4'), ('\u01c7', '\u01c7'),
|
||||
('\u01ca', '\u01ca'), ('\u01cd', '\u01cd'),
|
||||
('\u01cf', '\u01cf'), ('\u01d1', '\u01d1'),
|
||||
('\u01d3', '\u01d3'), ('\u01d5', '\u01d5'),
|
||||
('\u01d7', '\u01d7'), ('\u01d9', '\u01d9'),
|
||||
('\u01db', '\u01db'), ('\u01de', '\u01de'),
|
||||
('\u01e0', '\u01e0'), ('\u01e2', '\u01e2'),
|
||||
('\u01e4', '\u01e4'), ('\u01e6', '\u01e6'),
|
||||
('\u01e8', '\u01e8'), ('\u01ea', '\u01ea'),
|
||||
('\u01ec', '\u01ec'), ('\u01ee', '\u01ee'),
|
||||
('\u01f1', '\u01f1'), ('\u01f4', '\u01f4'),
|
||||
('\u01f6', '\u01f8'), ('\u01fa', '\u01fa'),
|
||||
('\u01fc', '\u01fc'), ('\u01fe', '\u01fe'),
|
||||
('\u0200', '\u0200'), ('\u0202', '\u0202'),
|
||||
('\u0204', '\u0204'), ('\u0206', '\u0206'),
|
||||
('\u0208', '\u0208'), ('\u020a', '\u020a'),
|
||||
('\u020c', '\u020c'), ('\u020e', '\u020e'),
|
||||
('\u0210', '\u0210'), ('\u0212', '\u0212'),
|
||||
('\u0214', '\u0214'), ('\u0216', '\u0216'),
|
||||
('\u0218', '\u0218'), ('\u021a', '\u021a'),
|
||||
('\u021c', '\u021c'), ('\u021e', '\u021e'),
|
||||
('\u0220', '\u0220'), ('\u0222', '\u0222'),
|
||||
('\u0224', '\u0224'), ('\u0226', '\u0226'),
|
||||
('\u0228', '\u0228'), ('\u022a', '\u022a'),
|
||||
('\u022c', '\u022c'), ('\u022e', '\u022e'),
|
||||
('\u0230', '\u0230'), ('\u0232', '\u0232'),
|
||||
('\u023a', '\u023b'), ('\u023d', '\u023e'),
|
||||
('\u0241', '\u0241'), ('\u0243', '\u0246'),
|
||||
('\u0248', '\u0248'), ('\u024a', '\u024a'),
|
||||
('\u024c', '\u024c'), ('\u024e', '\u024e'),
|
||||
('\u0370', '\u0370'), ('\u0372', '\u0372'),
|
||||
('\u0376', '\u0376'), ('\u0386', '\u0386'),
|
||||
('\u0388', '\u038f'), ('\u0391', '\u03ab'),
|
||||
('\u03cf', '\u03cf'), ('\u03d2', '\u03d4'),
|
||||
('\u03d8', '\u03d8'), ('\u03da', '\u03da'),
|
||||
('\u03dc', '\u03dc'), ('\u03de', '\u03de'),
|
||||
('\u03e0', '\u03e0'), ('\u03e2', '\u03e2'),
|
||||
('\u03e4', '\u03e4'), ('\u03e6', '\u03e6'),
|
||||
('\u03e8', '\u03e8'), ('\u03ea', '\u03ea'),
|
||||
('\u03ec', '\u03ec'), ('\u03ee', '\u03ee'),
|
||||
('\u03f4', '\u03f4'), ('\u03f7', '\u03f7'),
|
||||
('\u03f9', '\u03fa'), ('\u03fd', '\u042f'),
|
||||
('\u0460', '\u0460'), ('\u0462', '\u0462'),
|
||||
('\u0464', '\u0464'), ('\u0466', '\u0466'),
|
||||
('\u0468', '\u0468'), ('\u046a', '\u046a'),
|
||||
('\u046c', '\u046c'), ('\u046e', '\u046e'),
|
||||
('\u0470', '\u0470'), ('\u0472', '\u0472'),
|
||||
('\u0474', '\u0474'), ('\u0476', '\u0476'),
|
||||
('\u0478', '\u0478'), ('\u047a', '\u047a'),
|
||||
('\u047c', '\u047c'), ('\u047e', '\u047e'),
|
||||
('\u0480', '\u0480'), ('\u048a', '\u048a'),
|
||||
('\u048c', '\u048c'), ('\u048e', '\u048e'),
|
||||
('\u0490', '\u0490'), ('\u0492', '\u0492'),
|
||||
('\u0494', '\u0494'), ('\u0496', '\u0496'),
|
||||
('\u0498', '\u0498'), ('\u049a', '\u049a'),
|
||||
('\u049c', '\u049c'), ('\u049e', '\u049e'),
|
||||
('\u04a0', '\u04a0'), ('\u04a2', '\u04a2'),
|
||||
('\u04a4', '\u04a4'), ('\u04a6', '\u04a6'),
|
||||
('\u04a8', '\u04a8'), ('\u04aa', '\u04aa'),
|
||||
('\u04ac', '\u04ac'), ('\u04ae', '\u04ae'),
|
||||
('\u04b0', '\u04b0'), ('\u04b2', '\u04b2'),
|
||||
('\u04b4', '\u04b4'), ('\u04b6', '\u04b6'),
|
||||
('\u04b8', '\u04b8'), ('\u04ba', '\u04ba'),
|
||||
('\u04bc', '\u04bc'), ('\u04be', '\u04be'),
|
||||
('\u04c0', '\u04c1'), ('\u04c3', '\u04c3'),
|
||||
('\u04c5', '\u04c5'), ('\u04c7', '\u04c7'),
|
||||
('\u04c9', '\u04c9'), ('\u04cb', '\u04cb'),
|
||||
('\u04cd', '\u04cd'), ('\u04d0', '\u04d0'),
|
||||
('\u04d2', '\u04d2'), ('\u04d4', '\u04d4'),
|
||||
('\u04d6', '\u04d6'), ('\u04d8', '\u04d8'),
|
||||
('\u04da', '\u04da'), ('\u04dc', '\u04dc'),
|
||||
('\u04de', '\u04de'), ('\u04e0', '\u04e0'),
|
||||
('\u04e2', '\u04e2'), ('\u04e4', '\u04e4'),
|
||||
('\u04e6', '\u04e6'), ('\u04e8', '\u04e8'),
|
||||
('\u04ea', '\u04ea'), ('\u04ec', '\u04ec'),
|
||||
('\u04ee', '\u04ee'), ('\u04f0', '\u04f0'),
|
||||
('\u04f2', '\u04f2'), ('\u04f4', '\u04f4'),
|
||||
('\u04f6', '\u04f6'), ('\u04f8', '\u04f8'),
|
||||
('\u04fa', '\u04fa'), ('\u04fc', '\u04fc'),
|
||||
('\u04fe', '\u04fe'), ('\u0500', '\u0500'),
|
||||
('\u0502', '\u0502'), ('\u0504', '\u0504'),
|
||||
('\u0506', '\u0506'), ('\u0508', '\u0508'),
|
||||
('\u050a', '\u050a'), ('\u050c', '\u050c'),
|
||||
('\u050e', '\u050e'), ('\u0510', '\u0510'),
|
||||
('\u0512', '\u0512'), ('\u0514', '\u0514'),
|
||||
('\u0516', '\u0516'), ('\u0518', '\u0518'),
|
||||
('\u051a', '\u051a'), ('\u051c', '\u051c'),
|
||||
('\u051e', '\u051e'), ('\u0520', '\u0520'),
|
||||
('\u0522', '\u0522'), ('\u0524', '\u0524'),
|
||||
('\u0526', '\u0526'), ('\u0531', '\u0556'),
|
||||
('\u10a0', '\u10cd'), ('\u1e00', '\u1e00'),
|
||||
('\u1e02', '\u1e02'), ('\u1e04', '\u1e04'),
|
||||
('\u1e06', '\u1e06'), ('\u1e08', '\u1e08'),
|
||||
('\u1e0a', '\u1e0a'), ('\u1e0c', '\u1e0c'),
|
||||
('\u1e0e', '\u1e0e'), ('\u1e10', '\u1e10'),
|
||||
('\u1e12', '\u1e12'), ('\u1e14', '\u1e14'),
|
||||
('\u1e16', '\u1e16'), ('\u1e18', '\u1e18'),
|
||||
('\u1e1a', '\u1e1a'), ('\u1e1c', '\u1e1c'),
|
||||
('\u1e1e', '\u1e1e'), ('\u1e20', '\u1e20'),
|
||||
('\u1e22', '\u1e22'), ('\u1e24', '\u1e24'),
|
||||
('\u1e26', '\u1e26'), ('\u1e28', '\u1e28'),
|
||||
('\u1e2a', '\u1e2a'), ('\u1e2c', '\u1e2c'),
|
||||
('\u1e2e', '\u1e2e'), ('\u1e30', '\u1e30'),
|
||||
('\u1e32', '\u1e32'), ('\u1e34', '\u1e34'),
|
||||
('\u1e36', '\u1e36'), ('\u1e38', '\u1e38'),
|
||||
('\u1e3a', '\u1e3a'), ('\u1e3c', '\u1e3c'),
|
||||
('\u1e3e', '\u1e3e'), ('\u1e40', '\u1e40'),
|
||||
('\u1e42', '\u1e42'), ('\u1e44', '\u1e44'),
|
||||
('\u1e46', '\u1e46'), ('\u1e48', '\u1e48'),
|
||||
('\u1e4a', '\u1e4a'), ('\u1e4c', '\u1e4c'),
|
||||
('\u1e4e', '\u1e4e'), ('\u1e50', '\u1e50'),
|
||||
('\u1e52', '\u1e52'), ('\u1e54', '\u1e54'),
|
||||
('\u1e56', '\u1e56'), ('\u1e58', '\u1e58'),
|
||||
('\u1e5a', '\u1e5a'), ('\u1e5c', '\u1e5c'),
|
||||
('\u1e5e', '\u1e5e'), ('\u1e60', '\u1e60'),
|
||||
('\u1e62', '\u1e62'), ('\u1e64', '\u1e64'),
|
||||
('\u1e66', '\u1e66'), ('\u1e68', '\u1e68'),
|
||||
('\u1e6a', '\u1e6a'), ('\u1e6c', '\u1e6c'),
|
||||
('\u1e6e', '\u1e6e'), ('\u1e70', '\u1e70'),
|
||||
('\u1e72', '\u1e72'), ('\u1e74', '\u1e74'),
|
||||
('\u1e76', '\u1e76'), ('\u1e78', '\u1e78'),
|
||||
('\u1e7a', '\u1e7a'), ('\u1e7c', '\u1e7c'),
|
||||
('\u1e7e', '\u1e7e'), ('\u1e80', '\u1e80'),
|
||||
('\u1e82', '\u1e82'), ('\u1e84', '\u1e84'),
|
||||
('\u1e86', '\u1e86'), ('\u1e88', '\u1e88'),
|
||||
('\u1e8a', '\u1e8a'), ('\u1e8c', '\u1e8c'),
|
||||
('\u1e8e', '\u1e8e'), ('\u1e90', '\u1e90'),
|
||||
('\u1e92', '\u1e92'), ('\u1e94', '\u1e94'),
|
||||
('\u1e9e', '\u1e9e'), ('\u1ea0', '\u1ea0'),
|
||||
('\u1ea2', '\u1ea2'), ('\u1ea4', '\u1ea4'),
|
||||
('\u1ea6', '\u1ea6'), ('\u1ea8', '\u1ea8'),
|
||||
('\u1eaa', '\u1eaa'), ('\u1eac', '\u1eac'),
|
||||
('\u1eae', '\u1eae'), ('\u1eb0', '\u1eb0'),
|
||||
('\u1eb2', '\u1eb2'), ('\u1eb4', '\u1eb4'),
|
||||
('\u1eb6', '\u1eb6'), ('\u1eb8', '\u1eb8'),
|
||||
('\u1eba', '\u1eba'), ('\u1ebc', '\u1ebc'),
|
||||
('\u1ebe', '\u1ebe'), ('\u1ec0', '\u1ec0'),
|
||||
('\u1ec2', '\u1ec2'), ('\u1ec4', '\u1ec4'),
|
||||
('\u1ec6', '\u1ec6'), ('\u1ec8', '\u1ec8'),
|
||||
('\u1eca', '\u1eca'), ('\u1ecc', '\u1ecc'),
|
||||
('\u1ece', '\u1ece'), ('\u1ed0', '\u1ed0'),
|
||||
('\u1ed2', '\u1ed2'), ('\u1ed4', '\u1ed4'),
|
||||
('\u1ed6', '\u1ed6'), ('\u1ed8', '\u1ed8'),
|
||||
('\u1eda', '\u1eda'), ('\u1edc', '\u1edc'),
|
||||
('\u1ede', '\u1ede'), ('\u1ee0', '\u1ee0'),
|
||||
('\u1ee2', '\u1ee2'), ('\u1ee4', '\u1ee4'),
|
||||
('\u1ee6', '\u1ee6'), ('\u1ee8', '\u1ee8'),
|
||||
('\u1eea', '\u1eea'), ('\u1eec', '\u1eec'),
|
||||
('\u1eee', '\u1eee'), ('\u1ef0', '\u1ef0'),
|
||||
('\u1ef2', '\u1ef2'), ('\u1ef4', '\u1ef4'),
|
||||
('\u1ef6', '\u1ef6'), ('\u1ef8', '\u1ef8'),
|
||||
('\u1efa', '\u1efa'), ('\u1efc', '\u1efc'),
|
||||
('\u1efe', '\u1efe'), ('\u1f08', '\u1f0f'),
|
||||
('\u1f18', '\u1f1d'), ('\u1f28', '\u1f2f'),
|
||||
('\u1f38', '\u1f3f'), ('\u1f48', '\u1f4d'),
|
||||
('\u1f59', '\u1f5f'), ('\u1f68', '\u1f6f'),
|
||||
('\u1fb8', '\u1fbb'), ('\u1fc8', '\u1fcb'),
|
||||
('\u1fd8', '\u1fdb'), ('\u1fe8', '\u1fec'),
|
||||
('\u1ff8', '\u1ffb'), ('\u2102', '\u2102'),
|
||||
('\u2107', '\u2107'), ('\u210b', '\u210d'),
|
||||
('\u2110', '\u2112'), ('\u2115', '\u2115'),
|
||||
('\u2119', '\u211d'), ('\u2124', '\u2124'),
|
||||
('\u2126', '\u2126'), ('\u2128', '\u2128'),
|
||||
('\u212a', '\u212d'), ('\u2130', '\u2133'),
|
||||
('\u213e', '\u213f'), ('\u2145', '\u2145'),
|
||||
('\u2183', '\u2183'), ('\u2c00', '\u2c2e'),
|
||||
('\u2c60', '\u2c60'), ('\u2c62', '\u2c64'),
|
||||
('\u2c67', '\u2c67'), ('\u2c69', '\u2c69'),
|
||||
('\u2c6b', '\u2c6b'), ('\u2c6d', '\u2c70'),
|
||||
('\u2c72', '\u2c72'), ('\u2c75', '\u2c75'),
|
||||
('\u2c7e', '\u2c80'), ('\u2c82', '\u2c82'),
|
||||
('\u2c84', '\u2c84'), ('\u2c86', '\u2c86'),
|
||||
('\u2c88', '\u2c88'), ('\u2c8a', '\u2c8a'),
|
||||
('\u2c8c', '\u2c8c'), ('\u2c8e', '\u2c8e'),
|
||||
('\u2c90', '\u2c90'), ('\u2c92', '\u2c92'),
|
||||
('\u2c94', '\u2c94'), ('\u2c96', '\u2c96'),
|
||||
('\u2c98', '\u2c98'), ('\u2c9a', '\u2c9a'),
|
||||
('\u2c9c', '\u2c9c'), ('\u2c9e', '\u2c9e'),
|
||||
('\u2ca0', '\u2ca0'), ('\u2ca2', '\u2ca2'),
|
||||
('\u2ca4', '\u2ca4'), ('\u2ca6', '\u2ca6'),
|
||||
('\u2ca8', '\u2ca8'), ('\u2caa', '\u2caa'),
|
||||
('\u2cac', '\u2cac'), ('\u2cae', '\u2cae'),
|
||||
('\u2cb0', '\u2cb0'), ('\u2cb2', '\u2cb2'),
|
||||
('\u2cb4', '\u2cb4'), ('\u2cb6', '\u2cb6'),
|
||||
('\u2cb8', '\u2cb8'), ('\u2cba', '\u2cba'),
|
||||
('\u2cbc', '\u2cbc'), ('\u2cbe', '\u2cbe'),
|
||||
('\u2cc0', '\u2cc0'), ('\u2cc2', '\u2cc2'),
|
||||
('\u2cc4', '\u2cc4'), ('\u2cc6', '\u2cc6'),
|
||||
('\u2cc8', '\u2cc8'), ('\u2cca', '\u2cca'),
|
||||
('\u2ccc', '\u2ccc'), ('\u2cce', '\u2cce'),
|
||||
('\u2cd0', '\u2cd0'), ('\u2cd2', '\u2cd2'),
|
||||
('\u2cd4', '\u2cd4'), ('\u2cd6', '\u2cd6'),
|
||||
('\u2cd8', '\u2cd8'), ('\u2cda', '\u2cda'),
|
||||
('\u2cdc', '\u2cdc'), ('\u2cde', '\u2cde'),
|
||||
('\u2ce0', '\u2ce0'), ('\u2ce2', '\u2ce2'),
|
||||
('\u2ceb', '\u2ceb'), ('\u2ced', '\u2ced'),
|
||||
('\u2cf2', '\u2cf2'), ('\ua640', '\ua640'),
|
||||
('\ua642', '\ua642'), ('\ua644', '\ua644'),
|
||||
('\ua646', '\ua646'), ('\ua648', '\ua648'),
|
||||
('\ua64a', '\ua64a'), ('\ua64c', '\ua64c'),
|
||||
('\ua64e', '\ua64e'), ('\ua650', '\ua650'),
|
||||
('\ua652', '\ua652'), ('\ua654', '\ua654'),
|
||||
('\ua656', '\ua656'), ('\ua658', '\ua658'),
|
||||
('\ua65a', '\ua65a'), ('\ua65c', '\ua65c'),
|
||||
('\ua65e', '\ua65e'), ('\ua660', '\ua660'),
|
||||
('\ua662', '\ua662'), ('\ua664', '\ua664'),
|
||||
('\ua666', '\ua666'), ('\ua668', '\ua668'),
|
||||
('\ua66a', '\ua66a'), ('\ua66c', '\ua66c'),
|
||||
('\ua680', '\ua680'), ('\ua682', '\ua682'),
|
||||
('\ua684', '\ua684'), ('\ua686', '\ua686'),
|
||||
('\ua688', '\ua688'), ('\ua68a', '\ua68a'),
|
||||
('\ua68c', '\ua68c'), ('\ua68e', '\ua68e'),
|
||||
('\ua690', '\ua690'), ('\ua692', '\ua692'),
|
||||
('\ua694', '\ua694'), ('\ua696', '\ua696'),
|
||||
('\ua722', '\ua722'), ('\ua724', '\ua724'),
|
||||
('\ua726', '\ua726'), ('\ua728', '\ua728'),
|
||||
('\ua72a', '\ua72a'), ('\ua72c', '\ua72c'),
|
||||
('\ua72e', '\ua72e'), ('\ua732', '\ua732'),
|
||||
('\ua734', '\ua734'), ('\ua736', '\ua736'),
|
||||
('\ua738', '\ua738'), ('\ua73a', '\ua73a'),
|
||||
('\ua73c', '\ua73c'), ('\ua73e', '\ua73e'),
|
||||
('\ua740', '\ua740'), ('\ua742', '\ua742'),
|
||||
('\ua744', '\ua744'), ('\ua746', '\ua746'),
|
||||
('\ua748', '\ua748'), ('\ua74a', '\ua74a'),
|
||||
('\ua74c', '\ua74c'), ('\ua74e', '\ua74e'),
|
||||
('\ua750', '\ua750'), ('\ua752', '\ua752'),
|
||||
('\ua754', '\ua754'), ('\ua756', '\ua756'),
|
||||
('\ua758', '\ua758'), ('\ua75a', '\ua75a'),
|
||||
('\ua75c', '\ua75c'), ('\ua75e', '\ua75e'),
|
||||
('\ua760', '\ua760'), ('\ua762', '\ua762'),
|
||||
('\ua764', '\ua764'), ('\ua766', '\ua766'),
|
||||
('\ua768', '\ua768'), ('\ua76a', '\ua76a'),
|
||||
('\ua76c', '\ua76c'), ('\ua76e', '\ua76e'),
|
||||
('\ua779', '\ua779'), ('\ua77b', '\ua77b'),
|
||||
('\ua77d', '\ua77e'), ('\ua780', '\ua780'),
|
||||
('\ua782', '\ua782'), ('\ua784', '\ua784'),
|
||||
('\ua786', '\ua786'), ('\ua78b', '\ua78b'),
|
||||
('\ua78d', '\ua78d'), ('\ua790', '\ua790'),
|
||||
('\ua792', '\ua792'), ('\ua7a0', '\ua7a0'),
|
||||
('\ua7a2', '\ua7a2'), ('\ua7a4', '\ua7a4'),
|
||||
('\ua7a6', '\ua7a6'), ('\ua7a8', '\ua7a8'),
|
||||
('\ua7aa', '\ua7aa'), ('\uff21', '\uff3a'),
|
||||
('\U00010400', '\U00010427'), ('\U0001d400', '\U0001d419'),
|
||||
('\U0001d434', '\U0001d44d'), ('\U0001d468', '\U0001d481'),
|
||||
('\U0001d49c', '\U0001d4b5'), ('\U0001d4d0', '\U0001d4e9'),
|
||||
('\U0001d504', '\U0001d51c'), ('\U0001d538', '\U0001d550'),
|
||||
('\U0001d56c', '\U0001d585'), ('\U0001d5a0', '\U0001d5b9'),
|
||||
('\U0001d5d4', '\U0001d5ed'), ('\U0001d608', '\U0001d621'),
|
||||
('\U0001d63c', '\U0001d655'), ('\U0001d670', '\U0001d689'),
|
||||
('\U0001d6a8', '\U0001d6c0'), ('\U0001d6e2', '\U0001d6fa'),
|
||||
('\U0001d71c', '\U0001d734'), ('\U0001d756', '\U0001d76e'),
|
||||
('\U0001d790', '\U0001d7a8'), ('\U0001d7ca', '\U0001d7ca')
|
||||
];
|
||||
|
||||
pub fn Lu(c: char) -> bool {
|
||||
bsearch_range_table(c, Lu_table)
|
||||
}
|
||||
|
||||
static Mc_table : &'static [(char,char)] = &[
|
||||
('\u0903', '\u0903'), ('\u093b', '\u093b'),
|
||||
('\u093e', '\u0940'), ('\u0949', '\u094c'),
|
||||
('\u094e', '\u094f'), ('\u0982', '\u0983'),
|
||||
('\u09be', '\u09c0'), ('\u09c7', '\u09cc'),
|
||||
('\u09d7', '\u09d7'), ('\u0a03', '\u0a03'),
|
||||
('\u0a3e', '\u0a40'), ('\u0a83', '\u0a83'),
|
||||
('\u0abe', '\u0ac0'), ('\u0ac9', '\u0acc'),
|
||||
('\u0b02', '\u0b03'), ('\u0b3e', '\u0b3e'),
|
||||
('\u0b40', '\u0b40'), ('\u0b47', '\u0b4c'),
|
||||
('\u0b57', '\u0b57'), ('\u0bbe', '\u0bbf'),
|
||||
('\u0bc1', '\u0bcc'), ('\u0bd7', '\u0bd7'),
|
||||
('\u0c01', '\u0c03'), ('\u0c41', '\u0c44'),
|
||||
('\u0c82', '\u0c83'), ('\u0cbe', '\u0cbe'),
|
||||
('\u0cc0', '\u0cc4'), ('\u0cc7', '\u0ccb'),
|
||||
('\u0cd5', '\u0cd6'), ('\u0d02', '\u0d03'),
|
||||
('\u0d3e', '\u0d40'), ('\u0d46', '\u0d4c'),
|
||||
('\u0d57', '\u0d57'), ('\u0d82', '\u0d83'),
|
||||
('\u0dcf', '\u0dd1'), ('\u0dd8', '\u0df3'),
|
||||
('\u0f3e', '\u0f3f'), ('\u0f7f', '\u0f7f'),
|
||||
('\u102b', '\u102c'), ('\u1031', '\u1031'),
|
||||
('\u1038', '\u1038'), ('\u103b', '\u103c'),
|
||||
('\u1056', '\u1057'), ('\u1062', '\u1064'),
|
||||
('\u1067', '\u106d'), ('\u1083', '\u1084'),
|
||||
('\u1087', '\u108c'), ('\u108f', '\u108f'),
|
||||
('\u109a', '\u109c'), ('\u17b6', '\u17b6'),
|
||||
('\u17be', '\u17c5'), ('\u17c7', '\u17c8'),
|
||||
('\u1923', '\u1926'), ('\u1929', '\u1931'),
|
||||
('\u1933', '\u1938'), ('\u19b0', '\u19c0'),
|
||||
('\u19c8', '\u19c9'), ('\u1a19', '\u1a1a'),
|
||||
('\u1a55', '\u1a55'), ('\u1a57', '\u1a57'),
|
||||
('\u1a61', '\u1a61'), ('\u1a63', '\u1a64'),
|
||||
('\u1a6d', '\u1a72'), ('\u1b04', '\u1b04'),
|
||||
('\u1b35', '\u1b35'), ('\u1b3b', '\u1b3b'),
|
||||
('\u1b3d', '\u1b41'), ('\u1b43', '\u1b44'),
|
||||
('\u1b82', '\u1b82'), ('\u1ba1', '\u1ba1'),
|
||||
('\u1ba6', '\u1ba7'), ('\u1baa', '\u1baa'),
|
||||
('\u1bac', '\u1bad'), ('\u1be7', '\u1be7'),
|
||||
('\u1bea', '\u1bec'), ('\u1bee', '\u1bee'),
|
||||
('\u1bf2', '\u1bf3'), ('\u1c24', '\u1c2b'),
|
||||
('\u1c34', '\u1c35'), ('\u1ce1', '\u1ce1'),
|
||||
('\u1cf2', '\u1cf3'), ('\u302e', '\u302f'),
|
||||
('\ua823', '\ua824'), ('\ua827', '\ua827'),
|
||||
('\ua880', '\ua881'), ('\ua8b4', '\ua8c3'),
|
||||
('\ua952', '\ua953'), ('\ua983', '\ua983'),
|
||||
('\ua9b4', '\ua9b5'), ('\ua9ba', '\ua9bb'),
|
||||
('\ua9bd', '\ua9c0'), ('\uaa2f', '\uaa30'),
|
||||
('\uaa33', '\uaa34'), ('\uaa4d', '\uaa4d'),
|
||||
('\uaa7b', '\uaa7b'), ('\uaaeb', '\uaaeb'),
|
||||
('\uaaee', '\uaaef'), ('\uaaf5', '\uaaf5'),
|
||||
('\uabe3', '\uabe4'), ('\uabe6', '\uabe7'),
|
||||
('\uabe9', '\uabea'), ('\uabec', '\uabec'),
|
||||
('\U00011000', '\U00011000'), ('\U00011002', '\U00011002'),
|
||||
('\U00011082', '\U00011082'), ('\U000110b0', '\U000110b2'),
|
||||
('\U000110b7', '\U000110b8'), ('\U0001112c', '\U0001112c'),
|
||||
('\U00011182', '\U00011182'), ('\U000111b3', '\U000111b5'),
|
||||
('\U000111bf', '\U000111c0'), ('\U000116ac', '\U000116ac'),
|
||||
('\U000116ae', '\U000116af'), ('\U000116b6', '\U000116b6'),
|
||||
('\U00016f51', '\U00016f7e'), ('\U0001d165', '\U0001d166'),
|
||||
('\U0001d16d', '\U0001d172')
|
||||
];
|
||||
|
||||
pub fn Mc(c: char) -> bool {
|
||||
bsearch_range_table(c, Mc_table)
|
||||
}
|
||||
|
||||
static Me_table : &'static [(char,char)] = &[
|
||||
('\u0488', '\u0489'), ('\u20dd', '\u20e0'),
|
||||
('\u20e2', '\u20e4'), ('\ua670', '\ua672')
|
||||
];
|
||||
|
||||
pub fn Me(c: char) -> bool {
|
||||
bsearch_range_table(c, Me_table)
|
||||
}
|
||||
|
||||
static Mn_table : &'static [(char,char)] = &[
|
||||
('\u0300', '\u036f'), ('\u0483', '\u0487'),
|
||||
('\u0591', '\u05bd'), ('\u05bf', '\u05bf'),
|
||||
('\u05c1', '\u05c2'), ('\u05c4', '\u05c5'),
|
||||
('\u05c7', '\u05c7'), ('\u0610', '\u061a'),
|
||||
('\u064b', '\u065f'), ('\u0670', '\u0670'),
|
||||
('\u06d6', '\u06dc'), ('\u06df', '\u06e4'),
|
||||
('\u06e7', '\u06e8'), ('\u06ea', '\u06ed'),
|
||||
('\u0711', '\u0711'), ('\u0730', '\u074a'),
|
||||
('\u07a6', '\u07b0'), ('\u07eb', '\u07f3'),
|
||||
('\u0816', '\u0819'), ('\u081b', '\u0823'),
|
||||
('\u0825', '\u0827'), ('\u0829', '\u082d'),
|
||||
('\u0859', '\u085b'), ('\u08e4', '\u0902'),
|
||||
('\u093a', '\u093a'), ('\u093c', '\u093c'),
|
||||
('\u0941', '\u0948'), ('\u094d', '\u094d'),
|
||||
('\u0951', '\u0957'), ('\u0962', '\u0963'),
|
||||
('\u0981', '\u0981'), ('\u09bc', '\u09bc'),
|
||||
('\u09c1', '\u09c4'), ('\u09cd', '\u09cd'),
|
||||
('\u09e2', '\u09e3'), ('\u0a01', '\u0a02'),
|
||||
('\u0a3c', '\u0a3c'), ('\u0a41', '\u0a51'),
|
||||
('\u0a70', '\u0a71'), ('\u0a75', '\u0a82'),
|
||||
('\u0abc', '\u0abc'), ('\u0ac1', '\u0ac8'),
|
||||
('\u0acd', '\u0acd'), ('\u0ae2', '\u0ae3'),
|
||||
('\u0b01', '\u0b01'), ('\u0b3c', '\u0b3c'),
|
||||
('\u0b3f', '\u0b3f'), ('\u0b41', '\u0b44'),
|
||||
('\u0b4d', '\u0b56'), ('\u0b62', '\u0b63'),
|
||||
('\u0b82', '\u0b82'), ('\u0bc0', '\u0bc0'),
|
||||
('\u0bcd', '\u0bcd'), ('\u0c3e', '\u0c40'),
|
||||
('\u0c46', '\u0c56'), ('\u0c62', '\u0c63'),
|
||||
('\u0cbc', '\u0cbc'), ('\u0cbf', '\u0cbf'),
|
||||
('\u0cc6', '\u0cc6'), ('\u0ccc', '\u0ccd'),
|
||||
('\u0ce2', '\u0ce3'), ('\u0d41', '\u0d44'),
|
||||
('\u0d4d', '\u0d4d'), ('\u0d62', '\u0d63'),
|
||||
('\u0dca', '\u0dca'), ('\u0dd2', '\u0dd6'),
|
||||
('\u0e31', '\u0e31'), ('\u0e34', '\u0e3a'),
|
||||
('\u0e47', '\u0e4e'), ('\u0eb1', '\u0eb1'),
|
||||
('\u0eb4', '\u0ebc'), ('\u0ec8', '\u0ecd'),
|
||||
('\u0f18', '\u0f19'), ('\u0f35', '\u0f35'),
|
||||
('\u0f37', '\u0f37'), ('\u0f39', '\u0f39'),
|
||||
('\u0f71', '\u0f7e'), ('\u0f80', '\u0f84'),
|
||||
('\u0f86', '\u0f87'), ('\u0f8d', '\u0fbc'),
|
||||
('\u0fc6', '\u0fc6'), ('\u102d', '\u1030'),
|
||||
('\u1032', '\u1037'), ('\u1039', '\u103a'),
|
||||
('\u103d', '\u103e'), ('\u1058', '\u1059'),
|
||||
('\u105e', '\u1060'), ('\u1071', '\u1074'),
|
||||
('\u1082', '\u1082'), ('\u1085', '\u1086'),
|
||||
('\u108d', '\u108d'), ('\u109d', '\u109d'),
|
||||
('\u135d', '\u135f'), ('\u1712', '\u1714'),
|
||||
('\u1732', '\u1734'), ('\u1752', '\u1753'),
|
||||
('\u1772', '\u1773'), ('\u17b4', '\u17b5'),
|
||||
('\u17b7', '\u17bd'), ('\u17c6', '\u17c6'),
|
||||
('\u17c9', '\u17d3'), ('\u17dd', '\u17dd'),
|
||||
('\u180b', '\u180d'), ('\u18a9', '\u18a9'),
|
||||
('\u1920', '\u1922'), ('\u1927', '\u1928'),
|
||||
('\u1932', '\u1932'), ('\u1939', '\u193b'),
|
||||
('\u1a17', '\u1a18'), ('\u1a1b', '\u1a1b'),
|
||||
('\u1a56', '\u1a56'), ('\u1a58', '\u1a60'),
|
||||
('\u1a62', '\u1a62'), ('\u1a65', '\u1a6c'),
|
||||
('\u1a73', '\u1a7f'), ('\u1b00', '\u1b03'),
|
||||
('\u1b34', '\u1b34'), ('\u1b36', '\u1b3a'),
|
||||
('\u1b3c', '\u1b3c'), ('\u1b42', '\u1b42'),
|
||||
('\u1b6b', '\u1b73'), ('\u1b80', '\u1b81'),
|
||||
('\u1ba2', '\u1ba5'), ('\u1ba8', '\u1ba9'),
|
||||
('\u1bab', '\u1bab'), ('\u1be6', '\u1be6'),
|
||||
('\u1be8', '\u1be9'), ('\u1bed', '\u1bed'),
|
||||
('\u1bef', '\u1bf1'), ('\u1c2c', '\u1c33'),
|
||||
('\u1c36', '\u1c37'), ('\u1cd0', '\u1cd2'),
|
||||
('\u1cd4', '\u1ce0'), ('\u1ce2', '\u1ce8'),
|
||||
('\u1ced', '\u1ced'), ('\u1cf4', '\u1cf4'),
|
||||
('\u1dc0', '\u1dff'), ('\u20d0', '\u20dc'),
|
||||
('\u20e1', '\u20e1'), ('\u20e5', '\u20f0'),
|
||||
('\u2cef', '\u2cf1'), ('\u2d7f', '\u2d7f'),
|
||||
('\u2de0', '\u2dff'), ('\u302a', '\u302d'),
|
||||
('\u3099', '\u309a'), ('\ua66f', '\ua66f'),
|
||||
('\ua674', '\ua67d'), ('\ua69f', '\ua69f'),
|
||||
('\ua6f0', '\ua6f1'), ('\ua802', '\ua802'),
|
||||
('\ua806', '\ua806'), ('\ua80b', '\ua80b'),
|
||||
('\ua825', '\ua826'), ('\ua8c4', '\ua8c4'),
|
||||
('\ua8e0', '\ua8f1'), ('\ua926', '\ua92d'),
|
||||
('\ua947', '\ua951'), ('\ua980', '\ua982'),
|
||||
('\ua9b3', '\ua9b3'), ('\ua9b6', '\ua9b9'),
|
||||
('\ua9bc', '\ua9bc'), ('\uaa29', '\uaa2e'),
|
||||
('\uaa31', '\uaa32'), ('\uaa35', '\uaa36'),
|
||||
('\uaa43', '\uaa43'), ('\uaa4c', '\uaa4c'),
|
||||
('\uaab0', '\uaab0'), ('\uaab2', '\uaab4'),
|
||||
('\uaab7', '\uaab8'), ('\uaabe', '\uaabf'),
|
||||
('\uaac1', '\uaac1'), ('\uaaec', '\uaaed'),
|
||||
('\uaaf6', '\uaaf6'), ('\uabe5', '\uabe5'),
|
||||
('\uabe8', '\uabe8'), ('\uabed', '\uabed'),
|
||||
('\ufb1e', '\ufb1e'), ('\ufe00', '\ufe0f'),
|
||||
('\ufe20', '\ufe26'), ('\U000101fd', '\U000101fd'),
|
||||
('\U00010a01', '\U00010a0f'), ('\U00010a38', '\U00010a3f'),
|
||||
('\U00011001', '\U00011001'), ('\U00011038', '\U00011046'),
|
||||
('\U00011080', '\U00011081'), ('\U000110b3', '\U000110b6'),
|
||||
('\U000110b9', '\U000110ba'), ('\U00011100', '\U00011102'),
|
||||
('\U00011127', '\U0001112b'), ('\U0001112d', '\U00011134'),
|
||||
('\U00011180', '\U00011181'), ('\U000111b6', '\U000111be'),
|
||||
('\U000116ab', '\U000116ab'), ('\U000116ad', '\U000116ad'),
|
||||
('\U000116b0', '\U000116b5'), ('\U000116b7', '\U000116b7'),
|
||||
('\U00016f8f', '\U00016f92'), ('\U0001d167', '\U0001d169'),
|
||||
('\U0001d17b', '\U0001d182'), ('\U0001d185', '\U0001d18b'),
|
||||
('\U0001d1aa', '\U0001d1ad'), ('\U0001d242', '\U0001d244'),
|
||||
('\U000e0100', '\U000e01ef')
|
||||
];
|
||||
|
||||
pub fn Mn(c: char) -> bool {
|
||||
bsearch_range_table(c, Mn_table)
|
||||
super::bsearch_range_table(c, Cc_table)
|
||||
}
|
||||
|
||||
static Nd_table : &'static [(char,char)] = &[
|
||||
@@ -1023,7 +60,7 @@ pub fn Mn(c: char) -> bool {
|
||||
];
|
||||
|
||||
pub fn Nd(c: char) -> bool {
|
||||
bsearch_range_table(c, Nd_table)
|
||||
super::bsearch_range_table(c, Nd_table)
|
||||
}
|
||||
|
||||
static Nl_table : &'static [(char,char)] = &[
|
||||
@@ -1036,7 +73,7 @@ pub fn Nd(c: char) -> bool {
|
||||
];
|
||||
|
||||
pub fn Nl(c: char) -> bool {
|
||||
bsearch_range_table(c, Nl_table)
|
||||
super::bsearch_range_table(c, Nl_table)
|
||||
}
|
||||
|
||||
static No_table : &'static [(char,char)] = &[
|
||||
@@ -1064,384 +101,7 @@ pub fn Nl(c: char) -> bool {
|
||||
];
|
||||
|
||||
pub fn No(c: char) -> bool {
|
||||
bsearch_range_table(c, No_table)
|
||||
}
|
||||
|
||||
static Pc_table : &'static [(char,char)] = &[
|
||||
('\x5f', '\x5f'), ('\u203f', '\u2040'),
|
||||
('\u2054', '\u2054'), ('\ufe33', '\ufe34'),
|
||||
('\ufe4d', '\ufe4f'), ('\uff3f', '\uff3f')
|
||||
];
|
||||
|
||||
pub fn Pc(c: char) -> bool {
|
||||
bsearch_range_table(c, Pc_table)
|
||||
}
|
||||
|
||||
static Pd_table : &'static [(char,char)] = &[
|
||||
('\x2d', '\x2d'), ('\u058a', '\u058a'),
|
||||
('\u05be', '\u05be'), ('\u1400', '\u1400'),
|
||||
('\u1806', '\u1806'), ('\u2010', '\u2015'),
|
||||
('\u2e17', '\u2e17'), ('\u2e1a', '\u2e1a'),
|
||||
('\u2e3a', '\u2e3b'), ('\u301c', '\u301c'),
|
||||
('\u3030', '\u3030'), ('\u30a0', '\u30a0'),
|
||||
('\ufe31', '\ufe32'), ('\ufe58', '\ufe58'),
|
||||
('\ufe63', '\ufe63'), ('\uff0d', '\uff0d')
|
||||
];
|
||||
|
||||
pub fn Pd(c: char) -> bool {
|
||||
bsearch_range_table(c, Pd_table)
|
||||
}
|
||||
|
||||
static Pe_table : &'static [(char,char)] = &[
|
||||
('\x29', '\x29'), ('\x5d', '\x5d'),
|
||||
('\x7d', '\x7d'), ('\u0f3b', '\u0f3b'),
|
||||
('\u0f3d', '\u0f3d'), ('\u169c', '\u169c'),
|
||||
('\u2046', '\u2046'), ('\u207e', '\u207e'),
|
||||
('\u208e', '\u208e'), ('\u2309', '\u2309'),
|
||||
('\u230b', '\u230b'), ('\u232a', '\u232a'),
|
||||
('\u2769', '\u2769'), ('\u276b', '\u276b'),
|
||||
('\u276d', '\u276d'), ('\u276f', '\u276f'),
|
||||
('\u2771', '\u2771'), ('\u2773', '\u2773'),
|
||||
('\u2775', '\u2775'), ('\u27c6', '\u27c6'),
|
||||
('\u27e7', '\u27e7'), ('\u27e9', '\u27e9'),
|
||||
('\u27eb', '\u27eb'), ('\u27ed', '\u27ed'),
|
||||
('\u27ef', '\u27ef'), ('\u2984', '\u2984'),
|
||||
('\u2986', '\u2986'), ('\u2988', '\u2988'),
|
||||
('\u298a', '\u298a'), ('\u298c', '\u298c'),
|
||||
('\u298e', '\u298e'), ('\u2990', '\u2990'),
|
||||
('\u2992', '\u2992'), ('\u2994', '\u2994'),
|
||||
('\u2996', '\u2996'), ('\u2998', '\u2998'),
|
||||
('\u29d9', '\u29d9'), ('\u29db', '\u29db'),
|
||||
('\u29fd', '\u29fd'), ('\u2e23', '\u2e23'),
|
||||
('\u2e25', '\u2e25'), ('\u2e27', '\u2e27'),
|
||||
('\u2e29', '\u2e29'), ('\u3009', '\u3009'),
|
||||
('\u300b', '\u300b'), ('\u300d', '\u300d'),
|
||||
('\u300f', '\u300f'), ('\u3011', '\u3011'),
|
||||
('\u3015', '\u3015'), ('\u3017', '\u3017'),
|
||||
('\u3019', '\u3019'), ('\u301b', '\u301b'),
|
||||
('\u301e', '\u301f'), ('\ufd3f', '\ufd3f'),
|
||||
('\ufe18', '\ufe18'), ('\ufe36', '\ufe36'),
|
||||
('\ufe38', '\ufe38'), ('\ufe3a', '\ufe3a'),
|
||||
('\ufe3c', '\ufe3c'), ('\ufe3e', '\ufe3e'),
|
||||
('\ufe40', '\ufe40'), ('\ufe42', '\ufe42'),
|
||||
('\ufe44', '\ufe44'), ('\ufe48', '\ufe48'),
|
||||
('\ufe5a', '\ufe5a'), ('\ufe5c', '\ufe5c'),
|
||||
('\ufe5e', '\ufe5e'), ('\uff09', '\uff09'),
|
||||
('\uff3d', '\uff3d'), ('\uff5d', '\uff5d'),
|
||||
('\uff60', '\uff60'), ('\uff63', '\uff63')
|
||||
];
|
||||
|
||||
pub fn Pe(c: char) -> bool {
|
||||
bsearch_range_table(c, Pe_table)
|
||||
}
|
||||
|
||||
static Pf_table : &'static [(char,char)] = &[
|
||||
('\xbb', '\xbb'), ('\u2019', '\u2019'),
|
||||
('\u201d', '\u201d'), ('\u203a', '\u203a'),
|
||||
('\u2e03', '\u2e03'), ('\u2e05', '\u2e05'),
|
||||
('\u2e0a', '\u2e0a'), ('\u2e0d', '\u2e0d'),
|
||||
('\u2e1d', '\u2e1d'), ('\u2e21', '\u2e21')
|
||||
];
|
||||
|
||||
pub fn Pf(c: char) -> bool {
|
||||
bsearch_range_table(c, Pf_table)
|
||||
}
|
||||
|
||||
static Pi_table : &'static [(char,char)] = &[
|
||||
('\xab', '\xab'), ('\u2018', '\u2018'),
|
||||
('\u201b', '\u201c'), ('\u201f', '\u201f'),
|
||||
('\u2039', '\u2039'), ('\u2e02', '\u2e02'),
|
||||
('\u2e04', '\u2e04'), ('\u2e09', '\u2e09'),
|
||||
('\u2e0c', '\u2e0c'), ('\u2e1c', '\u2e1c'),
|
||||
('\u2e20', '\u2e20')
|
||||
];
|
||||
|
||||
pub fn Pi(c: char) -> bool {
|
||||
bsearch_range_table(c, Pi_table)
|
||||
}
|
||||
|
||||
static Po_table : &'static [(char,char)] = &[
|
||||
('\x21', '\x23'), ('\x25', '\x27'),
|
||||
('\x2a', '\x2a'), ('\x2c', '\x2c'),
|
||||
('\x2e', '\x2f'), ('\x3a', '\x3b'),
|
||||
('\x3f', '\x40'), ('\x5c', '\x5c'),
|
||||
('\xa1', '\xa1'), ('\xa7', '\xa7'),
|
||||
('\xb6', '\xb7'), ('\xbf', '\xbf'),
|
||||
('\u037e', '\u037e'), ('\u0387', '\u0387'),
|
||||
('\u055a', '\u055f'), ('\u0589', '\u0589'),
|
||||
('\u05c0', '\u05c0'), ('\u05c3', '\u05c3'),
|
||||
('\u05c6', '\u05c6'), ('\u05f3', '\u05f4'),
|
||||
('\u0609', '\u060a'), ('\u060c', '\u060d'),
|
||||
('\u061b', '\u061b'), ('\u061e', '\u061f'),
|
||||
('\u066a', '\u066d'), ('\u06d4', '\u06d4'),
|
||||
('\u0700', '\u070d'), ('\u07f7', '\u07f9'),
|
||||
('\u0830', '\u083e'), ('\u085e', '\u085e'),
|
||||
('\u0964', '\u0965'), ('\u0970', '\u0970'),
|
||||
('\u0af0', '\u0af0'), ('\u0df4', '\u0df4'),
|
||||
('\u0e4f', '\u0e4f'), ('\u0e5a', '\u0e5b'),
|
||||
('\u0f04', '\u0f12'), ('\u0f14', '\u0f14'),
|
||||
('\u0f85', '\u0f85'), ('\u0fd0', '\u0fd4'),
|
||||
('\u0fd9', '\u0fda'), ('\u104a', '\u104f'),
|
||||
('\u10fb', '\u10fb'), ('\u1360', '\u1368'),
|
||||
('\u166d', '\u166e'), ('\u16eb', '\u16ed'),
|
||||
('\u1735', '\u1736'), ('\u17d4', '\u17d6'),
|
||||
('\u17d8', '\u17da'), ('\u1800', '\u1805'),
|
||||
('\u1807', '\u180a'), ('\u1944', '\u1945'),
|
||||
('\u1a1e', '\u1a1f'), ('\u1aa0', '\u1aa6'),
|
||||
('\u1aa8', '\u1aad'), ('\u1b5a', '\u1b60'),
|
||||
('\u1bfc', '\u1bff'), ('\u1c3b', '\u1c3f'),
|
||||
('\u1c7e', '\u1cc7'), ('\u1cd3', '\u1cd3'),
|
||||
('\u2016', '\u2017'), ('\u2020', '\u2027'),
|
||||
('\u2030', '\u2038'), ('\u203b', '\u203e'),
|
||||
('\u2041', '\u2043'), ('\u2047', '\u2051'),
|
||||
('\u2053', '\u2053'), ('\u2055', '\u205e'),
|
||||
('\u2cf9', '\u2cfc'), ('\u2cfe', '\u2cff'),
|
||||
('\u2d70', '\u2d70'), ('\u2e00', '\u2e01'),
|
||||
('\u2e06', '\u2e08'), ('\u2e0b', '\u2e0b'),
|
||||
('\u2e0e', '\u2e16'), ('\u2e18', '\u2e19'),
|
||||
('\u2e1b', '\u2e1b'), ('\u2e1e', '\u2e1f'),
|
||||
('\u2e2a', '\u2e2e'), ('\u2e30', '\u2e39'),
|
||||
('\u3001', '\u3003'), ('\u303d', '\u303d'),
|
||||
('\u30fb', '\u30fb'), ('\ua4fe', '\ua4ff'),
|
||||
('\ua60d', '\ua60f'), ('\ua673', '\ua673'),
|
||||
('\ua67e', '\ua67e'), ('\ua6f2', '\ua6f7'),
|
||||
('\ua874', '\ua877'), ('\ua8ce', '\ua8cf'),
|
||||
('\ua8f8', '\ua8fa'), ('\ua92e', '\ua92f'),
|
||||
('\ua95f', '\ua95f'), ('\ua9c1', '\ua9cd'),
|
||||
('\ua9de', '\ua9df'), ('\uaa5c', '\uaa5f'),
|
||||
('\uaade', '\uaadf'), ('\uaaf0', '\uaaf1'),
|
||||
('\uabeb', '\uabeb'), ('\ufe10', '\ufe16'),
|
||||
('\ufe19', '\ufe19'), ('\ufe30', '\ufe30'),
|
||||
('\ufe45', '\ufe46'), ('\ufe49', '\ufe4c'),
|
||||
('\ufe50', '\ufe57'), ('\ufe5f', '\ufe61'),
|
||||
('\ufe68', '\ufe68'), ('\ufe6a', '\ufe6b'),
|
||||
('\uff01', '\uff03'), ('\uff05', '\uff07'),
|
||||
('\uff0a', '\uff0a'), ('\uff0c', '\uff0c'),
|
||||
('\uff0e', '\uff0f'), ('\uff1a', '\uff1b'),
|
||||
('\uff1f', '\uff20'), ('\uff3c', '\uff3c'),
|
||||
('\uff61', '\uff61'), ('\uff64', '\uff65'),
|
||||
('\U00010100', '\U00010102'), ('\U0001039f', '\U0001039f'),
|
||||
('\U000103d0', '\U000103d0'), ('\U00010857', '\U00010857'),
|
||||
('\U0001091f', '\U0001091f'), ('\U0001093f', '\U0001093f'),
|
||||
('\U00010a50', '\U00010a58'), ('\U00010a7f', '\U00010a7f'),
|
||||
('\U00010b39', '\U00010b3f'), ('\U00011047', '\U0001104d'),
|
||||
('\U000110bb', '\U000110bc'), ('\U000110be', '\U000110c1'),
|
||||
('\U00011140', '\U00011143'), ('\U000111c5', '\U000111c8'),
|
||||
('\U00012470', '\U00012473')
|
||||
];
|
||||
|
||||
pub fn Po(c: char) -> bool {
|
||||
bsearch_range_table(c, Po_table)
|
||||
}
|
||||
|
||||
static Ps_table : &'static [(char,char)] = &[
|
||||
('\x28', '\x28'), ('\x5b', '\x5b'),
|
||||
('\x7b', '\x7b'), ('\u0f3a', '\u0f3a'),
|
||||
('\u0f3c', '\u0f3c'), ('\u169b', '\u169b'),
|
||||
('\u201a', '\u201a'), ('\u201e', '\u201e'),
|
||||
('\u2045', '\u2045'), ('\u207d', '\u207d'),
|
||||
('\u208d', '\u208d'), ('\u2308', '\u2308'),
|
||||
('\u230a', '\u230a'), ('\u2329', '\u2329'),
|
||||
('\u2768', '\u2768'), ('\u276a', '\u276a'),
|
||||
('\u276c', '\u276c'), ('\u276e', '\u276e'),
|
||||
('\u2770', '\u2770'), ('\u2772', '\u2772'),
|
||||
('\u2774', '\u2774'), ('\u27c5', '\u27c5'),
|
||||
('\u27e6', '\u27e6'), ('\u27e8', '\u27e8'),
|
||||
('\u27ea', '\u27ea'), ('\u27ec', '\u27ec'),
|
||||
('\u27ee', '\u27ee'), ('\u2983', '\u2983'),
|
||||
('\u2985', '\u2985'), ('\u2987', '\u2987'),
|
||||
('\u2989', '\u2989'), ('\u298b', '\u298b'),
|
||||
('\u298d', '\u298d'), ('\u298f', '\u298f'),
|
||||
('\u2991', '\u2991'), ('\u2993', '\u2993'),
|
||||
('\u2995', '\u2995'), ('\u2997', '\u2997'),
|
||||
('\u29d8', '\u29d8'), ('\u29da', '\u29da'),
|
||||
('\u29fc', '\u29fc'), ('\u2e22', '\u2e22'),
|
||||
('\u2e24', '\u2e24'), ('\u2e26', '\u2e26'),
|
||||
('\u2e28', '\u2e28'), ('\u3008', '\u3008'),
|
||||
('\u300a', '\u300a'), ('\u300c', '\u300c'),
|
||||
('\u300e', '\u300e'), ('\u3010', '\u3010'),
|
||||
('\u3014', '\u3014'), ('\u3016', '\u3016'),
|
||||
('\u3018', '\u3018'), ('\u301a', '\u301a'),
|
||||
('\u301d', '\u301d'), ('\ufd3e', '\ufd3e'),
|
||||
('\ufe17', '\ufe17'), ('\ufe35', '\ufe35'),
|
||||
('\ufe37', '\ufe37'), ('\ufe39', '\ufe39'),
|
||||
('\ufe3b', '\ufe3b'), ('\ufe3d', '\ufe3d'),
|
||||
('\ufe3f', '\ufe3f'), ('\ufe41', '\ufe41'),
|
||||
('\ufe43', '\ufe43'), ('\ufe47', '\ufe47'),
|
||||
('\ufe59', '\ufe59'), ('\ufe5b', '\ufe5b'),
|
||||
('\ufe5d', '\ufe5d'), ('\uff08', '\uff08'),
|
||||
('\uff3b', '\uff3b'), ('\uff5b', '\uff5b'),
|
||||
('\uff5f', '\uff5f'), ('\uff62', '\uff62')
|
||||
];
|
||||
|
||||
pub fn Ps(c: char) -> bool {
|
||||
bsearch_range_table(c, Ps_table)
|
||||
}
|
||||
|
||||
static Sc_table : &'static [(char,char)] = &[
|
||||
('\x24', '\x24'), ('\xa2', '\xa5'),
|
||||
('\u058f', '\u058f'), ('\u060b', '\u060b'),
|
||||
('\u09f2', '\u09f3'), ('\u09fb', '\u09fb'),
|
||||
('\u0af1', '\u0af1'), ('\u0bf9', '\u0bf9'),
|
||||
('\u0e3f', '\u0e3f'), ('\u17db', '\u17db'),
|
||||
('\u20a0', '\u20ba'), ('\ua838', '\ua838'),
|
||||
('\ufdfc', '\ufdfc'), ('\ufe69', '\ufe69'),
|
||||
('\uff04', '\uff04'), ('\uffe0', '\uffe1'),
|
||||
('\uffe5', '\uffe6')
|
||||
];
|
||||
|
||||
pub fn Sc(c: char) -> bool {
|
||||
bsearch_range_table(c, Sc_table)
|
||||
}
|
||||
|
||||
static Sk_table : &'static [(char,char)] = &[
|
||||
('\x5e', '\x5e'), ('\x60', '\x60'),
|
||||
('\xa8', '\xa8'), ('\xaf', '\xaf'),
|
||||
('\xb4', '\xb4'), ('\xb8', '\xb8'),
|
||||
('\u02c2', '\u02c5'), ('\u02d2', '\u02df'),
|
||||
('\u02e5', '\u02eb'), ('\u02ed', '\u02ed'),
|
||||
('\u02ef', '\u02ff'), ('\u0375', '\u0375'),
|
||||
('\u0384', '\u0385'), ('\u1fbd', '\u1fbd'),
|
||||
('\u1fbf', '\u1fc1'), ('\u1fcd', '\u1fcf'),
|
||||
('\u1fdd', '\u1fdf'), ('\u1fed', '\u1fef'),
|
||||
('\u1ffd', '\u1ffe'), ('\u309b', '\u309c'),
|
||||
('\ua700', '\ua716'), ('\ua720', '\ua721'),
|
||||
('\ua789', '\ua78a'), ('\ufbb2', '\ufbc1'),
|
||||
('\uff3e', '\uff3e'), ('\uff40', '\uff40'),
|
||||
('\uffe3', '\uffe3')
|
||||
];
|
||||
|
||||
pub fn Sk(c: char) -> bool {
|
||||
bsearch_range_table(c, Sk_table)
|
||||
}
|
||||
|
||||
static Sm_table : &'static [(char,char)] = &[
|
||||
('\x2b', '\x2b'), ('\x3c', '\x3e'),
|
||||
('\x7c', '\x7c'), ('\x7e', '\x7e'),
|
||||
('\xac', '\xac'), ('\xb1', '\xb1'),
|
||||
('\xd7', '\xd7'), ('\xf7', '\xf7'),
|
||||
('\u03f6', '\u03f6'), ('\u0606', '\u0608'),
|
||||
('\u2044', '\u2044'), ('\u2052', '\u2052'),
|
||||
('\u207a', '\u207c'), ('\u208a', '\u208c'),
|
||||
('\u2118', '\u2118'), ('\u2140', '\u2144'),
|
||||
('\u214b', '\u214b'), ('\u2190', '\u2194'),
|
||||
('\u219a', '\u219b'), ('\u21a0', '\u21a0'),
|
||||
('\u21a3', '\u21a3'), ('\u21a6', '\u21a6'),
|
||||
('\u21ae', '\u21ae'), ('\u21ce', '\u21cf'),
|
||||
('\u21d2', '\u21d2'), ('\u21d4', '\u21d4'),
|
||||
('\u21f4', '\u22ff'), ('\u2320', '\u2321'),
|
||||
('\u237c', '\u237c'), ('\u239b', '\u23b3'),
|
||||
('\u23dc', '\u23e1'), ('\u25b7', '\u25b7'),
|
||||
('\u25c1', '\u25c1'), ('\u25f8', '\u25ff'),
|
||||
('\u266f', '\u266f'), ('\u27c0', '\u27c4'),
|
||||
('\u27c7', '\u27e5'), ('\u27f0', '\u27ff'),
|
||||
('\u2900', '\u2982'), ('\u2999', '\u29d7'),
|
||||
('\u29dc', '\u29fb'), ('\u29fe', '\u2aff'),
|
||||
('\u2b30', '\u2b44'), ('\u2b47', '\u2b4c'),
|
||||
('\ufb29', '\ufb29'), ('\ufe62', '\ufe62'),
|
||||
('\ufe64', '\ufe66'), ('\uff0b', '\uff0b'),
|
||||
('\uff1c', '\uff1e'), ('\uff5c', '\uff5c'),
|
||||
('\uff5e', '\uff5e'), ('\uffe2', '\uffe2'),
|
||||
('\uffe9', '\uffec'), ('\U0001d6c1', '\U0001d6c1'),
|
||||
('\U0001d6db', '\U0001d6db'), ('\U0001d6fb', '\U0001d6fb'),
|
||||
('\U0001d715', '\U0001d715'), ('\U0001d735', '\U0001d735'),
|
||||
('\U0001d74f', '\U0001d74f'), ('\U0001d76f', '\U0001d76f'),
|
||||
('\U0001d789', '\U0001d789'), ('\U0001d7a9', '\U0001d7a9'),
|
||||
('\U0001d7c3', '\U0001d7c3'), ('\U0001eef0', '\U0001eef1')
|
||||
];
|
||||
|
||||
pub fn Sm(c: char) -> bool {
|
||||
bsearch_range_table(c, Sm_table)
|
||||
}
|
||||
|
||||
static So_table : &'static [(char,char)] = &[
|
||||
('\xa6', '\xa6'), ('\xa9', '\xa9'),
|
||||
('\xae', '\xae'), ('\xb0', '\xb0'),
|
||||
('\u0482', '\u0482'), ('\u060e', '\u060f'),
|
||||
('\u06de', '\u06de'), ('\u06e9', '\u06e9'),
|
||||
('\u06fd', '\u06fe'), ('\u07f6', '\u07f6'),
|
||||
('\u09fa', '\u09fa'), ('\u0b70', '\u0b70'),
|
||||
('\u0bf3', '\u0bf8'), ('\u0bfa', '\u0bfa'),
|
||||
('\u0c7f', '\u0c7f'), ('\u0d79', '\u0d79'),
|
||||
('\u0f01', '\u0f03'), ('\u0f13', '\u0f13'),
|
||||
('\u0f15', '\u0f17'), ('\u0f1a', '\u0f1f'),
|
||||
('\u0f34', '\u0f34'), ('\u0f36', '\u0f36'),
|
||||
('\u0f38', '\u0f38'), ('\u0fbe', '\u0fc5'),
|
||||
('\u0fc7', '\u0fcf'), ('\u0fd5', '\u0fd8'),
|
||||
('\u109e', '\u109f'), ('\u1390', '\u1399'),
|
||||
('\u1940', '\u1940'), ('\u19de', '\u19ff'),
|
||||
('\u1b61', '\u1b6a'), ('\u1b74', '\u1b7c'),
|
||||
('\u2100', '\u2101'), ('\u2103', '\u2106'),
|
||||
('\u2108', '\u2109'), ('\u2114', '\u2114'),
|
||||
('\u2116', '\u2117'), ('\u211e', '\u2123'),
|
||||
('\u2125', '\u2125'), ('\u2127', '\u2127'),
|
||||
('\u2129', '\u2129'), ('\u212e', '\u212e'),
|
||||
('\u213a', '\u213b'), ('\u214a', '\u214a'),
|
||||
('\u214c', '\u214d'), ('\u214f', '\u214f'),
|
||||
('\u2195', '\u2199'), ('\u219c', '\u219f'),
|
||||
('\u21a1', '\u21a2'), ('\u21a4', '\u21a5'),
|
||||
('\u21a7', '\u21ad'), ('\u21af', '\u21cd'),
|
||||
('\u21d0', '\u21d1'), ('\u21d3', '\u21d3'),
|
||||
('\u21d5', '\u21f3'), ('\u2300', '\u2307'),
|
||||
('\u230c', '\u231f'), ('\u2322', '\u2328'),
|
||||
('\u232b', '\u237b'), ('\u237d', '\u239a'),
|
||||
('\u23b4', '\u23db'), ('\u23e2', '\u244a'),
|
||||
('\u249c', '\u24e9'), ('\u2500', '\u25b6'),
|
||||
('\u25b8', '\u25c0'), ('\u25c2', '\u25f7'),
|
||||
('\u2600', '\u266e'), ('\u2670', '\u2767'),
|
||||
('\u2794', '\u27bf'), ('\u2800', '\u28ff'),
|
||||
('\u2b00', '\u2b2f'), ('\u2b45', '\u2b46'),
|
||||
('\u2b50', '\u2b59'), ('\u2ce5', '\u2cea'),
|
||||
('\u2e80', '\u2ffb'), ('\u3004', '\u3004'),
|
||||
('\u3012', '\u3013'), ('\u3020', '\u3020'),
|
||||
('\u3036', '\u3037'), ('\u303e', '\u303f'),
|
||||
('\u3190', '\u3191'), ('\u3196', '\u319f'),
|
||||
('\u31c0', '\u31e3'), ('\u3200', '\u321e'),
|
||||
('\u322a', '\u3247'), ('\u3250', '\u3250'),
|
||||
('\u3260', '\u327f'), ('\u328a', '\u32b0'),
|
||||
('\u32c0', '\u33ff'), ('\u4dc0', '\u4dff'),
|
||||
('\ua490', '\ua4c6'), ('\ua828', '\ua82b'),
|
||||
('\ua836', '\ua837'), ('\ua839', '\ua839'),
|
||||
('\uaa77', '\uaa79'), ('\ufdfd', '\ufdfd'),
|
||||
('\uffe4', '\uffe4'), ('\uffe8', '\uffe8'),
|
||||
('\uffed', '\uffee'), ('\ufffc', '\ufffd'),
|
||||
('\U00010137', '\U0001013f'), ('\U00010179', '\U00010189'),
|
||||
('\U00010190', '\U000101fc'), ('\U0001d000', '\U0001d164'),
|
||||
('\U0001d16a', '\U0001d16c'), ('\U0001d183', '\U0001d184'),
|
||||
('\U0001d18c', '\U0001d1a9'), ('\U0001d1ae', '\U0001d241'),
|
||||
('\U0001d245', '\U0001d356'), ('\U0001f000', '\U0001f0df'),
|
||||
('\U0001f110', '\U0001f773')
|
||||
];
|
||||
|
||||
pub fn So(c: char) -> bool {
|
||||
bsearch_range_table(c, So_table)
|
||||
}
|
||||
|
||||
static Zl_table : &'static [(char,char)] = &[
|
||||
('\u2028', '\u2028')
|
||||
];
|
||||
|
||||
pub fn Zl(c: char) -> bool {
|
||||
bsearch_range_table(c, Zl_table)
|
||||
}
|
||||
|
||||
static Zp_table : &'static [(char,char)] = &[
|
||||
('\u2029', '\u2029')
|
||||
];
|
||||
|
||||
pub fn Zp(c: char) -> bool {
|
||||
bsearch_range_table(c, Zp_table)
|
||||
}
|
||||
|
||||
static Zs_table : &'static [(char,char)] = &[
|
||||
('\x20', '\x20'), ('\xa0', '\xa0'),
|
||||
('\u1680', '\u1680'), ('\u2000', '\u200a'),
|
||||
('\u202f', '\u202f'), ('\u205f', '\u205f'),
|
||||
('\u3000', '\u3000')
|
||||
];
|
||||
|
||||
pub fn Zs(c: char) -> bool {
|
||||
bsearch_range_table(c, Zs_table)
|
||||
super::bsearch_range_table(c, No_table)
|
||||
}
|
||||
|
||||
}
|
||||
@@ -3663,19 +2323,6 @@ fn d(c: char, i: |char|, k: bool) {
|
||||
}
|
||||
|
||||
pub mod derived_property {
|
||||
|
||||
fn bsearch_range_table(c: char, r: &'static [(char,char)]) -> bool {
|
||||
use cmp::{Equal, Less, Greater};
|
||||
use vec::ImmutableVector;
|
||||
use option::None;
|
||||
r.bsearch(|&(lo,hi)| {
|
||||
if lo <= c && c <= hi { Equal }
|
||||
else if hi < c { Less }
|
||||
else { Greater }
|
||||
}) != None
|
||||
}
|
||||
|
||||
|
||||
static Alphabetic_table : &'static [(char,char)] = &[
|
||||
('\x41', '\x5a'), ('\x61', '\x7a'),
|
||||
('\xaa', '\xaa'), ('\xb5', '\xb5'),
|
||||
@@ -4085,7 +2732,7 @@ fn bsearch_range_table(c: char, r: &'static [(char,char)]) -> bool {
|
||||
];
|
||||
|
||||
pub fn Alphabetic(c: char) -> bool {
|
||||
bsearch_range_table(c, Alphabetic_table)
|
||||
super::bsearch_range_table(c, Alphabetic_table)
|
||||
}
|
||||
|
||||
static Lowercase_table : &'static [(char,char)] = &[
|
||||
@@ -4407,7 +3054,7 @@ pub fn Alphabetic(c: char) -> bool {
|
||||
];
|
||||
|
||||
pub fn Lowercase(c: char) -> bool {
|
||||
bsearch_range_table(c, Lowercase_table)
|
||||
super::bsearch_range_table(c, Lowercase_table)
|
||||
}
|
||||
|
||||
static Uppercase_table : &'static [(char,char)] = &[
|
||||
@@ -4719,7 +3366,7 @@ pub fn Lowercase(c: char) -> bool {
|
||||
];
|
||||
|
||||
pub fn Uppercase(c: char) -> bool {
|
||||
bsearch_range_table(c, Uppercase_table)
|
||||
super::bsearch_range_table(c, Uppercase_table)
|
||||
}
|
||||
|
||||
static XID_Continue_table : &'static [(char,char)] = &[
|
||||
@@ -5203,7 +3850,7 @@ pub fn Uppercase(c: char) -> bool {
|
||||
];
|
||||
|
||||
pub fn XID_Continue(c: char) -> bool {
|
||||
bsearch_range_table(c, XID_Continue_table)
|
||||
super::bsearch_range_table(c, XID_Continue_table)
|
||||
}
|
||||
|
||||
static XID_Start_table : &'static [(char,char)] = &[
|
||||
@@ -5487,24 +4134,11 @@ pub fn XID_Continue(c: char) -> bool {
|
||||
];
|
||||
|
||||
pub fn XID_Start(c: char) -> bool {
|
||||
bsearch_range_table(c, XID_Start_table)
|
||||
super::bsearch_range_table(c, XID_Start_table)
|
||||
}
|
||||
|
||||
}
|
||||
pub mod property {
|
||||
|
||||
fn bsearch_range_table(c: char, r: &'static [(char,char)]) -> bool {
|
||||
use cmp::{Equal, Less, Greater};
|
||||
use vec::ImmutableVector;
|
||||
use option::None;
|
||||
r.bsearch(|&(lo,hi)| {
|
||||
if lo <= c && c <= hi { Equal }
|
||||
else if hi < c { Less }
|
||||
else { Greater }
|
||||
}) != None
|
||||
}
|
||||
|
||||
|
||||
static White_Space_table : &'static [(char,char)] = &[
|
||||
('\x09', '\x0d'), ('\x20', '\x20'),
|
||||
('\x85', '\x85'), ('\xa0', '\xa0'),
|
||||
@@ -5515,7 +4149,1029 @@ fn bsearch_range_table(c: char, r: &'static [(char,char)]) -> bool {
|
||||
];
|
||||
|
||||
pub fn White_Space(c: char) -> bool {
|
||||
bsearch_range_table(c, White_Space_table)
|
||||
super::bsearch_range_table(c, White_Space_table)
|
||||
}
|
||||
|
||||
}
|
||||
pub mod conversions {
|
||||
|
||||
use cmp::{Equal, Less, Greater};
|
||||
use vec::ImmutableVector;
|
||||
use tuple::Tuple2;
|
||||
use option::{Option, Some, None};
|
||||
|
||||
pub fn to_lower(c: char) -> char {
|
||||
match bsearch_case_table(c, LuLl_table) {
|
||||
None => c,
|
||||
Some(index) => LuLl_table[index].val1()
|
||||
}
|
||||
}
|
||||
|
||||
pub fn to_upper(c: char) -> char {
|
||||
match bsearch_case_table(c, LlLu_table) {
|
||||
None => c,
|
||||
Some(index) => LlLu_table[index].val1()
|
||||
}
|
||||
}
|
||||
|
||||
fn bsearch_case_table(c: char, table: &'static [(char, char)]) -> Option<uint> {
|
||||
table.bsearch(|&(key, _)| {
|
||||
if c == key { Equal }
|
||||
else if key < c { Less }
|
||||
else { Greater }
|
||||
})
|
||||
}
|
||||
static LuLl_table : &'static [(char, char)] = &[
|
||||
('\x41', '\x61'), ('\x42', '\x62'),
|
||||
('\x43', '\x63'), ('\x44', '\x64'),
|
||||
('\x45', '\x65'), ('\x46', '\x66'),
|
||||
('\x47', '\x67'), ('\x48', '\x68'),
|
||||
('\x49', '\x69'), ('\x4a', '\x6a'),
|
||||
('\x4b', '\x6b'), ('\x4c', '\x6c'),
|
||||
('\x4d', '\x6d'), ('\x4e', '\x6e'),
|
||||
('\x4f', '\x6f'), ('\x50', '\x70'),
|
||||
('\x51', '\x71'), ('\x52', '\x72'),
|
||||
('\x53', '\x73'), ('\x54', '\x74'),
|
||||
('\x55', '\x75'), ('\x56', '\x76'),
|
||||
('\x57', '\x77'), ('\x58', '\x78'),
|
||||
('\x59', '\x79'), ('\x5a', '\x7a'),
|
||||
('\xc0', '\xe0'), ('\xc1', '\xe1'),
|
||||
('\xc2', '\xe2'), ('\xc3', '\xe3'),
|
||||
('\xc4', '\xe4'), ('\xc5', '\xe5'),
|
||||
('\xc6', '\xe6'), ('\xc7', '\xe7'),
|
||||
('\xc8', '\xe8'), ('\xc9', '\xe9'),
|
||||
('\xca', '\xea'), ('\xcb', '\xeb'),
|
||||
('\xcc', '\xec'), ('\xcd', '\xed'),
|
||||
('\xce', '\xee'), ('\xcf', '\xef'),
|
||||
('\xd0', '\xf0'), ('\xd1', '\xf1'),
|
||||
('\xd2', '\xf2'), ('\xd3', '\xf3'),
|
||||
('\xd4', '\xf4'), ('\xd5', '\xf5'),
|
||||
('\xd6', '\xf6'), ('\xd8', '\xf8'),
|
||||
('\xd9', '\xf9'), ('\xda', '\xfa'),
|
||||
('\xdb', '\xfb'), ('\xdc', '\xfc'),
|
||||
('\xdd', '\xfd'), ('\xde', '\xfe'),
|
||||
('\u0100', '\u0101'), ('\u0102', '\u0103'),
|
||||
('\u0104', '\u0105'), ('\u0106', '\u0107'),
|
||||
('\u0108', '\u0109'), ('\u010a', '\u010b'),
|
||||
('\u010c', '\u010d'), ('\u010e', '\u010f'),
|
||||
('\u0110', '\u0111'), ('\u0112', '\u0113'),
|
||||
('\u0114', '\u0115'), ('\u0116', '\u0117'),
|
||||
('\u0118', '\u0119'), ('\u011a', '\u011b'),
|
||||
('\u011c', '\u011d'), ('\u011e', '\u011f'),
|
||||
('\u0120', '\u0121'), ('\u0122', '\u0123'),
|
||||
('\u0124', '\u0125'), ('\u0126', '\u0127'),
|
||||
('\u0128', '\u0129'), ('\u012a', '\u012b'),
|
||||
('\u012c', '\u012d'), ('\u012e', '\u012f'),
|
||||
('\u0130', '\x69'), ('\u0132', '\u0133'),
|
||||
('\u0134', '\u0135'), ('\u0136', '\u0137'),
|
||||
('\u0139', '\u013a'), ('\u013b', '\u013c'),
|
||||
('\u013d', '\u013e'), ('\u013f', '\u0140'),
|
||||
('\u0141', '\u0142'), ('\u0143', '\u0144'),
|
||||
('\u0145', '\u0146'), ('\u0147', '\u0148'),
|
||||
('\u014a', '\u014b'), ('\u014c', '\u014d'),
|
||||
('\u014e', '\u014f'), ('\u0150', '\u0151'),
|
||||
('\u0152', '\u0153'), ('\u0154', '\u0155'),
|
||||
('\u0156', '\u0157'), ('\u0158', '\u0159'),
|
||||
('\u015a', '\u015b'), ('\u015c', '\u015d'),
|
||||
('\u015e', '\u015f'), ('\u0160', '\u0161'),
|
||||
('\u0162', '\u0163'), ('\u0164', '\u0165'),
|
||||
('\u0166', '\u0167'), ('\u0168', '\u0169'),
|
||||
('\u016a', '\u016b'), ('\u016c', '\u016d'),
|
||||
('\u016e', '\u016f'), ('\u0170', '\u0171'),
|
||||
('\u0172', '\u0173'), ('\u0174', '\u0175'),
|
||||
('\u0176', '\u0177'), ('\u0178', '\xff'),
|
||||
('\u0179', '\u017a'), ('\u017b', '\u017c'),
|
||||
('\u017d', '\u017e'), ('\u0181', '\u0253'),
|
||||
('\u0182', '\u0183'), ('\u0184', '\u0185'),
|
||||
('\u0186', '\u0254'), ('\u0187', '\u0188'),
|
||||
('\u0189', '\u0256'), ('\u018a', '\u0257'),
|
||||
('\u018b', '\u018c'), ('\u018e', '\u01dd'),
|
||||
('\u018f', '\u0259'), ('\u0190', '\u025b'),
|
||||
('\u0191', '\u0192'), ('\u0193', '\u0260'),
|
||||
('\u0194', '\u0263'), ('\u0196', '\u0269'),
|
||||
('\u0197', '\u0268'), ('\u0198', '\u0199'),
|
||||
('\u019c', '\u026f'), ('\u019d', '\u0272'),
|
||||
('\u019f', '\u0275'), ('\u01a0', '\u01a1'),
|
||||
('\u01a2', '\u01a3'), ('\u01a4', '\u01a5'),
|
||||
('\u01a6', '\u0280'), ('\u01a7', '\u01a8'),
|
||||
('\u01a9', '\u0283'), ('\u01ac', '\u01ad'),
|
||||
('\u01ae', '\u0288'), ('\u01af', '\u01b0'),
|
||||
('\u01b1', '\u028a'), ('\u01b2', '\u028b'),
|
||||
('\u01b3', '\u01b4'), ('\u01b5', '\u01b6'),
|
||||
('\u01b7', '\u0292'), ('\u01b8', '\u01b9'),
|
||||
('\u01bc', '\u01bd'), ('\u01c4', '\u01c6'),
|
||||
('\u01c7', '\u01c9'), ('\u01ca', '\u01cc'),
|
||||
('\u01cd', '\u01ce'), ('\u01cf', '\u01d0'),
|
||||
('\u01d1', '\u01d2'), ('\u01d3', '\u01d4'),
|
||||
('\u01d5', '\u01d6'), ('\u01d7', '\u01d8'),
|
||||
('\u01d9', '\u01da'), ('\u01db', '\u01dc'),
|
||||
('\u01de', '\u01df'), ('\u01e0', '\u01e1'),
|
||||
('\u01e2', '\u01e3'), ('\u01e4', '\u01e5'),
|
||||
('\u01e6', '\u01e7'), ('\u01e8', '\u01e9'),
|
||||
('\u01ea', '\u01eb'), ('\u01ec', '\u01ed'),
|
||||
('\u01ee', '\u01ef'), ('\u01f1', '\u01f3'),
|
||||
('\u01f4', '\u01f5'), ('\u01f6', '\u0195'),
|
||||
('\u01f7', '\u01bf'), ('\u01f8', '\u01f9'),
|
||||
('\u01fa', '\u01fb'), ('\u01fc', '\u01fd'),
|
||||
('\u01fe', '\u01ff'), ('\u0200', '\u0201'),
|
||||
('\u0202', '\u0203'), ('\u0204', '\u0205'),
|
||||
('\u0206', '\u0207'), ('\u0208', '\u0209'),
|
||||
('\u020a', '\u020b'), ('\u020c', '\u020d'),
|
||||
('\u020e', '\u020f'), ('\u0210', '\u0211'),
|
||||
('\u0212', '\u0213'), ('\u0214', '\u0215'),
|
||||
('\u0216', '\u0217'), ('\u0218', '\u0219'),
|
||||
('\u021a', '\u021b'), ('\u021c', '\u021d'),
|
||||
('\u021e', '\u021f'), ('\u0220', '\u019e'),
|
||||
('\u0222', '\u0223'), ('\u0224', '\u0225'),
|
||||
('\u0226', '\u0227'), ('\u0228', '\u0229'),
|
||||
('\u022a', '\u022b'), ('\u022c', '\u022d'),
|
||||
('\u022e', '\u022f'), ('\u0230', '\u0231'),
|
||||
('\u0232', '\u0233'), ('\u023a', '\u2c65'),
|
||||
('\u023b', '\u023c'), ('\u023d', '\u019a'),
|
||||
('\u023e', '\u2c66'), ('\u0241', '\u0242'),
|
||||
('\u0243', '\u0180'), ('\u0244', '\u0289'),
|
||||
('\u0245', '\u028c'), ('\u0246', '\u0247'),
|
||||
('\u0248', '\u0249'), ('\u024a', '\u024b'),
|
||||
('\u024c', '\u024d'), ('\u024e', '\u024f'),
|
||||
('\u0370', '\u0371'), ('\u0372', '\u0373'),
|
||||
('\u0376', '\u0377'), ('\u0386', '\u03ac'),
|
||||
('\u0388', '\u03ad'), ('\u0389', '\u03ae'),
|
||||
('\u038a', '\u03af'), ('\u038c', '\u03cc'),
|
||||
('\u038e', '\u03cd'), ('\u038f', '\u03ce'),
|
||||
('\u0391', '\u03b1'), ('\u0392', '\u03b2'),
|
||||
('\u0393', '\u03b3'), ('\u0394', '\u03b4'),
|
||||
('\u0395', '\u03b5'), ('\u0396', '\u03b6'),
|
||||
('\u0397', '\u03b7'), ('\u0398', '\u03b8'),
|
||||
('\u0399', '\u03b9'), ('\u039a', '\u03ba'),
|
||||
('\u039b', '\u03bb'), ('\u039c', '\u03bc'),
|
||||
('\u039d', '\u03bd'), ('\u039e', '\u03be'),
|
||||
('\u039f', '\u03bf'), ('\u03a0', '\u03c0'),
|
||||
('\u03a1', '\u03c1'), ('\u03a3', '\u03c3'),
|
||||
('\u03a4', '\u03c4'), ('\u03a5', '\u03c5'),
|
||||
('\u03a6', '\u03c6'), ('\u03a7', '\u03c7'),
|
||||
('\u03a8', '\u03c8'), ('\u03a9', '\u03c9'),
|
||||
('\u03aa', '\u03ca'), ('\u03ab', '\u03cb'),
|
||||
('\u03cf', '\u03d7'), ('\u03d8', '\u03d9'),
|
||||
('\u03da', '\u03db'), ('\u03dc', '\u03dd'),
|
||||
('\u03de', '\u03df'), ('\u03e0', '\u03e1'),
|
||||
('\u03e2', '\u03e3'), ('\u03e4', '\u03e5'),
|
||||
('\u03e6', '\u03e7'), ('\u03e8', '\u03e9'),
|
||||
('\u03ea', '\u03eb'), ('\u03ec', '\u03ed'),
|
||||
('\u03ee', '\u03ef'), ('\u03f4', '\u03b8'),
|
||||
('\u03f7', '\u03f8'), ('\u03f9', '\u03f2'),
|
||||
('\u03fa', '\u03fb'), ('\u03fd', '\u037b'),
|
||||
('\u03fe', '\u037c'), ('\u03ff', '\u037d'),
|
||||
('\u0400', '\u0450'), ('\u0401', '\u0451'),
|
||||
('\u0402', '\u0452'), ('\u0403', '\u0453'),
|
||||
('\u0404', '\u0454'), ('\u0405', '\u0455'),
|
||||
('\u0406', '\u0456'), ('\u0407', '\u0457'),
|
||||
('\u0408', '\u0458'), ('\u0409', '\u0459'),
|
||||
('\u040a', '\u045a'), ('\u040b', '\u045b'),
|
||||
('\u040c', '\u045c'), ('\u040d', '\u045d'),
|
||||
('\u040e', '\u045e'), ('\u040f', '\u045f'),
|
||||
('\u0410', '\u0430'), ('\u0411', '\u0431'),
|
||||
('\u0412', '\u0432'), ('\u0413', '\u0433'),
|
||||
('\u0414', '\u0434'), ('\u0415', '\u0435'),
|
||||
('\u0416', '\u0436'), ('\u0417', '\u0437'),
|
||||
('\u0418', '\u0438'), ('\u0419', '\u0439'),
|
||||
('\u041a', '\u043a'), ('\u041b', '\u043b'),
|
||||
('\u041c', '\u043c'), ('\u041d', '\u043d'),
|
||||
('\u041e', '\u043e'), ('\u041f', '\u043f'),
|
||||
('\u0420', '\u0440'), ('\u0421', '\u0441'),
|
||||
('\u0422', '\u0442'), ('\u0423', '\u0443'),
|
||||
('\u0424', '\u0444'), ('\u0425', '\u0445'),
|
||||
('\u0426', '\u0446'), ('\u0427', '\u0447'),
|
||||
('\u0428', '\u0448'), ('\u0429', '\u0449'),
|
||||
('\u042a', '\u044a'), ('\u042b', '\u044b'),
|
||||
('\u042c', '\u044c'), ('\u042d', '\u044d'),
|
||||
('\u042e', '\u044e'), ('\u042f', '\u044f'),
|
||||
('\u0460', '\u0461'), ('\u0462', '\u0463'),
|
||||
('\u0464', '\u0465'), ('\u0466', '\u0467'),
|
||||
('\u0468', '\u0469'), ('\u046a', '\u046b'),
|
||||
('\u046c', '\u046d'), ('\u046e', '\u046f'),
|
||||
('\u0470', '\u0471'), ('\u0472', '\u0473'),
|
||||
('\u0474', '\u0475'), ('\u0476', '\u0477'),
|
||||
('\u0478', '\u0479'), ('\u047a', '\u047b'),
|
||||
('\u047c', '\u047d'), ('\u047e', '\u047f'),
|
||||
('\u0480', '\u0481'), ('\u048a', '\u048b'),
|
||||
('\u048c', '\u048d'), ('\u048e', '\u048f'),
|
||||
('\u0490', '\u0491'), ('\u0492', '\u0493'),
|
||||
('\u0494', '\u0495'), ('\u0496', '\u0497'),
|
||||
('\u0498', '\u0499'), ('\u049a', '\u049b'),
|
||||
('\u049c', '\u049d'), ('\u049e', '\u049f'),
|
||||
('\u04a0', '\u04a1'), ('\u04a2', '\u04a3'),
|
||||
('\u04a4', '\u04a5'), ('\u04a6', '\u04a7'),
|
||||
('\u04a8', '\u04a9'), ('\u04aa', '\u04ab'),
|
||||
('\u04ac', '\u04ad'), ('\u04ae', '\u04af'),
|
||||
('\u04b0', '\u04b1'), ('\u04b2', '\u04b3'),
|
||||
('\u04b4', '\u04b5'), ('\u04b6', '\u04b7'),
|
||||
('\u04b8', '\u04b9'), ('\u04ba', '\u04bb'),
|
||||
('\u04bc', '\u04bd'), ('\u04be', '\u04bf'),
|
||||
('\u04c0', '\u04cf'), ('\u04c1', '\u04c2'),
|
||||
('\u04c3', '\u04c4'), ('\u04c5', '\u04c6'),
|
||||
('\u04c7', '\u04c8'), ('\u04c9', '\u04ca'),
|
||||
('\u04cb', '\u04cc'), ('\u04cd', '\u04ce'),
|
||||
('\u04d0', '\u04d1'), ('\u04d2', '\u04d3'),
|
||||
('\u04d4', '\u04d5'), ('\u04d6', '\u04d7'),
|
||||
('\u04d8', '\u04d9'), ('\u04da', '\u04db'),
|
||||
('\u04dc', '\u04dd'), ('\u04de', '\u04df'),
|
||||
('\u04e0', '\u04e1'), ('\u04e2', '\u04e3'),
|
||||
('\u04e4', '\u04e5'), ('\u04e6', '\u04e7'),
|
||||
('\u04e8', '\u04e9'), ('\u04ea', '\u04eb'),
|
||||
('\u04ec', '\u04ed'), ('\u04ee', '\u04ef'),
|
||||
('\u04f0', '\u04f1'), ('\u04f2', '\u04f3'),
|
||||
('\u04f4', '\u04f5'), ('\u04f6', '\u04f7'),
|
||||
('\u04f8', '\u04f9'), ('\u04fa', '\u04fb'),
|
||||
('\u04fc', '\u04fd'), ('\u04fe', '\u04ff'),
|
||||
('\u0500', '\u0501'), ('\u0502', '\u0503'),
|
||||
('\u0504', '\u0505'), ('\u0506', '\u0507'),
|
||||
('\u0508', '\u0509'), ('\u050a', '\u050b'),
|
||||
('\u050c', '\u050d'), ('\u050e', '\u050f'),
|
||||
('\u0510', '\u0511'), ('\u0512', '\u0513'),
|
||||
('\u0514', '\u0515'), ('\u0516', '\u0517'),
|
||||
('\u0518', '\u0519'), ('\u051a', '\u051b'),
|
||||
('\u051c', '\u051d'), ('\u051e', '\u051f'),
|
||||
('\u0520', '\u0521'), ('\u0522', '\u0523'),
|
||||
('\u0524', '\u0525'), ('\u0526', '\u0527'),
|
||||
('\u0531', '\u0561'), ('\u0532', '\u0562'),
|
||||
('\u0533', '\u0563'), ('\u0534', '\u0564'),
|
||||
('\u0535', '\u0565'), ('\u0536', '\u0566'),
|
||||
('\u0537', '\u0567'), ('\u0538', '\u0568'),
|
||||
('\u0539', '\u0569'), ('\u053a', '\u056a'),
|
||||
('\u053b', '\u056b'), ('\u053c', '\u056c'),
|
||||
('\u053d', '\u056d'), ('\u053e', '\u056e'),
|
||||
('\u053f', '\u056f'), ('\u0540', '\u0570'),
|
||||
('\u0541', '\u0571'), ('\u0542', '\u0572'),
|
||||
('\u0543', '\u0573'), ('\u0544', '\u0574'),
|
||||
('\u0545', '\u0575'), ('\u0546', '\u0576'),
|
||||
('\u0547', '\u0577'), ('\u0548', '\u0578'),
|
||||
('\u0549', '\u0579'), ('\u054a', '\u057a'),
|
||||
('\u054b', '\u057b'), ('\u054c', '\u057c'),
|
||||
('\u054d', '\u057d'), ('\u054e', '\u057e'),
|
||||
('\u054f', '\u057f'), ('\u0550', '\u0580'),
|
||||
('\u0551', '\u0581'), ('\u0552', '\u0582'),
|
||||
('\u0553', '\u0583'), ('\u0554', '\u0584'),
|
||||
('\u0555', '\u0585'), ('\u0556', '\u0586'),
|
||||
('\u10a0', '\u2d00'), ('\u10a1', '\u2d01'),
|
||||
('\u10a2', '\u2d02'), ('\u10a3', '\u2d03'),
|
||||
('\u10a4', '\u2d04'), ('\u10a5', '\u2d05'),
|
||||
('\u10a6', '\u2d06'), ('\u10a7', '\u2d07'),
|
||||
('\u10a8', '\u2d08'), ('\u10a9', '\u2d09'),
|
||||
('\u10aa', '\u2d0a'), ('\u10ab', '\u2d0b'),
|
||||
('\u10ac', '\u2d0c'), ('\u10ad', '\u2d0d'),
|
||||
('\u10ae', '\u2d0e'), ('\u10af', '\u2d0f'),
|
||||
('\u10b0', '\u2d10'), ('\u10b1', '\u2d11'),
|
||||
('\u10b2', '\u2d12'), ('\u10b3', '\u2d13'),
|
||||
('\u10b4', '\u2d14'), ('\u10b5', '\u2d15'),
|
||||
('\u10b6', '\u2d16'), ('\u10b7', '\u2d17'),
|
||||
('\u10b8', '\u2d18'), ('\u10b9', '\u2d19'),
|
||||
('\u10ba', '\u2d1a'), ('\u10bb', '\u2d1b'),
|
||||
('\u10bc', '\u2d1c'), ('\u10bd', '\u2d1d'),
|
||||
('\u10be', '\u2d1e'), ('\u10bf', '\u2d1f'),
|
||||
('\u10c0', '\u2d20'), ('\u10c1', '\u2d21'),
|
||||
('\u10c2', '\u2d22'), ('\u10c3', '\u2d23'),
|
||||
('\u10c4', '\u2d24'), ('\u10c5', '\u2d25'),
|
||||
('\u10c7', '\u2d27'), ('\u10cd', '\u2d2d'),
|
||||
('\u1e00', '\u1e01'), ('\u1e02', '\u1e03'),
|
||||
('\u1e04', '\u1e05'), ('\u1e06', '\u1e07'),
|
||||
('\u1e08', '\u1e09'), ('\u1e0a', '\u1e0b'),
|
||||
('\u1e0c', '\u1e0d'), ('\u1e0e', '\u1e0f'),
|
||||
('\u1e10', '\u1e11'), ('\u1e12', '\u1e13'),
|
||||
('\u1e14', '\u1e15'), ('\u1e16', '\u1e17'),
|
||||
('\u1e18', '\u1e19'), ('\u1e1a', '\u1e1b'),
|
||||
('\u1e1c', '\u1e1d'), ('\u1e1e', '\u1e1f'),
|
||||
('\u1e20', '\u1e21'), ('\u1e22', '\u1e23'),
|
||||
('\u1e24', '\u1e25'), ('\u1e26', '\u1e27'),
|
||||
('\u1e28', '\u1e29'), ('\u1e2a', '\u1e2b'),
|
||||
('\u1e2c', '\u1e2d'), ('\u1e2e', '\u1e2f'),
|
||||
('\u1e30', '\u1e31'), ('\u1e32', '\u1e33'),
|
||||
('\u1e34', '\u1e35'), ('\u1e36', '\u1e37'),
|
||||
('\u1e38', '\u1e39'), ('\u1e3a', '\u1e3b'),
|
||||
('\u1e3c', '\u1e3d'), ('\u1e3e', '\u1e3f'),
|
||||
('\u1e40', '\u1e41'), ('\u1e42', '\u1e43'),
|
||||
('\u1e44', '\u1e45'), ('\u1e46', '\u1e47'),
|
||||
('\u1e48', '\u1e49'), ('\u1e4a', '\u1e4b'),
|
||||
('\u1e4c', '\u1e4d'), ('\u1e4e', '\u1e4f'),
|
||||
('\u1e50', '\u1e51'), ('\u1e52', '\u1e53'),
|
||||
('\u1e54', '\u1e55'), ('\u1e56', '\u1e57'),
|
||||
('\u1e58', '\u1e59'), ('\u1e5a', '\u1e5b'),
|
||||
('\u1e5c', '\u1e5d'), ('\u1e5e', '\u1e5f'),
|
||||
('\u1e60', '\u1e61'), ('\u1e62', '\u1e63'),
|
||||
('\u1e64', '\u1e65'), ('\u1e66', '\u1e67'),
|
||||
('\u1e68', '\u1e69'), ('\u1e6a', '\u1e6b'),
|
||||
('\u1e6c', '\u1e6d'), ('\u1e6e', '\u1e6f'),
|
||||
('\u1e70', '\u1e71'), ('\u1e72', '\u1e73'),
|
||||
('\u1e74', '\u1e75'), ('\u1e76', '\u1e77'),
|
||||
('\u1e78', '\u1e79'), ('\u1e7a', '\u1e7b'),
|
||||
('\u1e7c', '\u1e7d'), ('\u1e7e', '\u1e7f'),
|
||||
('\u1e80', '\u1e81'), ('\u1e82', '\u1e83'),
|
||||
('\u1e84', '\u1e85'), ('\u1e86', '\u1e87'),
|
||||
('\u1e88', '\u1e89'), ('\u1e8a', '\u1e8b'),
|
||||
('\u1e8c', '\u1e8d'), ('\u1e8e', '\u1e8f'),
|
||||
('\u1e90', '\u1e91'), ('\u1e92', '\u1e93'),
|
||||
('\u1e94', '\u1e95'), ('\u1e9e', '\xdf'),
|
||||
('\u1ea0', '\u1ea1'), ('\u1ea2', '\u1ea3'),
|
||||
('\u1ea4', '\u1ea5'), ('\u1ea6', '\u1ea7'),
|
||||
('\u1ea8', '\u1ea9'), ('\u1eaa', '\u1eab'),
|
||||
('\u1eac', '\u1ead'), ('\u1eae', '\u1eaf'),
|
||||
('\u1eb0', '\u1eb1'), ('\u1eb2', '\u1eb3'),
|
||||
('\u1eb4', '\u1eb5'), ('\u1eb6', '\u1eb7'),
|
||||
('\u1eb8', '\u1eb9'), ('\u1eba', '\u1ebb'),
|
||||
('\u1ebc', '\u1ebd'), ('\u1ebe', '\u1ebf'),
|
||||
('\u1ec0', '\u1ec1'), ('\u1ec2', '\u1ec3'),
|
||||
('\u1ec4', '\u1ec5'), ('\u1ec6', '\u1ec7'),
|
||||
('\u1ec8', '\u1ec9'), ('\u1eca', '\u1ecb'),
|
||||
('\u1ecc', '\u1ecd'), ('\u1ece', '\u1ecf'),
|
||||
('\u1ed0', '\u1ed1'), ('\u1ed2', '\u1ed3'),
|
||||
('\u1ed4', '\u1ed5'), ('\u1ed6', '\u1ed7'),
|
||||
('\u1ed8', '\u1ed9'), ('\u1eda', '\u1edb'),
|
||||
('\u1edc', '\u1edd'), ('\u1ede', '\u1edf'),
|
||||
('\u1ee0', '\u1ee1'), ('\u1ee2', '\u1ee3'),
|
||||
('\u1ee4', '\u1ee5'), ('\u1ee6', '\u1ee7'),
|
||||
('\u1ee8', '\u1ee9'), ('\u1eea', '\u1eeb'),
|
||||
('\u1eec', '\u1eed'), ('\u1eee', '\u1eef'),
|
||||
('\u1ef0', '\u1ef1'), ('\u1ef2', '\u1ef3'),
|
||||
('\u1ef4', '\u1ef5'), ('\u1ef6', '\u1ef7'),
|
||||
('\u1ef8', '\u1ef9'), ('\u1efa', '\u1efb'),
|
||||
('\u1efc', '\u1efd'), ('\u1efe', '\u1eff'),
|
||||
('\u1f08', '\u1f00'), ('\u1f09', '\u1f01'),
|
||||
('\u1f0a', '\u1f02'), ('\u1f0b', '\u1f03'),
|
||||
('\u1f0c', '\u1f04'), ('\u1f0d', '\u1f05'),
|
||||
('\u1f0e', '\u1f06'), ('\u1f0f', '\u1f07'),
|
||||
('\u1f18', '\u1f10'), ('\u1f19', '\u1f11'),
|
||||
('\u1f1a', '\u1f12'), ('\u1f1b', '\u1f13'),
|
||||
('\u1f1c', '\u1f14'), ('\u1f1d', '\u1f15'),
|
||||
('\u1f28', '\u1f20'), ('\u1f29', '\u1f21'),
|
||||
('\u1f2a', '\u1f22'), ('\u1f2b', '\u1f23'),
|
||||
('\u1f2c', '\u1f24'), ('\u1f2d', '\u1f25'),
|
||||
('\u1f2e', '\u1f26'), ('\u1f2f', '\u1f27'),
|
||||
('\u1f38', '\u1f30'), ('\u1f39', '\u1f31'),
|
||||
('\u1f3a', '\u1f32'), ('\u1f3b', '\u1f33'),
|
||||
('\u1f3c', '\u1f34'), ('\u1f3d', '\u1f35'),
|
||||
('\u1f3e', '\u1f36'), ('\u1f3f', '\u1f37'),
|
||||
('\u1f48', '\u1f40'), ('\u1f49', '\u1f41'),
|
||||
('\u1f4a', '\u1f42'), ('\u1f4b', '\u1f43'),
|
||||
('\u1f4c', '\u1f44'), ('\u1f4d', '\u1f45'),
|
||||
('\u1f59', '\u1f51'), ('\u1f5b', '\u1f53'),
|
||||
('\u1f5d', '\u1f55'), ('\u1f5f', '\u1f57'),
|
||||
('\u1f68', '\u1f60'), ('\u1f69', '\u1f61'),
|
||||
('\u1f6a', '\u1f62'), ('\u1f6b', '\u1f63'),
|
||||
('\u1f6c', '\u1f64'), ('\u1f6d', '\u1f65'),
|
||||
('\u1f6e', '\u1f66'), ('\u1f6f', '\u1f67'),
|
||||
('\u1fb8', '\u1fb0'), ('\u1fb9', '\u1fb1'),
|
||||
('\u1fba', '\u1f70'), ('\u1fbb', '\u1f71'),
|
||||
('\u1fc8', '\u1f72'), ('\u1fc9', '\u1f73'),
|
||||
('\u1fca', '\u1f74'), ('\u1fcb', '\u1f75'),
|
||||
('\u1fd8', '\u1fd0'), ('\u1fd9', '\u1fd1'),
|
||||
('\u1fda', '\u1f76'), ('\u1fdb', '\u1f77'),
|
||||
('\u1fe8', '\u1fe0'), ('\u1fe9', '\u1fe1'),
|
||||
('\u1fea', '\u1f7a'), ('\u1feb', '\u1f7b'),
|
||||
('\u1fec', '\u1fe5'), ('\u1ff8', '\u1f78'),
|
||||
('\u1ff9', '\u1f79'), ('\u1ffa', '\u1f7c'),
|
||||
('\u1ffb', '\u1f7d'), ('\u2126', '\u03c9'),
|
||||
('\u212a', '\x6b'), ('\u212b', '\xe5'),
|
||||
('\u2132', '\u214e'), ('\u2183', '\u2184'),
|
||||
('\u2c00', '\u2c30'), ('\u2c01', '\u2c31'),
|
||||
('\u2c02', '\u2c32'), ('\u2c03', '\u2c33'),
|
||||
('\u2c04', '\u2c34'), ('\u2c05', '\u2c35'),
|
||||
('\u2c06', '\u2c36'), ('\u2c07', '\u2c37'),
|
||||
('\u2c08', '\u2c38'), ('\u2c09', '\u2c39'),
|
||||
('\u2c0a', '\u2c3a'), ('\u2c0b', '\u2c3b'),
|
||||
('\u2c0c', '\u2c3c'), ('\u2c0d', '\u2c3d'),
|
||||
('\u2c0e', '\u2c3e'), ('\u2c0f', '\u2c3f'),
|
||||
('\u2c10', '\u2c40'), ('\u2c11', '\u2c41'),
|
||||
('\u2c12', '\u2c42'), ('\u2c13', '\u2c43'),
|
||||
('\u2c14', '\u2c44'), ('\u2c15', '\u2c45'),
|
||||
('\u2c16', '\u2c46'), ('\u2c17', '\u2c47'),
|
||||
('\u2c18', '\u2c48'), ('\u2c19', '\u2c49'),
|
||||
('\u2c1a', '\u2c4a'), ('\u2c1b', '\u2c4b'),
|
||||
('\u2c1c', '\u2c4c'), ('\u2c1d', '\u2c4d'),
|
||||
('\u2c1e', '\u2c4e'), ('\u2c1f', '\u2c4f'),
|
||||
('\u2c20', '\u2c50'), ('\u2c21', '\u2c51'),
|
||||
('\u2c22', '\u2c52'), ('\u2c23', '\u2c53'),
|
||||
('\u2c24', '\u2c54'), ('\u2c25', '\u2c55'),
|
||||
('\u2c26', '\u2c56'), ('\u2c27', '\u2c57'),
|
||||
('\u2c28', '\u2c58'), ('\u2c29', '\u2c59'),
|
||||
('\u2c2a', '\u2c5a'), ('\u2c2b', '\u2c5b'),
|
||||
('\u2c2c', '\u2c5c'), ('\u2c2d', '\u2c5d'),
|
||||
('\u2c2e', '\u2c5e'), ('\u2c60', '\u2c61'),
|
||||
('\u2c62', '\u026b'), ('\u2c63', '\u1d7d'),
|
||||
('\u2c64', '\u027d'), ('\u2c67', '\u2c68'),
|
||||
('\u2c69', '\u2c6a'), ('\u2c6b', '\u2c6c'),
|
||||
('\u2c6d', '\u0251'), ('\u2c6e', '\u0271'),
|
||||
('\u2c6f', '\u0250'), ('\u2c70', '\u0252'),
|
||||
('\u2c72', '\u2c73'), ('\u2c75', '\u2c76'),
|
||||
('\u2c7e', '\u023f'), ('\u2c7f', '\u0240'),
|
||||
('\u2c80', '\u2c81'), ('\u2c82', '\u2c83'),
|
||||
('\u2c84', '\u2c85'), ('\u2c86', '\u2c87'),
|
||||
('\u2c88', '\u2c89'), ('\u2c8a', '\u2c8b'),
|
||||
('\u2c8c', '\u2c8d'), ('\u2c8e', '\u2c8f'),
|
||||
('\u2c90', '\u2c91'), ('\u2c92', '\u2c93'),
|
||||
('\u2c94', '\u2c95'), ('\u2c96', '\u2c97'),
|
||||
('\u2c98', '\u2c99'), ('\u2c9a', '\u2c9b'),
|
||||
('\u2c9c', '\u2c9d'), ('\u2c9e', '\u2c9f'),
|
||||
('\u2ca0', '\u2ca1'), ('\u2ca2', '\u2ca3'),
|
||||
('\u2ca4', '\u2ca5'), ('\u2ca6', '\u2ca7'),
|
||||
('\u2ca8', '\u2ca9'), ('\u2caa', '\u2cab'),
|
||||
('\u2cac', '\u2cad'), ('\u2cae', '\u2caf'),
|
||||
('\u2cb0', '\u2cb1'), ('\u2cb2', '\u2cb3'),
|
||||
('\u2cb4', '\u2cb5'), ('\u2cb6', '\u2cb7'),
|
||||
('\u2cb8', '\u2cb9'), ('\u2cba', '\u2cbb'),
|
||||
('\u2cbc', '\u2cbd'), ('\u2cbe', '\u2cbf'),
|
||||
('\u2cc0', '\u2cc1'), ('\u2cc2', '\u2cc3'),
|
||||
('\u2cc4', '\u2cc5'), ('\u2cc6', '\u2cc7'),
|
||||
('\u2cc8', '\u2cc9'), ('\u2cca', '\u2ccb'),
|
||||
('\u2ccc', '\u2ccd'), ('\u2cce', '\u2ccf'),
|
||||
('\u2cd0', '\u2cd1'), ('\u2cd2', '\u2cd3'),
|
||||
('\u2cd4', '\u2cd5'), ('\u2cd6', '\u2cd7'),
|
||||
('\u2cd8', '\u2cd9'), ('\u2cda', '\u2cdb'),
|
||||
('\u2cdc', '\u2cdd'), ('\u2cde', '\u2cdf'),
|
||||
('\u2ce0', '\u2ce1'), ('\u2ce2', '\u2ce3'),
|
||||
('\u2ceb', '\u2cec'), ('\u2ced', '\u2cee'),
|
||||
('\u2cf2', '\u2cf3'), ('\ua640', '\ua641'),
|
||||
('\ua642', '\ua643'), ('\ua644', '\ua645'),
|
||||
('\ua646', '\ua647'), ('\ua648', '\ua649'),
|
||||
('\ua64a', '\ua64b'), ('\ua64c', '\ua64d'),
|
||||
('\ua64e', '\ua64f'), ('\ua650', '\ua651'),
|
||||
('\ua652', '\ua653'), ('\ua654', '\ua655'),
|
||||
('\ua656', '\ua657'), ('\ua658', '\ua659'),
|
||||
('\ua65a', '\ua65b'), ('\ua65c', '\ua65d'),
|
||||
('\ua65e', '\ua65f'), ('\ua660', '\ua661'),
|
||||
('\ua662', '\ua663'), ('\ua664', '\ua665'),
|
||||
('\ua666', '\ua667'), ('\ua668', '\ua669'),
|
||||
('\ua66a', '\ua66b'), ('\ua66c', '\ua66d'),
|
||||
('\ua680', '\ua681'), ('\ua682', '\ua683'),
|
||||
('\ua684', '\ua685'), ('\ua686', '\ua687'),
|
||||
('\ua688', '\ua689'), ('\ua68a', '\ua68b'),
|
||||
('\ua68c', '\ua68d'), ('\ua68e', '\ua68f'),
|
||||
('\ua690', '\ua691'), ('\ua692', '\ua693'),
|
||||
('\ua694', '\ua695'), ('\ua696', '\ua697'),
|
||||
('\ua722', '\ua723'), ('\ua724', '\ua725'),
|
||||
('\ua726', '\ua727'), ('\ua728', '\ua729'),
|
||||
('\ua72a', '\ua72b'), ('\ua72c', '\ua72d'),
|
||||
('\ua72e', '\ua72f'), ('\ua732', '\ua733'),
|
||||
('\ua734', '\ua735'), ('\ua736', '\ua737'),
|
||||
('\ua738', '\ua739'), ('\ua73a', '\ua73b'),
|
||||
('\ua73c', '\ua73d'), ('\ua73e', '\ua73f'),
|
||||
('\ua740', '\ua741'), ('\ua742', '\ua743'),
|
||||
('\ua744', '\ua745'), ('\ua746', '\ua747'),
|
||||
('\ua748', '\ua749'), ('\ua74a', '\ua74b'),
|
||||
('\ua74c', '\ua74d'), ('\ua74e', '\ua74f'),
|
||||
('\ua750', '\ua751'), ('\ua752', '\ua753'),
|
||||
('\ua754', '\ua755'), ('\ua756', '\ua757'),
|
||||
('\ua758', '\ua759'), ('\ua75a', '\ua75b'),
|
||||
('\ua75c', '\ua75d'), ('\ua75e', '\ua75f'),
|
||||
('\ua760', '\ua761'), ('\ua762', '\ua763'),
|
||||
('\ua764', '\ua765'), ('\ua766', '\ua767'),
|
||||
('\ua768', '\ua769'), ('\ua76a', '\ua76b'),
|
||||
('\ua76c', '\ua76d'), ('\ua76e', '\ua76f'),
|
||||
('\ua779', '\ua77a'), ('\ua77b', '\ua77c'),
|
||||
('\ua77d', '\u1d79'), ('\ua77e', '\ua77f'),
|
||||
('\ua780', '\ua781'), ('\ua782', '\ua783'),
|
||||
('\ua784', '\ua785'), ('\ua786', '\ua787'),
|
||||
('\ua78b', '\ua78c'), ('\ua78d', '\u0265'),
|
||||
('\ua790', '\ua791'), ('\ua792', '\ua793'),
|
||||
('\ua7a0', '\ua7a1'), ('\ua7a2', '\ua7a3'),
|
||||
('\ua7a4', '\ua7a5'), ('\ua7a6', '\ua7a7'),
|
||||
('\ua7a8', '\ua7a9'), ('\ua7aa', '\u0266'),
|
||||
('\uff21', '\uff41'), ('\uff22', '\uff42'),
|
||||
('\uff23', '\uff43'), ('\uff24', '\uff44'),
|
||||
('\uff25', '\uff45'), ('\uff26', '\uff46'),
|
||||
('\uff27', '\uff47'), ('\uff28', '\uff48'),
|
||||
('\uff29', '\uff49'), ('\uff2a', '\uff4a'),
|
||||
('\uff2b', '\uff4b'), ('\uff2c', '\uff4c'),
|
||||
('\uff2d', '\uff4d'), ('\uff2e', '\uff4e'),
|
||||
('\uff2f', '\uff4f'), ('\uff30', '\uff50'),
|
||||
('\uff31', '\uff51'), ('\uff32', '\uff52'),
|
||||
('\uff33', '\uff53'), ('\uff34', '\uff54'),
|
||||
('\uff35', '\uff55'), ('\uff36', '\uff56'),
|
||||
('\uff37', '\uff57'), ('\uff38', '\uff58'),
|
||||
('\uff39', '\uff59'), ('\uff3a', '\uff5a'),
|
||||
('\U00010400', '\U00010428'), ('\U00010401', '\U00010429'),
|
||||
('\U00010402', '\U0001042a'), ('\U00010403', '\U0001042b'),
|
||||
('\U00010404', '\U0001042c'), ('\U00010405', '\U0001042d'),
|
||||
('\U00010406', '\U0001042e'), ('\U00010407', '\U0001042f'),
|
||||
('\U00010408', '\U00010430'), ('\U00010409', '\U00010431'),
|
||||
('\U0001040a', '\U00010432'), ('\U0001040b', '\U00010433'),
|
||||
('\U0001040c', '\U00010434'), ('\U0001040d', '\U00010435'),
|
||||
('\U0001040e', '\U00010436'), ('\U0001040f', '\U00010437'),
|
||||
('\U00010410', '\U00010438'), ('\U00010411', '\U00010439'),
|
||||
('\U00010412', '\U0001043a'), ('\U00010413', '\U0001043b'),
|
||||
('\U00010414', '\U0001043c'), ('\U00010415', '\U0001043d'),
|
||||
('\U00010416', '\U0001043e'), ('\U00010417', '\U0001043f'),
|
||||
('\U00010418', '\U00010440'), ('\U00010419', '\U00010441'),
|
||||
('\U0001041a', '\U00010442'), ('\U0001041b', '\U00010443'),
|
||||
('\U0001041c', '\U00010444'), ('\U0001041d', '\U00010445'),
|
||||
('\U0001041e', '\U00010446'), ('\U0001041f', '\U00010447'),
|
||||
('\U00010420', '\U00010448'), ('\U00010421', '\U00010449'),
|
||||
('\U00010422', '\U0001044a'), ('\U00010423', '\U0001044b'),
|
||||
('\U00010424', '\U0001044c'), ('\U00010425', '\U0001044d'),
|
||||
('\U00010426', '\U0001044e'), ('\U00010427', '\U0001044f')
|
||||
];
|
||||
|
||||
static LlLu_table : &'static [(char, char)] = &[
|
||||
('\x61', '\x41'), ('\x62', '\x42'),
|
||||
('\x63', '\x43'), ('\x64', '\x44'),
|
||||
('\x65', '\x45'), ('\x66', '\x46'),
|
||||
('\x67', '\x47'), ('\x68', '\x48'),
|
||||
('\x69', '\x49'), ('\x6a', '\x4a'),
|
||||
('\x6b', '\x4b'), ('\x6c', '\x4c'),
|
||||
('\x6d', '\x4d'), ('\x6e', '\x4e'),
|
||||
('\x6f', '\x4f'), ('\x70', '\x50'),
|
||||
('\x71', '\x51'), ('\x72', '\x52'),
|
||||
('\x73', '\x53'), ('\x74', '\x54'),
|
||||
('\x75', '\x55'), ('\x76', '\x56'),
|
||||
('\x77', '\x57'), ('\x78', '\x58'),
|
||||
('\x79', '\x59'), ('\x7a', '\x5a'),
|
||||
('\xb5', '\u039c'), ('\xe0', '\xc0'),
|
||||
('\xe1', '\xc1'), ('\xe2', '\xc2'),
|
||||
('\xe3', '\xc3'), ('\xe4', '\xc4'),
|
||||
('\xe5', '\xc5'), ('\xe6', '\xc6'),
|
||||
('\xe7', '\xc7'), ('\xe8', '\xc8'),
|
||||
('\xe9', '\xc9'), ('\xea', '\xca'),
|
||||
('\xeb', '\xcb'), ('\xec', '\xcc'),
|
||||
('\xed', '\xcd'), ('\xee', '\xce'),
|
||||
('\xef', '\xcf'), ('\xf0', '\xd0'),
|
||||
('\xf1', '\xd1'), ('\xf2', '\xd2'),
|
||||
('\xf3', '\xd3'), ('\xf4', '\xd4'),
|
||||
('\xf5', '\xd5'), ('\xf6', '\xd6'),
|
||||
('\xf8', '\xd8'), ('\xf9', '\xd9'),
|
||||
('\xfa', '\xda'), ('\xfb', '\xdb'),
|
||||
('\xfc', '\xdc'), ('\xfd', '\xdd'),
|
||||
('\xfe', '\xde'), ('\xff', '\u0178'),
|
||||
('\u0101', '\u0100'), ('\u0103', '\u0102'),
|
||||
('\u0105', '\u0104'), ('\u0107', '\u0106'),
|
||||
('\u0109', '\u0108'), ('\u010b', '\u010a'),
|
||||
('\u010d', '\u010c'), ('\u010f', '\u010e'),
|
||||
('\u0111', '\u0110'), ('\u0113', '\u0112'),
|
||||
('\u0115', '\u0114'), ('\u0117', '\u0116'),
|
||||
('\u0119', '\u0118'), ('\u011b', '\u011a'),
|
||||
('\u011d', '\u011c'), ('\u011f', '\u011e'),
|
||||
('\u0121', '\u0120'), ('\u0123', '\u0122'),
|
||||
('\u0125', '\u0124'), ('\u0127', '\u0126'),
|
||||
('\u0129', '\u0128'), ('\u012b', '\u012a'),
|
||||
('\u012d', '\u012c'), ('\u012f', '\u012e'),
|
||||
('\u0131', '\x49'), ('\u0133', '\u0132'),
|
||||
('\u0135', '\u0134'), ('\u0137', '\u0136'),
|
||||
('\u013a', '\u0139'), ('\u013c', '\u013b'),
|
||||
('\u013e', '\u013d'), ('\u0140', '\u013f'),
|
||||
('\u0142', '\u0141'), ('\u0144', '\u0143'),
|
||||
('\u0146', '\u0145'), ('\u0148', '\u0147'),
|
||||
('\u014b', '\u014a'), ('\u014d', '\u014c'),
|
||||
('\u014f', '\u014e'), ('\u0151', '\u0150'),
|
||||
('\u0153', '\u0152'), ('\u0155', '\u0154'),
|
||||
('\u0157', '\u0156'), ('\u0159', '\u0158'),
|
||||
('\u015b', '\u015a'), ('\u015d', '\u015c'),
|
||||
('\u015f', '\u015e'), ('\u0161', '\u0160'),
|
||||
('\u0163', '\u0162'), ('\u0165', '\u0164'),
|
||||
('\u0167', '\u0166'), ('\u0169', '\u0168'),
|
||||
('\u016b', '\u016a'), ('\u016d', '\u016c'),
|
||||
('\u016f', '\u016e'), ('\u0171', '\u0170'),
|
||||
('\u0173', '\u0172'), ('\u0175', '\u0174'),
|
||||
('\u0177', '\u0176'), ('\u017a', '\u0179'),
|
||||
('\u017c', '\u017b'), ('\u017e', '\u017d'),
|
||||
('\u017f', '\x53'), ('\u0180', '\u0243'),
|
||||
('\u0183', '\u0182'), ('\u0185', '\u0184'),
|
||||
('\u0188', '\u0187'), ('\u018c', '\u018b'),
|
||||
('\u0192', '\u0191'), ('\u0195', '\u01f6'),
|
||||
('\u0199', '\u0198'), ('\u019a', '\u023d'),
|
||||
('\u019e', '\u0220'), ('\u01a1', '\u01a0'),
|
||||
('\u01a3', '\u01a2'), ('\u01a5', '\u01a4'),
|
||||
('\u01a8', '\u01a7'), ('\u01ad', '\u01ac'),
|
||||
('\u01b0', '\u01af'), ('\u01b4', '\u01b3'),
|
||||
('\u01b6', '\u01b5'), ('\u01b9', '\u01b8'),
|
||||
('\u01bd', '\u01bc'), ('\u01bf', '\u01f7'),
|
||||
('\u01c6', '\u01c4'), ('\u01c9', '\u01c7'),
|
||||
('\u01cc', '\u01ca'), ('\u01ce', '\u01cd'),
|
||||
('\u01d0', '\u01cf'), ('\u01d2', '\u01d1'),
|
||||
('\u01d4', '\u01d3'), ('\u01d6', '\u01d5'),
|
||||
('\u01d8', '\u01d7'), ('\u01da', '\u01d9'),
|
||||
('\u01dc', '\u01db'), ('\u01dd', '\u018e'),
|
||||
('\u01df', '\u01de'), ('\u01e1', '\u01e0'),
|
||||
('\u01e3', '\u01e2'), ('\u01e5', '\u01e4'),
|
||||
('\u01e7', '\u01e6'), ('\u01e9', '\u01e8'),
|
||||
('\u01eb', '\u01ea'), ('\u01ed', '\u01ec'),
|
||||
('\u01ef', '\u01ee'), ('\u01f3', '\u01f1'),
|
||||
('\u01f5', '\u01f4'), ('\u01f9', '\u01f8'),
|
||||
('\u01fb', '\u01fa'), ('\u01fd', '\u01fc'),
|
||||
('\u01ff', '\u01fe'), ('\u0201', '\u0200'),
|
||||
('\u0203', '\u0202'), ('\u0205', '\u0204'),
|
||||
('\u0207', '\u0206'), ('\u0209', '\u0208'),
|
||||
('\u020b', '\u020a'), ('\u020d', '\u020c'),
|
||||
('\u020f', '\u020e'), ('\u0211', '\u0210'),
|
||||
('\u0213', '\u0212'), ('\u0215', '\u0214'),
|
||||
('\u0217', '\u0216'), ('\u0219', '\u0218'),
|
||||
('\u021b', '\u021a'), ('\u021d', '\u021c'),
|
||||
('\u021f', '\u021e'), ('\u0223', '\u0222'),
|
||||
('\u0225', '\u0224'), ('\u0227', '\u0226'),
|
||||
('\u0229', '\u0228'), ('\u022b', '\u022a'),
|
||||
('\u022d', '\u022c'), ('\u022f', '\u022e'),
|
||||
('\u0231', '\u0230'), ('\u0233', '\u0232'),
|
||||
('\u023c', '\u023b'), ('\u023f', '\u2c7e'),
|
||||
('\u0240', '\u2c7f'), ('\u0242', '\u0241'),
|
||||
('\u0247', '\u0246'), ('\u0249', '\u0248'),
|
||||
('\u024b', '\u024a'), ('\u024d', '\u024c'),
|
||||
('\u024f', '\u024e'), ('\u0250', '\u2c6f'),
|
||||
('\u0251', '\u2c6d'), ('\u0252', '\u2c70'),
|
||||
('\u0253', '\u0181'), ('\u0254', '\u0186'),
|
||||
('\u0256', '\u0189'), ('\u0257', '\u018a'),
|
||||
('\u0259', '\u018f'), ('\u025b', '\u0190'),
|
||||
('\u0260', '\u0193'), ('\u0263', '\u0194'),
|
||||
('\u0265', '\ua78d'), ('\u0266', '\ua7aa'),
|
||||
('\u0268', '\u0197'), ('\u0269', '\u0196'),
|
||||
('\u026b', '\u2c62'), ('\u026f', '\u019c'),
|
||||
('\u0271', '\u2c6e'), ('\u0272', '\u019d'),
|
||||
('\u0275', '\u019f'), ('\u027d', '\u2c64'),
|
||||
('\u0280', '\u01a6'), ('\u0283', '\u01a9'),
|
||||
('\u0288', '\u01ae'), ('\u0289', '\u0244'),
|
||||
('\u028a', '\u01b1'), ('\u028b', '\u01b2'),
|
||||
('\u028c', '\u0245'), ('\u0292', '\u01b7'),
|
||||
('\u0371', '\u0370'), ('\u0373', '\u0372'),
|
||||
('\u0377', '\u0376'), ('\u037b', '\u03fd'),
|
||||
('\u037c', '\u03fe'), ('\u037d', '\u03ff'),
|
||||
('\u03ac', '\u0386'), ('\u03ad', '\u0388'),
|
||||
('\u03ae', '\u0389'), ('\u03af', '\u038a'),
|
||||
('\u03b1', '\u0391'), ('\u03b2', '\u0392'),
|
||||
('\u03b3', '\u0393'), ('\u03b4', '\u0394'),
|
||||
('\u03b5', '\u0395'), ('\u03b6', '\u0396'),
|
||||
('\u03b7', '\u0397'), ('\u03b8', '\u0398'),
|
||||
('\u03b9', '\u0399'), ('\u03ba', '\u039a'),
|
||||
('\u03bb', '\u039b'), ('\u03bc', '\u039c'),
|
||||
('\u03bd', '\u039d'), ('\u03be', '\u039e'),
|
||||
('\u03bf', '\u039f'), ('\u03c0', '\u03a0'),
|
||||
('\u03c1', '\u03a1'), ('\u03c2', '\u03a3'),
|
||||
('\u03c3', '\u03a3'), ('\u03c4', '\u03a4'),
|
||||
('\u03c5', '\u03a5'), ('\u03c6', '\u03a6'),
|
||||
('\u03c7', '\u03a7'), ('\u03c8', '\u03a8'),
|
||||
('\u03c9', '\u03a9'), ('\u03ca', '\u03aa'),
|
||||
('\u03cb', '\u03ab'), ('\u03cc', '\u038c'),
|
||||
('\u03cd', '\u038e'), ('\u03ce', '\u038f'),
|
||||
('\u03d0', '\u0392'), ('\u03d1', '\u0398'),
|
||||
('\u03d5', '\u03a6'), ('\u03d6', '\u03a0'),
|
||||
('\u03d7', '\u03cf'), ('\u03d9', '\u03d8'),
|
||||
('\u03db', '\u03da'), ('\u03dd', '\u03dc'),
|
||||
('\u03df', '\u03de'), ('\u03e1', '\u03e0'),
|
||||
('\u03e3', '\u03e2'), ('\u03e5', '\u03e4'),
|
||||
('\u03e7', '\u03e6'), ('\u03e9', '\u03e8'),
|
||||
('\u03eb', '\u03ea'), ('\u03ed', '\u03ec'),
|
||||
('\u03ef', '\u03ee'), ('\u03f0', '\u039a'),
|
||||
('\u03f1', '\u03a1'), ('\u03f2', '\u03f9'),
|
||||
('\u03f5', '\u0395'), ('\u03f8', '\u03f7'),
|
||||
('\u03fb', '\u03fa'), ('\u0430', '\u0410'),
|
||||
('\u0431', '\u0411'), ('\u0432', '\u0412'),
|
||||
('\u0433', '\u0413'), ('\u0434', '\u0414'),
|
||||
('\u0435', '\u0415'), ('\u0436', '\u0416'),
|
||||
('\u0437', '\u0417'), ('\u0438', '\u0418'),
|
||||
('\u0439', '\u0419'), ('\u043a', '\u041a'),
|
||||
('\u043b', '\u041b'), ('\u043c', '\u041c'),
|
||||
('\u043d', '\u041d'), ('\u043e', '\u041e'),
|
||||
('\u043f', '\u041f'), ('\u0440', '\u0420'),
|
||||
('\u0441', '\u0421'), ('\u0442', '\u0422'),
|
||||
('\u0443', '\u0423'), ('\u0444', '\u0424'),
|
||||
('\u0445', '\u0425'), ('\u0446', '\u0426'),
|
||||
('\u0447', '\u0427'), ('\u0448', '\u0428'),
|
||||
('\u0449', '\u0429'), ('\u044a', '\u042a'),
|
||||
('\u044b', '\u042b'), ('\u044c', '\u042c'),
|
||||
('\u044d', '\u042d'), ('\u044e', '\u042e'),
|
||||
('\u044f', '\u042f'), ('\u0450', '\u0400'),
|
||||
('\u0451', '\u0401'), ('\u0452', '\u0402'),
|
||||
('\u0453', '\u0403'), ('\u0454', '\u0404'),
|
||||
('\u0455', '\u0405'), ('\u0456', '\u0406'),
|
||||
('\u0457', '\u0407'), ('\u0458', '\u0408'),
|
||||
('\u0459', '\u0409'), ('\u045a', '\u040a'),
|
||||
('\u045b', '\u040b'), ('\u045c', '\u040c'),
|
||||
('\u045d', '\u040d'), ('\u045e', '\u040e'),
|
||||
('\u045f', '\u040f'), ('\u0461', '\u0460'),
|
||||
('\u0463', '\u0462'), ('\u0465', '\u0464'),
|
||||
('\u0467', '\u0466'), ('\u0469', '\u0468'),
|
||||
('\u046b', '\u046a'), ('\u046d', '\u046c'),
|
||||
('\u046f', '\u046e'), ('\u0471', '\u0470'),
|
||||
('\u0473', '\u0472'), ('\u0475', '\u0474'),
|
||||
('\u0477', '\u0476'), ('\u0479', '\u0478'),
|
||||
('\u047b', '\u047a'), ('\u047d', '\u047c'),
|
||||
('\u047f', '\u047e'), ('\u0481', '\u0480'),
|
||||
('\u048b', '\u048a'), ('\u048d', '\u048c'),
|
||||
('\u048f', '\u048e'), ('\u0491', '\u0490'),
|
||||
('\u0493', '\u0492'), ('\u0495', '\u0494'),
|
||||
('\u0497', '\u0496'), ('\u0499', '\u0498'),
|
||||
('\u049b', '\u049a'), ('\u049d', '\u049c'),
|
||||
('\u049f', '\u049e'), ('\u04a1', '\u04a0'),
|
||||
('\u04a3', '\u04a2'), ('\u04a5', '\u04a4'),
|
||||
('\u04a7', '\u04a6'), ('\u04a9', '\u04a8'),
|
||||
('\u04ab', '\u04aa'), ('\u04ad', '\u04ac'),
|
||||
('\u04af', '\u04ae'), ('\u04b1', '\u04b0'),
|
||||
('\u04b3', '\u04b2'), ('\u04b5', '\u04b4'),
|
||||
('\u04b7', '\u04b6'), ('\u04b9', '\u04b8'),
|
||||
('\u04bb', '\u04ba'), ('\u04bd', '\u04bc'),
|
||||
('\u04bf', '\u04be'), ('\u04c2', '\u04c1'),
|
||||
('\u04c4', '\u04c3'), ('\u04c6', '\u04c5'),
|
||||
('\u04c8', '\u04c7'), ('\u04ca', '\u04c9'),
|
||||
('\u04cc', '\u04cb'), ('\u04ce', '\u04cd'),
|
||||
('\u04cf', '\u04c0'), ('\u04d1', '\u04d0'),
|
||||
('\u04d3', '\u04d2'), ('\u04d5', '\u04d4'),
|
||||
('\u04d7', '\u04d6'), ('\u04d9', '\u04d8'),
|
||||
('\u04db', '\u04da'), ('\u04dd', '\u04dc'),
|
||||
('\u04df', '\u04de'), ('\u04e1', '\u04e0'),
|
||||
('\u04e3', '\u04e2'), ('\u04e5', '\u04e4'),
|
||||
('\u04e7', '\u04e6'), ('\u04e9', '\u04e8'),
|
||||
('\u04eb', '\u04ea'), ('\u04ed', '\u04ec'),
|
||||
('\u04ef', '\u04ee'), ('\u04f1', '\u04f0'),
|
||||
('\u04f3', '\u04f2'), ('\u04f5', '\u04f4'),
|
||||
('\u04f7', '\u04f6'), ('\u04f9', '\u04f8'),
|
||||
('\u04fb', '\u04fa'), ('\u04fd', '\u04fc'),
|
||||
('\u04ff', '\u04fe'), ('\u0501', '\u0500'),
|
||||
('\u0503', '\u0502'), ('\u0505', '\u0504'),
|
||||
('\u0507', '\u0506'), ('\u0509', '\u0508'),
|
||||
('\u050b', '\u050a'), ('\u050d', '\u050c'),
|
||||
('\u050f', '\u050e'), ('\u0511', '\u0510'),
|
||||
('\u0513', '\u0512'), ('\u0515', '\u0514'),
|
||||
('\u0517', '\u0516'), ('\u0519', '\u0518'),
|
||||
('\u051b', '\u051a'), ('\u051d', '\u051c'),
|
||||
('\u051f', '\u051e'), ('\u0521', '\u0520'),
|
||||
('\u0523', '\u0522'), ('\u0525', '\u0524'),
|
||||
('\u0527', '\u0526'), ('\u0561', '\u0531'),
|
||||
('\u0562', '\u0532'), ('\u0563', '\u0533'),
|
||||
('\u0564', '\u0534'), ('\u0565', '\u0535'),
|
||||
('\u0566', '\u0536'), ('\u0567', '\u0537'),
|
||||
('\u0568', '\u0538'), ('\u0569', '\u0539'),
|
||||
('\u056a', '\u053a'), ('\u056b', '\u053b'),
|
||||
('\u056c', '\u053c'), ('\u056d', '\u053d'),
|
||||
('\u056e', '\u053e'), ('\u056f', '\u053f'),
|
||||
('\u0570', '\u0540'), ('\u0571', '\u0541'),
|
||||
('\u0572', '\u0542'), ('\u0573', '\u0543'),
|
||||
('\u0574', '\u0544'), ('\u0575', '\u0545'),
|
||||
('\u0576', '\u0546'), ('\u0577', '\u0547'),
|
||||
('\u0578', '\u0548'), ('\u0579', '\u0549'),
|
||||
('\u057a', '\u054a'), ('\u057b', '\u054b'),
|
||||
('\u057c', '\u054c'), ('\u057d', '\u054d'),
|
||||
('\u057e', '\u054e'), ('\u057f', '\u054f'),
|
||||
('\u0580', '\u0550'), ('\u0581', '\u0551'),
|
||||
('\u0582', '\u0552'), ('\u0583', '\u0553'),
|
||||
('\u0584', '\u0554'), ('\u0585', '\u0555'),
|
||||
('\u0586', '\u0556'), ('\u1d79', '\ua77d'),
|
||||
('\u1d7d', '\u2c63'), ('\u1e01', '\u1e00'),
|
||||
('\u1e03', '\u1e02'), ('\u1e05', '\u1e04'),
|
||||
('\u1e07', '\u1e06'), ('\u1e09', '\u1e08'),
|
||||
('\u1e0b', '\u1e0a'), ('\u1e0d', '\u1e0c'),
|
||||
('\u1e0f', '\u1e0e'), ('\u1e11', '\u1e10'),
|
||||
('\u1e13', '\u1e12'), ('\u1e15', '\u1e14'),
|
||||
('\u1e17', '\u1e16'), ('\u1e19', '\u1e18'),
|
||||
('\u1e1b', '\u1e1a'), ('\u1e1d', '\u1e1c'),
|
||||
('\u1e1f', '\u1e1e'), ('\u1e21', '\u1e20'),
|
||||
('\u1e23', '\u1e22'), ('\u1e25', '\u1e24'),
|
||||
('\u1e27', '\u1e26'), ('\u1e29', '\u1e28'),
|
||||
('\u1e2b', '\u1e2a'), ('\u1e2d', '\u1e2c'),
|
||||
('\u1e2f', '\u1e2e'), ('\u1e31', '\u1e30'),
|
||||
('\u1e33', '\u1e32'), ('\u1e35', '\u1e34'),
|
||||
('\u1e37', '\u1e36'), ('\u1e39', '\u1e38'),
|
||||
('\u1e3b', '\u1e3a'), ('\u1e3d', '\u1e3c'),
|
||||
('\u1e3f', '\u1e3e'), ('\u1e41', '\u1e40'),
|
||||
('\u1e43', '\u1e42'), ('\u1e45', '\u1e44'),
|
||||
('\u1e47', '\u1e46'), ('\u1e49', '\u1e48'),
|
||||
('\u1e4b', '\u1e4a'), ('\u1e4d', '\u1e4c'),
|
||||
('\u1e4f', '\u1e4e'), ('\u1e51', '\u1e50'),
|
||||
('\u1e53', '\u1e52'), ('\u1e55', '\u1e54'),
|
||||
('\u1e57', '\u1e56'), ('\u1e59', '\u1e58'),
|
||||
('\u1e5b', '\u1e5a'), ('\u1e5d', '\u1e5c'),
|
||||
('\u1e5f', '\u1e5e'), ('\u1e61', '\u1e60'),
|
||||
('\u1e63', '\u1e62'), ('\u1e65', '\u1e64'),
|
||||
('\u1e67', '\u1e66'), ('\u1e69', '\u1e68'),
|
||||
('\u1e6b', '\u1e6a'), ('\u1e6d', '\u1e6c'),
|
||||
('\u1e6f', '\u1e6e'), ('\u1e71', '\u1e70'),
|
||||
('\u1e73', '\u1e72'), ('\u1e75', '\u1e74'),
|
||||
('\u1e77', '\u1e76'), ('\u1e79', '\u1e78'),
|
||||
('\u1e7b', '\u1e7a'), ('\u1e7d', '\u1e7c'),
|
||||
('\u1e7f', '\u1e7e'), ('\u1e81', '\u1e80'),
|
||||
('\u1e83', '\u1e82'), ('\u1e85', '\u1e84'),
|
||||
('\u1e87', '\u1e86'), ('\u1e89', '\u1e88'),
|
||||
('\u1e8b', '\u1e8a'), ('\u1e8d', '\u1e8c'),
|
||||
('\u1e8f', '\u1e8e'), ('\u1e91', '\u1e90'),
|
||||
('\u1e93', '\u1e92'), ('\u1e95', '\u1e94'),
|
||||
('\u1e9b', '\u1e60'), ('\u1ea1', '\u1ea0'),
|
||||
('\u1ea3', '\u1ea2'), ('\u1ea5', '\u1ea4'),
|
||||
('\u1ea7', '\u1ea6'), ('\u1ea9', '\u1ea8'),
|
||||
('\u1eab', '\u1eaa'), ('\u1ead', '\u1eac'),
|
||||
('\u1eaf', '\u1eae'), ('\u1eb1', '\u1eb0'),
|
||||
('\u1eb3', '\u1eb2'), ('\u1eb5', '\u1eb4'),
|
||||
('\u1eb7', '\u1eb6'), ('\u1eb9', '\u1eb8'),
|
||||
('\u1ebb', '\u1eba'), ('\u1ebd', '\u1ebc'),
|
||||
('\u1ebf', '\u1ebe'), ('\u1ec1', '\u1ec0'),
|
||||
('\u1ec3', '\u1ec2'), ('\u1ec5', '\u1ec4'),
|
||||
('\u1ec7', '\u1ec6'), ('\u1ec9', '\u1ec8'),
|
||||
('\u1ecb', '\u1eca'), ('\u1ecd', '\u1ecc'),
|
||||
('\u1ecf', '\u1ece'), ('\u1ed1', '\u1ed0'),
|
||||
('\u1ed3', '\u1ed2'), ('\u1ed5', '\u1ed4'),
|
||||
('\u1ed7', '\u1ed6'), ('\u1ed9', '\u1ed8'),
|
||||
('\u1edb', '\u1eda'), ('\u1edd', '\u1edc'),
|
||||
('\u1edf', '\u1ede'), ('\u1ee1', '\u1ee0'),
|
||||
('\u1ee3', '\u1ee2'), ('\u1ee5', '\u1ee4'),
|
||||
('\u1ee7', '\u1ee6'), ('\u1ee9', '\u1ee8'),
|
||||
('\u1eeb', '\u1eea'), ('\u1eed', '\u1eec'),
|
||||
('\u1eef', '\u1eee'), ('\u1ef1', '\u1ef0'),
|
||||
('\u1ef3', '\u1ef2'), ('\u1ef5', '\u1ef4'),
|
||||
('\u1ef7', '\u1ef6'), ('\u1ef9', '\u1ef8'),
|
||||
('\u1efb', '\u1efa'), ('\u1efd', '\u1efc'),
|
||||
('\u1eff', '\u1efe'), ('\u1f00', '\u1f08'),
|
||||
('\u1f01', '\u1f09'), ('\u1f02', '\u1f0a'),
|
||||
('\u1f03', '\u1f0b'), ('\u1f04', '\u1f0c'),
|
||||
('\u1f05', '\u1f0d'), ('\u1f06', '\u1f0e'),
|
||||
('\u1f07', '\u1f0f'), ('\u1f10', '\u1f18'),
|
||||
('\u1f11', '\u1f19'), ('\u1f12', '\u1f1a'),
|
||||
('\u1f13', '\u1f1b'), ('\u1f14', '\u1f1c'),
|
||||
('\u1f15', '\u1f1d'), ('\u1f20', '\u1f28'),
|
||||
('\u1f21', '\u1f29'), ('\u1f22', '\u1f2a'),
|
||||
('\u1f23', '\u1f2b'), ('\u1f24', '\u1f2c'),
|
||||
('\u1f25', '\u1f2d'), ('\u1f26', '\u1f2e'),
|
||||
('\u1f27', '\u1f2f'), ('\u1f30', '\u1f38'),
|
||||
('\u1f31', '\u1f39'), ('\u1f32', '\u1f3a'),
|
||||
('\u1f33', '\u1f3b'), ('\u1f34', '\u1f3c'),
|
||||
('\u1f35', '\u1f3d'), ('\u1f36', '\u1f3e'),
|
||||
('\u1f37', '\u1f3f'), ('\u1f40', '\u1f48'),
|
||||
('\u1f41', '\u1f49'), ('\u1f42', '\u1f4a'),
|
||||
('\u1f43', '\u1f4b'), ('\u1f44', '\u1f4c'),
|
||||
('\u1f45', '\u1f4d'), ('\u1f51', '\u1f59'),
|
||||
('\u1f53', '\u1f5b'), ('\u1f55', '\u1f5d'),
|
||||
('\u1f57', '\u1f5f'), ('\u1f60', '\u1f68'),
|
||||
('\u1f61', '\u1f69'), ('\u1f62', '\u1f6a'),
|
||||
('\u1f63', '\u1f6b'), ('\u1f64', '\u1f6c'),
|
||||
('\u1f65', '\u1f6d'), ('\u1f66', '\u1f6e'),
|
||||
('\u1f67', '\u1f6f'), ('\u1f70', '\u1fba'),
|
||||
('\u1f71', '\u1fbb'), ('\u1f72', '\u1fc8'),
|
||||
('\u1f73', '\u1fc9'), ('\u1f74', '\u1fca'),
|
||||
('\u1f75', '\u1fcb'), ('\u1f76', '\u1fda'),
|
||||
('\u1f77', '\u1fdb'), ('\u1f78', '\u1ff8'),
|
||||
('\u1f79', '\u1ff9'), ('\u1f7a', '\u1fea'),
|
||||
('\u1f7b', '\u1feb'), ('\u1f7c', '\u1ffa'),
|
||||
('\u1f7d', '\u1ffb'), ('\u1f80', '\u1f88'),
|
||||
('\u1f81', '\u1f89'), ('\u1f82', '\u1f8a'),
|
||||
('\u1f83', '\u1f8b'), ('\u1f84', '\u1f8c'),
|
||||
('\u1f85', '\u1f8d'), ('\u1f86', '\u1f8e'),
|
||||
('\u1f87', '\u1f8f'), ('\u1f90', '\u1f98'),
|
||||
('\u1f91', '\u1f99'), ('\u1f92', '\u1f9a'),
|
||||
('\u1f93', '\u1f9b'), ('\u1f94', '\u1f9c'),
|
||||
('\u1f95', '\u1f9d'), ('\u1f96', '\u1f9e'),
|
||||
('\u1f97', '\u1f9f'), ('\u1fa0', '\u1fa8'),
|
||||
('\u1fa1', '\u1fa9'), ('\u1fa2', '\u1faa'),
|
||||
('\u1fa3', '\u1fab'), ('\u1fa4', '\u1fac'),
|
||||
('\u1fa5', '\u1fad'), ('\u1fa6', '\u1fae'),
|
||||
('\u1fa7', '\u1faf'), ('\u1fb0', '\u1fb8'),
|
||||
('\u1fb1', '\u1fb9'), ('\u1fb3', '\u1fbc'),
|
||||
('\u1fbe', '\u0399'), ('\u1fc3', '\u1fcc'),
|
||||
('\u1fd0', '\u1fd8'), ('\u1fd1', '\u1fd9'),
|
||||
('\u1fe0', '\u1fe8'), ('\u1fe1', '\u1fe9'),
|
||||
('\u1fe5', '\u1fec'), ('\u1ff3', '\u1ffc'),
|
||||
('\u214e', '\u2132'), ('\u2184', '\u2183'),
|
||||
('\u2c30', '\u2c00'), ('\u2c31', '\u2c01'),
|
||||
('\u2c32', '\u2c02'), ('\u2c33', '\u2c03'),
|
||||
('\u2c34', '\u2c04'), ('\u2c35', '\u2c05'),
|
||||
('\u2c36', '\u2c06'), ('\u2c37', '\u2c07'),
|
||||
('\u2c38', '\u2c08'), ('\u2c39', '\u2c09'),
|
||||
('\u2c3a', '\u2c0a'), ('\u2c3b', '\u2c0b'),
|
||||
('\u2c3c', '\u2c0c'), ('\u2c3d', '\u2c0d'),
|
||||
('\u2c3e', '\u2c0e'), ('\u2c3f', '\u2c0f'),
|
||||
('\u2c40', '\u2c10'), ('\u2c41', '\u2c11'),
|
||||
('\u2c42', '\u2c12'), ('\u2c43', '\u2c13'),
|
||||
('\u2c44', '\u2c14'), ('\u2c45', '\u2c15'),
|
||||
('\u2c46', '\u2c16'), ('\u2c47', '\u2c17'),
|
||||
('\u2c48', '\u2c18'), ('\u2c49', '\u2c19'),
|
||||
('\u2c4a', '\u2c1a'), ('\u2c4b', '\u2c1b'),
|
||||
('\u2c4c', '\u2c1c'), ('\u2c4d', '\u2c1d'),
|
||||
('\u2c4e', '\u2c1e'), ('\u2c4f', '\u2c1f'),
|
||||
('\u2c50', '\u2c20'), ('\u2c51', '\u2c21'),
|
||||
('\u2c52', '\u2c22'), ('\u2c53', '\u2c23'),
|
||||
('\u2c54', '\u2c24'), ('\u2c55', '\u2c25'),
|
||||
('\u2c56', '\u2c26'), ('\u2c57', '\u2c27'),
|
||||
('\u2c58', '\u2c28'), ('\u2c59', '\u2c29'),
|
||||
('\u2c5a', '\u2c2a'), ('\u2c5b', '\u2c2b'),
|
||||
('\u2c5c', '\u2c2c'), ('\u2c5d', '\u2c2d'),
|
||||
('\u2c5e', '\u2c2e'), ('\u2c61', '\u2c60'),
|
||||
('\u2c65', '\u023a'), ('\u2c66', '\u023e'),
|
||||
('\u2c68', '\u2c67'), ('\u2c6a', '\u2c69'),
|
||||
('\u2c6c', '\u2c6b'), ('\u2c73', '\u2c72'),
|
||||
('\u2c76', '\u2c75'), ('\u2c81', '\u2c80'),
|
||||
('\u2c83', '\u2c82'), ('\u2c85', '\u2c84'),
|
||||
('\u2c87', '\u2c86'), ('\u2c89', '\u2c88'),
|
||||
('\u2c8b', '\u2c8a'), ('\u2c8d', '\u2c8c'),
|
||||
('\u2c8f', '\u2c8e'), ('\u2c91', '\u2c90'),
|
||||
('\u2c93', '\u2c92'), ('\u2c95', '\u2c94'),
|
||||
('\u2c97', '\u2c96'), ('\u2c99', '\u2c98'),
|
||||
('\u2c9b', '\u2c9a'), ('\u2c9d', '\u2c9c'),
|
||||
('\u2c9f', '\u2c9e'), ('\u2ca1', '\u2ca0'),
|
||||
('\u2ca3', '\u2ca2'), ('\u2ca5', '\u2ca4'),
|
||||
('\u2ca7', '\u2ca6'), ('\u2ca9', '\u2ca8'),
|
||||
('\u2cab', '\u2caa'), ('\u2cad', '\u2cac'),
|
||||
('\u2caf', '\u2cae'), ('\u2cb1', '\u2cb0'),
|
||||
('\u2cb3', '\u2cb2'), ('\u2cb5', '\u2cb4'),
|
||||
('\u2cb7', '\u2cb6'), ('\u2cb9', '\u2cb8'),
|
||||
('\u2cbb', '\u2cba'), ('\u2cbd', '\u2cbc'),
|
||||
('\u2cbf', '\u2cbe'), ('\u2cc1', '\u2cc0'),
|
||||
('\u2cc3', '\u2cc2'), ('\u2cc5', '\u2cc4'),
|
||||
('\u2cc7', '\u2cc6'), ('\u2cc9', '\u2cc8'),
|
||||
('\u2ccb', '\u2cca'), ('\u2ccd', '\u2ccc'),
|
||||
('\u2ccf', '\u2cce'), ('\u2cd1', '\u2cd0'),
|
||||
('\u2cd3', '\u2cd2'), ('\u2cd5', '\u2cd4'),
|
||||
('\u2cd7', '\u2cd6'), ('\u2cd9', '\u2cd8'),
|
||||
('\u2cdb', '\u2cda'), ('\u2cdd', '\u2cdc'),
|
||||
('\u2cdf', '\u2cde'), ('\u2ce1', '\u2ce0'),
|
||||
('\u2ce3', '\u2ce2'), ('\u2cec', '\u2ceb'),
|
||||
('\u2cee', '\u2ced'), ('\u2cf3', '\u2cf2'),
|
||||
('\u2d00', '\u10a0'), ('\u2d01', '\u10a1'),
|
||||
('\u2d02', '\u10a2'), ('\u2d03', '\u10a3'),
|
||||
('\u2d04', '\u10a4'), ('\u2d05', '\u10a5'),
|
||||
('\u2d06', '\u10a6'), ('\u2d07', '\u10a7'),
|
||||
('\u2d08', '\u10a8'), ('\u2d09', '\u10a9'),
|
||||
('\u2d0a', '\u10aa'), ('\u2d0b', '\u10ab'),
|
||||
('\u2d0c', '\u10ac'), ('\u2d0d', '\u10ad'),
|
||||
('\u2d0e', '\u10ae'), ('\u2d0f', '\u10af'),
|
||||
('\u2d10', '\u10b0'), ('\u2d11', '\u10b1'),
|
||||
('\u2d12', '\u10b2'), ('\u2d13', '\u10b3'),
|
||||
('\u2d14', '\u10b4'), ('\u2d15', '\u10b5'),
|
||||
('\u2d16', '\u10b6'), ('\u2d17', '\u10b7'),
|
||||
('\u2d18', '\u10b8'), ('\u2d19', '\u10b9'),
|
||||
('\u2d1a', '\u10ba'), ('\u2d1b', '\u10bb'),
|
||||
('\u2d1c', '\u10bc'), ('\u2d1d', '\u10bd'),
|
||||
('\u2d1e', '\u10be'), ('\u2d1f', '\u10bf'),
|
||||
('\u2d20', '\u10c0'), ('\u2d21', '\u10c1'),
|
||||
('\u2d22', '\u10c2'), ('\u2d23', '\u10c3'),
|
||||
('\u2d24', '\u10c4'), ('\u2d25', '\u10c5'),
|
||||
('\u2d27', '\u10c7'), ('\u2d2d', '\u10cd'),
|
||||
('\ua641', '\ua640'), ('\ua643', '\ua642'),
|
||||
('\ua645', '\ua644'), ('\ua647', '\ua646'),
|
||||
('\ua649', '\ua648'), ('\ua64b', '\ua64a'),
|
||||
('\ua64d', '\ua64c'), ('\ua64f', '\ua64e'),
|
||||
('\ua651', '\ua650'), ('\ua653', '\ua652'),
|
||||
('\ua655', '\ua654'), ('\ua657', '\ua656'),
|
||||
('\ua659', '\ua658'), ('\ua65b', '\ua65a'),
|
||||
('\ua65d', '\ua65c'), ('\ua65f', '\ua65e'),
|
||||
('\ua661', '\ua660'), ('\ua663', '\ua662'),
|
||||
('\ua665', '\ua664'), ('\ua667', '\ua666'),
|
||||
('\ua669', '\ua668'), ('\ua66b', '\ua66a'),
|
||||
('\ua66d', '\ua66c'), ('\ua681', '\ua680'),
|
||||
('\ua683', '\ua682'), ('\ua685', '\ua684'),
|
||||
('\ua687', '\ua686'), ('\ua689', '\ua688'),
|
||||
('\ua68b', '\ua68a'), ('\ua68d', '\ua68c'),
|
||||
('\ua68f', '\ua68e'), ('\ua691', '\ua690'),
|
||||
('\ua693', '\ua692'), ('\ua695', '\ua694'),
|
||||
('\ua697', '\ua696'), ('\ua723', '\ua722'),
|
||||
('\ua725', '\ua724'), ('\ua727', '\ua726'),
|
||||
('\ua729', '\ua728'), ('\ua72b', '\ua72a'),
|
||||
('\ua72d', '\ua72c'), ('\ua72f', '\ua72e'),
|
||||
('\ua733', '\ua732'), ('\ua735', '\ua734'),
|
||||
('\ua737', '\ua736'), ('\ua739', '\ua738'),
|
||||
('\ua73b', '\ua73a'), ('\ua73d', '\ua73c'),
|
||||
('\ua73f', '\ua73e'), ('\ua741', '\ua740'),
|
||||
('\ua743', '\ua742'), ('\ua745', '\ua744'),
|
||||
('\ua747', '\ua746'), ('\ua749', '\ua748'),
|
||||
('\ua74b', '\ua74a'), ('\ua74d', '\ua74c'),
|
||||
('\ua74f', '\ua74e'), ('\ua751', '\ua750'),
|
||||
('\ua753', '\ua752'), ('\ua755', '\ua754'),
|
||||
('\ua757', '\ua756'), ('\ua759', '\ua758'),
|
||||
('\ua75b', '\ua75a'), ('\ua75d', '\ua75c'),
|
||||
('\ua75f', '\ua75e'), ('\ua761', '\ua760'),
|
||||
('\ua763', '\ua762'), ('\ua765', '\ua764'),
|
||||
('\ua767', '\ua766'), ('\ua769', '\ua768'),
|
||||
('\ua76b', '\ua76a'), ('\ua76d', '\ua76c'),
|
||||
('\ua76f', '\ua76e'), ('\ua77a', '\ua779'),
|
||||
('\ua77c', '\ua77b'), ('\ua77f', '\ua77e'),
|
||||
('\ua781', '\ua780'), ('\ua783', '\ua782'),
|
||||
('\ua785', '\ua784'), ('\ua787', '\ua786'),
|
||||
('\ua78c', '\ua78b'), ('\ua791', '\ua790'),
|
||||
('\ua793', '\ua792'), ('\ua7a1', '\ua7a0'),
|
||||
('\ua7a3', '\ua7a2'), ('\ua7a5', '\ua7a4'),
|
||||
('\ua7a7', '\ua7a6'), ('\ua7a9', '\ua7a8'),
|
||||
('\uff41', '\uff21'), ('\uff42', '\uff22'),
|
||||
('\uff43', '\uff23'), ('\uff44', '\uff24'),
|
||||
('\uff45', '\uff25'), ('\uff46', '\uff26'),
|
||||
('\uff47', '\uff27'), ('\uff48', '\uff28'),
|
||||
('\uff49', '\uff29'), ('\uff4a', '\uff2a'),
|
||||
('\uff4b', '\uff2b'), ('\uff4c', '\uff2c'),
|
||||
('\uff4d', '\uff2d'), ('\uff4e', '\uff2e'),
|
||||
('\uff4f', '\uff2f'), ('\uff50', '\uff30'),
|
||||
('\uff51', '\uff31'), ('\uff52', '\uff32'),
|
||||
('\uff53', '\uff33'), ('\uff54', '\uff34'),
|
||||
('\uff55', '\uff35'), ('\uff56', '\uff36'),
|
||||
('\uff57', '\uff37'), ('\uff58', '\uff38'),
|
||||
('\uff59', '\uff39'), ('\uff5a', '\uff3a'),
|
||||
('\U00010428', '\U00010400'), ('\U00010429', '\U00010401'),
|
||||
('\U0001042a', '\U00010402'), ('\U0001042b', '\U00010403'),
|
||||
('\U0001042c', '\U00010404'), ('\U0001042d', '\U00010405'),
|
||||
('\U0001042e', '\U00010406'), ('\U0001042f', '\U00010407'),
|
||||
('\U00010430', '\U00010408'), ('\U00010431', '\U00010409'),
|
||||
('\U00010432', '\U0001040a'), ('\U00010433', '\U0001040b'),
|
||||
('\U00010434', '\U0001040c'), ('\U00010435', '\U0001040d'),
|
||||
('\U00010436', '\U0001040e'), ('\U00010437', '\U0001040f'),
|
||||
('\U00010438', '\U00010410'), ('\U00010439', '\U00010411'),
|
||||
('\U0001043a', '\U00010412'), ('\U0001043b', '\U00010413'),
|
||||
('\U0001043c', '\U00010414'), ('\U0001043d', '\U00010415'),
|
||||
('\U0001043e', '\U00010416'), ('\U0001043f', '\U00010417'),
|
||||
('\U00010440', '\U00010418'), ('\U00010441', '\U00010419'),
|
||||
('\U00010442', '\U0001041a'), ('\U00010443', '\U0001041b'),
|
||||
('\U00010444', '\U0001041c'), ('\U00010445', '\U0001041d'),
|
||||
('\U00010446', '\U0001041e'), ('\U00010447', '\U0001041f'),
|
||||
('\U00010448', '\U00010420'), ('\U00010449', '\U00010421'),
|
||||
('\U0001044a', '\U00010422'), ('\U0001044b', '\U00010423'),
|
||||
('\U0001044c', '\U00010424'), ('\U0001044d', '\U00010425'),
|
||||
('\U0001044e', '\U00010426'), ('\U0001044f', '\U00010427')
|
||||
];
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user