mirror of
https://github.com/gnosygnu/xowa.git
synced 2026-03-02 03:49:30 +00:00
'v3.8.2.1'
This commit is contained in:
@@ -18,6 +18,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
package gplx;
|
||||
import gplx.core.brys.*; import gplx.core.brys.fmts.*;
|
||||
public class Bry_fmt {
|
||||
private final Object thread_lock = new Object();
|
||||
private byte[] src;
|
||||
private Bry_fmt_itm[] itms; private int itms_len;
|
||||
private Bfr_fmt_arg[] args = Bfr_fmt_arg.Ary_empty;
|
||||
@@ -43,6 +44,10 @@ public class Bry_fmt {
|
||||
Bld_many(bfr, vals_ary);
|
||||
return bfr.To_str_and_clear();
|
||||
}
|
||||
public byte[] Bld_many_to_bry(Bry_bfr bfr, Object... vals_ary) {
|
||||
Bld_many(bfr, vals_ary);
|
||||
return bfr.To_bry_and_clear();
|
||||
}
|
||||
public void Bld_many(Bry_bfr bfr, Object... vals_ary) {
|
||||
if (dirty) Compile();
|
||||
int vals_len = vals_ary.length;
|
||||
@@ -64,15 +69,18 @@ public class Bry_fmt {
|
||||
}
|
||||
public String To_str() {return Bld_many_to_str_auto_bfr(vals);}
|
||||
private void Compile() {
|
||||
dirty = false;
|
||||
this.itms = Bry_fmt_parser_.Parse(Byte_ascii.Tilde, Byte_ascii.Curly_bgn, Byte_ascii.Curly_end, args, keys, src);
|
||||
this.itms_len = itms.length;
|
||||
synchronized (thread_lock) {
|
||||
dirty = false;
|
||||
this.itms = Bry_fmt_parser_.Parse(Byte_ascii.Tilde, Byte_ascii.Curly_bgn, Byte_ascii.Curly_end, args, keys, src);
|
||||
this.itms_len = itms.length;
|
||||
}
|
||||
}
|
||||
public static Bry_fmt New(String fmt, String... keys) {return new Bry_fmt(Bry_.new_u8(fmt), Bry_.Ary(keys), Bfr_fmt_arg.Ary_empty);}
|
||||
public static Bry_fmt New(byte[] fmt, String... keys) {return new Bry_fmt(fmt , Bry_.Ary(keys), Bfr_fmt_arg.Ary_empty);}
|
||||
public static String Make_str(String fmt_str, Object... vals) {return Auto(fmt_str).Vals_(vals).To_str();}
|
||||
public static Bry_fmt Auto(String fmt_str) {
|
||||
byte[] fmt_bry = Bry_.new_u8(fmt_str);
|
||||
public static Bry_fmt Auto_nl_apos(String... lines) {return Auto(Bry_.New_u8_nl_apos(lines));}
|
||||
public static Bry_fmt Auto(String fmt_str) {return Auto(Bry_.new_u8(fmt_str));}
|
||||
public static Bry_fmt Auto(byte[] fmt_bry) {
|
||||
byte[][] keys_bry = Bry_fmt_parser_.Parse_keys(fmt_bry);
|
||||
return new Bry_fmt(fmt_bry, keys_bry, Bfr_fmt_arg.Ary_empty);
|
||||
}
|
||||
|
||||
@@ -16,53 +16,73 @@ You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package gplx;
|
||||
import org.junit.*; import gplx.core.times.*;
|
||||
public class DateAdp__tst {
|
||||
import org.junit.*; import gplx.core.tests.*;
|
||||
public class DateAdp__tst {
|
||||
private final DateAdp__fxt fxt = new DateAdp__fxt();
|
||||
@Test public void Parse_gplx() {
|
||||
tst_Parse_gplx("99991231_235959.999", "99991231_235959.999");
|
||||
tst_Parse_gplx("20090430_213200.123", "20090430_213200.123");
|
||||
tst_Parse_gplx("20090430_213200" , "20090430_213200.000");
|
||||
tst_Parse_gplx("20090430" , "20090430_000000.000");
|
||||
fxt.Test__parse_gplx("99991231_235959.999" , "99991231_235959.999");
|
||||
fxt.Test__parse_gplx("20090430_213200.123" , "20090430_213200.123");
|
||||
fxt.Test__parse_gplx("20090430_213200" , "20090430_213200.000");
|
||||
fxt.Test__parse_gplx("20090430" , "20090430_000000.000");
|
||||
}
|
||||
@Test public void Parse_separators() {
|
||||
tst_Parse_gplx("2009-04-30 21:32:00.123", "20090430_213200.123");
|
||||
tst_Parse_gplx("2009-04-30 21:32:00" , "20090430_213200.000");
|
||||
tst_Parse_gplx("2009-04-30" , "20090430_000000.000");
|
||||
fxt.Test__parse_gplx("2009-04-30 21:32:00.123" , "20090430_213200.123");
|
||||
fxt.Test__parse_gplx("2009-04-30 21:32:00" , "20090430_213200.000");
|
||||
fxt.Test__parse_gplx("2009-04-30" , "20090430_000000.000");
|
||||
}
|
||||
@Test public void Parse_utc() {
|
||||
fxt.Test__parse_gplx("2015-12-26T10:03:53Z" , "20151226_100353.000");
|
||||
}
|
||||
@Test public void DayOfWeek() {
|
||||
tst_DayOfWeek("2012-01-18", 3); //3=Wed
|
||||
} void tst_DayOfWeek(String raw, int expd) {Tfds.Eq(expd, DateAdp_.parse_gplx(raw).DayOfWeek());}
|
||||
@Test public void WeekOfYear() {
|
||||
tst_WeekOfYear("2006-02-01", 5); // 1-1:Sun;2-1:Wed
|
||||
tst_WeekOfYear("2007-02-01", 5); // 1-1:Mon;2-1:Thu
|
||||
tst_WeekOfYear("2008-02-01", 5); // 1-1:Tue;2-1:Fri
|
||||
tst_WeekOfYear("2009-02-01", 6); // 1-1:Thu;2-1:Sun
|
||||
tst_WeekOfYear("2010-02-01", 6); // 1-1:Fri;2-1:Mon
|
||||
tst_WeekOfYear("2011-02-01", 6); // 1-1:Sat;2-1:Tue
|
||||
} void tst_WeekOfYear(String raw, int expd) {Tfds.Eq(expd, DateAdp_.parse_gplx(raw).WeekOfYear());}
|
||||
@Test public void DayOfYear() {
|
||||
tst_DayOfYear("2012-01-01", 1);
|
||||
tst_DayOfYear("2012-02-29", 60);
|
||||
tst_DayOfYear("2012-12-31", 366);
|
||||
} void tst_DayOfYear(String raw, int expd) {Tfds.Eq(expd, DateAdp_.parse_gplx(raw).DayOfYear());}
|
||||
@Test public void Timestamp_unix() {
|
||||
tst_Timestamp_unix("1970-01-01 00:00:00", 0);
|
||||
tst_Timestamp_unix("2012-01-01 00:00:00", 1325376000);
|
||||
} void tst_Timestamp_unix(String raw, long expd) {Tfds.Eq(expd, DateAdp_.parse_gplx(raw).Timestamp_unix());}
|
||||
@Test public void DaysInMonth() {
|
||||
tst_DaysInMonth("2012-01-01", 31);
|
||||
tst_DaysInMonth("2012-02-01", 29);
|
||||
tst_DaysInMonth("2012-04-01", 30);
|
||||
tst_DaysInMonth("2011-02-01", 28);
|
||||
} void tst_DaysInMonth(String raw, int expd) {Tfds.Eq(expd, DateAdp_.DaysInMonth(DateAdp_.parse_gplx(raw)));}
|
||||
@Test public void XtoUtc() {
|
||||
tst_XtoUtc("2012-01-01 00:00", "2012-01-01 05:00"); //4=Wed
|
||||
} void tst_XtoUtc(String raw, String expd) {Tfds.Eq(expd, DateAdp_.parse_gplx(raw).XtoUtc().XtoStr_fmt_yyyy_MM_dd_HH_mm());}
|
||||
|
||||
void tst_Parse_gplx(String raw, String expd) {
|
||||
DateAdp date = DateAdp_.parse_gplx(raw);
|
||||
String actl = date.XtoStr_gplx();
|
||||
Tfds.Eq(expd, actl);
|
||||
fxt.Test__day_of_week("2012-01-18", 3); //3=Wed
|
||||
}
|
||||
@Test public void WeekOfYear() {
|
||||
fxt.Test__week_of_year("2006-02-01", 5); // 1-1:Sun;2-1:Wed
|
||||
fxt.Test__week_of_year("2007-02-01", 5); // 1-1:Mon;2-1:Thu
|
||||
fxt.Test__week_of_year("2008-02-01", 5); // 1-1:Tue;2-1:Fri
|
||||
fxt.Test__week_of_year("2009-02-01", 6); // 1-1:Thu;2-1:Sun
|
||||
fxt.Test__week_of_year("2010-02-01", 6); // 1-1:Fri;2-1:Mon
|
||||
fxt.Test__week_of_year("2011-02-01", 6); // 1-1:Sat;2-1:Tue
|
||||
}
|
||||
@Test public void DayOfYear() {
|
||||
fxt.Test__day_of_year("2012-01-01", 1);
|
||||
fxt.Test__day_of_year("2012-02-29", 60);
|
||||
fxt.Test__day_of_year("2012-12-31", 366);
|
||||
}
|
||||
@Test public void Timestamp_unix() {
|
||||
fxt.Test__timestamp_unix("1970-01-01 00:00:00", 0);
|
||||
fxt.Test__timestamp_unix("2012-01-01 00:00:00", 1325376000);
|
||||
}
|
||||
@Test public void DaysInMonth() {
|
||||
fxt.Test__days_in_month("2012-01-01", 31);
|
||||
fxt.Test__days_in_month("2012-02-01", 29);
|
||||
fxt.Test__days_in_month("2012-04-01", 30);
|
||||
fxt.Test__days_in_month("2011-02-01", 28);
|
||||
}
|
||||
@Test public void XtoUtc() {
|
||||
fxt.Test__to_utc("2012-01-01 00:00", "2012-01-01 05:00"); //4=Wed
|
||||
}
|
||||
}
|
||||
class DateAdp__fxt {
|
||||
public void Test__parse_gplx(String raw, String expd) {
|
||||
Gftest.Eq__str(expd, DateAdp_.parse_gplx(raw).XtoStr_gplx());
|
||||
}
|
||||
public void Test__day_of_week(String raw, int expd) {
|
||||
Gftest.Eq__int(expd, DateAdp_.parse_gplx(raw).DayOfWeek());
|
||||
}
|
||||
public void Test__week_of_year(String raw, int expd) {
|
||||
Gftest.Eq__int(expd, DateAdp_.parse_gplx(raw).WeekOfYear());
|
||||
}
|
||||
public void Test__day_of_year(String raw, int expd) {
|
||||
Gftest.Eq__int(expd, DateAdp_.parse_gplx(raw).DayOfYear());
|
||||
}
|
||||
public void Test__days_in_month(String raw, int expd) {
|
||||
Gftest.Eq__int(expd, DateAdp_.DaysInMonth(DateAdp_.parse_gplx(raw)));
|
||||
}
|
||||
public void Test__timestamp_unix(String raw, long expd) {
|
||||
Gftest.Eq__long(expd, DateAdp_.parse_gplx(raw).Timestamp_unix());
|
||||
}
|
||||
public void Test__to_utc(String raw, String expd) {
|
||||
Tfds.Eq(expd, DateAdp_.parse_gplx(raw).XtoUtc().XtoStr_fmt_yyyy_MM_dd_HH_mm());
|
||||
}
|
||||
DateAdp_parser bldr = DateAdp_parser.new_();
|
||||
}
|
||||
|
||||
38
100_core/src/gplx/core/brys/args/Bfr_arg__bry_fmt.java
Normal file
38
100_core/src/gplx/core/brys/args/Bfr_arg__bry_fmt.java
Normal file
@@ -0,0 +1,38 @@
|
||||
/*
|
||||
XOWA: the XOWA Offline Wiki Application
|
||||
Copyright (C) 2012 gnosygnu@gmail.com
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation, either version 3 of the
|
||||
License, or (at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package gplx.core.brys.args; import gplx.*; import gplx.core.*; import gplx.core.brys.*;
|
||||
import gplx.core.brys.*;
|
||||
public class Bfr_arg__bry_fmt implements Bfr_arg {
|
||||
private final Bry_fmt fmt;
|
||||
private Object[] arg_ary;
|
||||
public Bfr_arg__bry_fmt(Bry_fmt fmt, Object... arg_ary) {
|
||||
this.fmt = fmt;
|
||||
Args_(arg_ary);
|
||||
}
|
||||
public void Bfr_arg__clear() {arg_ary = null;}
|
||||
public boolean Bfr_arg__missing() {return arg_ary == null;}
|
||||
|
||||
public Bfr_arg__bry_fmt Args_(Object... arg_ary) {
|
||||
this.arg_ary = arg_ary;
|
||||
return this;
|
||||
}
|
||||
public void Bfr_arg__add(Bry_bfr bfr) {
|
||||
if (Bfr_arg__missing()) return;
|
||||
fmt.Bld_many(bfr, arg_ary);
|
||||
}
|
||||
}
|
||||
@@ -86,7 +86,7 @@ public class Bry_fmt_parser_ {
|
||||
if (rhs_pos - lhs_pos == 0) throw Err_.new_("bry_fmt", "{} will result in empty key", "src", src);
|
||||
byte[] key = Bry_.Mid(src, lhs_pos, rhs_pos);
|
||||
if (!list.Has(key)) list.Add(key, key);
|
||||
pos = rhs_pos + 1;
|
||||
pos = rhs_pos; // NOTE: auto-increment done at top of loop
|
||||
}
|
||||
return (byte[][])list.To_ary(byte[].class);
|
||||
} private static final byte[] Bry_arg_lhs = Bry_.new_a7("~{");
|
||||
|
||||
@@ -18,11 +18,12 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
package gplx.core.brys.fmts; import gplx.*; import gplx.core.*; import gplx.core.brys.*;
|
||||
import org.junit.*;
|
||||
public class Bry_keys_parser_tst {
|
||||
private final Bry_keys_parser_fxt fxt = new Bry_keys_parser_fxt();
|
||||
private final Bry_keys_parser_fxt fxt = new Bry_keys_parser_fxt();
|
||||
@Test public void None() {fxt.Test("a");}
|
||||
@Test public void One() {fxt.Test("~{a}" , "a");}
|
||||
@Test public void Many() {fxt.Test("~{a}b~{c}d~{e}" , "a", "c", "e");}
|
||||
@Test public void Dupe() {fxt.Test("~{a}b~{a}" , "a");}
|
||||
@Test public void Bug__space() {fxt.Test("~{a}~{b} ~{c}" , "a", "b", "c");} // DATE:2016-08-02
|
||||
}
|
||||
class Bry_keys_parser_fxt {
|
||||
public void Test(String fmt, String... expd) {
|
||||
|
||||
35
100_core/src/gplx/langs/htmls/entitys/Gfh_entity_.java
Normal file
35
100_core/src/gplx/langs/htmls/entitys/Gfh_entity_.java
Normal file
@@ -0,0 +1,35 @@
|
||||
/*
|
||||
XOWA: the XOWA Offline Wiki Application
|
||||
Copyright (C) 2012 gnosygnu@gmail.com
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation, either version 3 of the
|
||||
License, or (at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package gplx.langs.htmls.entitys; import gplx.*; import gplx.langs.*; import gplx.langs.htmls.*;
|
||||
public class Gfh_entity_ {
|
||||
public static final String
|
||||
Nl_str = " "
|
||||
;
|
||||
public static final byte[]
|
||||
Lt_bry = Bry_.new_a7("<"), Gt_bry = Bry_.new_a7(">")
|
||||
, Amp_bry = Bry_.new_a7("&"), Quote_bry = Bry_.new_a7(""")
|
||||
, Apos_num_bry = Bry_.new_a7("'")
|
||||
, Apos_key_bry = Bry_.new_a7("'")
|
||||
, Eq_bry = Bry_.new_a7("=")
|
||||
, Nl_bry = Bry_.new_a7(Nl_str), Space_bry = Bry_.new_a7(" ")
|
||||
, Pipe_bry = Bry_.new_a7("|")
|
||||
, Colon_bry = Bry_.new_a7(":"), Underline_bry = Bry_.new_a7("_"), Asterisk_bry = Bry_.new_a7("*")
|
||||
, Brack_bgn_bry = Bry_.new_a7("["), Brack_end_bry = Bry_.new_a7("]")
|
||||
, Nbsp_num_bry = Bry_.new_a7(" ")
|
||||
;
|
||||
}
|
||||
57
100_core/src/gplx/langs/htmls/entitys/Gfh_entity_itm.java
Normal file
57
100_core/src/gplx/langs/htmls/entitys/Gfh_entity_itm.java
Normal file
@@ -0,0 +1,57 @@
|
||||
/*
|
||||
XOWA: the XOWA Offline Wiki Application
|
||||
Copyright (C) 2012 gnosygnu@gmail.com
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation, either version 3 of the
|
||||
License, or (at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package gplx.langs.htmls.entitys; import gplx.*; import gplx.langs.*; import gplx.langs.htmls.*;
|
||||
public class Gfh_entity_itm { // TS:immutable
|
||||
public Gfh_entity_itm(byte tid, int char_int, byte[] xml_name_bry) {
|
||||
this.tid = tid;
|
||||
this.char_int = char_int;
|
||||
this.u8_bry = gplx.core.intls.Utf16_.Encode_int_to_bry(char_int);
|
||||
this.xml_name_bry = xml_name_bry;
|
||||
this.key_name_len = xml_name_bry.length - 2; // 2 for & and ;
|
||||
}
|
||||
public byte Tid() {return tid;} private final byte tid;
|
||||
public int Char_int() {return char_int;} private final int char_int; // val; EX: 160
|
||||
public byte[] U8_bry() {return u8_bry;} private final byte[] u8_bry; // EX: new byte[] {192, 160}; (C2, A0)
|
||||
public byte[] Xml_name_bry() {return xml_name_bry;} private final byte[] xml_name_bry; // EX: " "
|
||||
public int Key_name_len() {return key_name_len;} private final int key_name_len; // EX: "nbsp".Len
|
||||
|
||||
public void Print_ncr(Bry_bfr bfr) {
|
||||
switch (char_int) {
|
||||
case Byte_ascii.Lt: case Byte_ascii.Gt: case Byte_ascii.Quote: case Byte_ascii.Amp:
|
||||
bfr.Add(xml_name_bry); // NOTE: never write actual char; EX: "<" should be written as "<", not "<"
|
||||
break;
|
||||
default:
|
||||
bfr.Add(Escape_bgn); // &#
|
||||
bfr.Add_int_variable(char_int); // 160
|
||||
bfr.Add_byte(Byte_ascii.Semic); // ;
|
||||
break;
|
||||
}
|
||||
}
|
||||
public void Print_literal(Bry_bfr bfr) {
|
||||
switch (char_int) {
|
||||
case Byte_ascii.Lt: bfr.Add(Gfh_entity_.Lt_bry); break; // NOTE: never write actual char; EX: "<" should be written as "<", not "<"; MW does same; DATE:2014-11-07
|
||||
case Byte_ascii.Gt: bfr.Add(Gfh_entity_.Gt_bry); break;
|
||||
case Byte_ascii.Quote: bfr.Add(Gfh_entity_.Quote_bry); break;
|
||||
case Byte_ascii.Amp: bfr.Add(Gfh_entity_.Amp_bry); break;
|
||||
default: bfr.Add(u8_bry); break; // write literal; EX: "[" not "["
|
||||
}
|
||||
}
|
||||
private static final byte[] Escape_bgn = Bry_.new_a7("&#");
|
||||
public static final byte Tid_name_std = 1, Tid_name_xowa = 2, Tid_num_hex = 3, Tid_num_dec = 4;
|
||||
public static final int Char_int_null = -1;
|
||||
}
|
||||
317
100_core/src/gplx/langs/htmls/entitys/Gfh_entity_trie.java
Normal file
317
100_core/src/gplx/langs/htmls/entitys/Gfh_entity_trie.java
Normal file
@@ -0,0 +1,317 @@
|
||||
/*
|
||||
XOWA: the XOWA Offline Wiki Application
|
||||
Copyright (C) 2012 gnosygnu@gmail.com
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Affero General Public License as
|
||||
published by the Free Software Foundation, either version 3 of the
|
||||
License, or (at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Affero General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Affero General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
package gplx.langs.htmls.entitys; import gplx.*; import gplx.langs.*; import gplx.langs.htmls.*;
|
||||
import gplx.core.btries.*;
|
||||
public class Gfh_entity_trie { // TS
|
||||
public static final String // NOTE: top_define; entities needed for <nowiki> escaping
|
||||
Str__xowa_lt = "&xowa_lt;"
|
||||
, Str__xowa_brack_bgn = "&xowa_brack_bgn;"
|
||||
, Str__xowa_brack_end = "&xowa_brack_end;"
|
||||
, Str__xowa_pipe = "&xowa_pipe;"
|
||||
, Str__xowa_apos = "&xowa_apos;"
|
||||
, Str__xowa_colon = "&xowa_colon;"
|
||||
, Str__xowa_underline = "&xowa_underline;"
|
||||
, Str__xowa_asterisk = "&xowa_asterisk;"
|
||||
, Str__xowa_space = "&xowa_space;"
|
||||
, Str__xowa_nl = "&xowa_nl;"
|
||||
, Str__xowa_dash = "&xowa_dash;"
|
||||
;
|
||||
public static final Btrie_slim_mgr Instance = New(); Gfh_entity_trie() {}
|
||||
private static Btrie_slim_mgr New() {// REF.MW: Sanitizer|$wgHtmlEntities; NOTE:added apos
|
||||
Btrie_slim_mgr rv = Btrie_slim_mgr.cs();
|
||||
Add_name(rv, Bool_.Y, 60, Str__xowa_lt);
|
||||
Add_name(rv, Bool_.Y, 91, Str__xowa_brack_bgn);
|
||||
Add_name(rv, Bool_.Y, 93, Str__xowa_brack_end);
|
||||
Add_name(rv, Bool_.Y, 124, Str__xowa_pipe);
|
||||
Add_name(rv, Bool_.Y, 39, Str__xowa_apos);
|
||||
Add_name(rv, Bool_.Y, 58, Str__xowa_colon);
|
||||
Add_name(rv, Bool_.Y, 95, Str__xowa_underline);
|
||||
Add_name(rv, Bool_.Y, 42, Str__xowa_asterisk);
|
||||
Add_name(rv, Bool_.Y, 32, Str__xowa_space);
|
||||
Add_name(rv, Bool_.Y, 10, Str__xowa_nl);
|
||||
Add_name(rv, Bool_.Y, 45, Str__xowa_dash);
|
||||
Add_name(rv, Bool_.N, 39, "'");
|
||||
Add_name(rv, Bool_.N, 193, "Á");
|
||||
Add_name(rv, Bool_.N, 225, "á");
|
||||
Add_name(rv, Bool_.N, 194, "Â");
|
||||
Add_name(rv, Bool_.N, 226, "â");
|
||||
Add_name(rv, Bool_.N, 180, "´");
|
||||
Add_name(rv, Bool_.N, 198, "Æ");
|
||||
Add_name(rv, Bool_.N, 230, "æ");
|
||||
Add_name(rv, Bool_.N, 192, "À");
|
||||
Add_name(rv, Bool_.N, 224, "à");
|
||||
Add_name(rv, Bool_.N, 8501, "ℵ");
|
||||
Add_name(rv, Bool_.N, 913, "Α");
|
||||
Add_name(rv, Bool_.N, 945, "α");
|
||||
Add_name(rv, Bool_.N, 38, "&");
|
||||
Add_name(rv, Bool_.N, 8743, "∧");
|
||||
Add_name(rv, Bool_.N, 8736, "∠");
|
||||
Add_name(rv, Bool_.N, 197, "Å");
|
||||
Add_name(rv, Bool_.N, 229, "å");
|
||||
Add_name(rv, Bool_.N, 8776, "≈");
|
||||
Add_name(rv, Bool_.N, 195, "Ã");
|
||||
Add_name(rv, Bool_.N, 227, "ã");
|
||||
Add_name(rv, Bool_.N, 196, "Ä");
|
||||
Add_name(rv, Bool_.N, 228, "ä");
|
||||
Add_name(rv, Bool_.N, 8222, "„");
|
||||
Add_name(rv, Bool_.N, 914, "Β");
|
||||
Add_name(rv, Bool_.N, 946, "β");
|
||||
Add_name(rv, Bool_.N, 166, "¦");
|
||||
Add_name(rv, Bool_.N, 8226, "•");
|
||||
Add_name(rv, Bool_.N, 8745, "∩");
|
||||
Add_name(rv, Bool_.N, 199, "Ç");
|
||||
Add_name(rv, Bool_.N, 231, "ç");
|
||||
Add_name(rv, Bool_.N, 184, "¸");
|
||||
Add_name(rv, Bool_.N, 162, "¢");
|
||||
Add_name(rv, Bool_.N, 935, "Χ");
|
||||
Add_name(rv, Bool_.N, 967, "χ");
|
||||
Add_name(rv, Bool_.N, 710, "ˆ");
|
||||
Add_name(rv, Bool_.N, 9827, "♣");
|
||||
Add_name(rv, Bool_.N, 8773, "≅");
|
||||
Add_name(rv, Bool_.N, 169, "©");
|
||||
Add_name(rv, Bool_.N, 8629, "↵");
|
||||
Add_name(rv, Bool_.N, 8746, "∪");
|
||||
Add_name(rv, Bool_.N, 164, "¤");
|
||||
Add_name(rv, Bool_.N, 8224, "†");
|
||||
Add_name(rv, Bool_.N, 8225, "‡");
|
||||
Add_name(rv, Bool_.N, 8595, "↓");
|
||||
Add_name(rv, Bool_.N, 8659, "⇓");
|
||||
Add_name(rv, Bool_.N, 176, "°");
|
||||
Add_name(rv, Bool_.N, 916, "Δ");
|
||||
Add_name(rv, Bool_.N, 948, "δ");
|
||||
Add_name(rv, Bool_.N, 9830, "♦");
|
||||
Add_name(rv, Bool_.N, 247, "÷");
|
||||
Add_name(rv, Bool_.N, 201, "É");
|
||||
Add_name(rv, Bool_.N, 233, "é");
|
||||
Add_name(rv, Bool_.N, 202, "Ê");
|
||||
Add_name(rv, Bool_.N, 234, "ê");
|
||||
Add_name(rv, Bool_.N, 200, "È");
|
||||
Add_name(rv, Bool_.N, 232, "è");
|
||||
Add_name(rv, Bool_.N, 8709, "∅");
|
||||
Add_name(rv, Bool_.N, 8195, " ");
|
||||
Add_name(rv, Bool_.N, 8194, " ");
|
||||
Add_name(rv, Bool_.N, 917, "Ε");
|
||||
Add_name(rv, Bool_.N, 949, "ε");
|
||||
Add_name(rv, Bool_.N, 8801, "≡");
|
||||
Add_name(rv, Bool_.N, 919, "Η");
|
||||
Add_name(rv, Bool_.N, 951, "η");
|
||||
Add_name(rv, Bool_.N, 208, "Ð");
|
||||
Add_name(rv, Bool_.N, 240, "ð");
|
||||
Add_name(rv, Bool_.N, 203, "Ë");
|
||||
Add_name(rv, Bool_.N, 235, "ë");
|
||||
Add_name(rv, Bool_.N, 8364, "€");
|
||||
Add_name(rv, Bool_.N, 8707, "∃");
|
||||
Add_name(rv, Bool_.N, 402, "ƒ");
|
||||
Add_name(rv, Bool_.N, 8704, "∀");
|
||||
Add_name(rv, Bool_.N, 189, "½");
|
||||
Add_name(rv, Bool_.N, 188, "¼");
|
||||
Add_name(rv, Bool_.N, 190, "¾");
|
||||
Add_name(rv, Bool_.N, 8260, "⁄");
|
||||
Add_name(rv, Bool_.N, 915, "Γ");
|
||||
Add_name(rv, Bool_.N, 947, "γ");
|
||||
Add_name(rv, Bool_.N, 8805, "≥");
|
||||
Add_name(rv, Bool_.N, 62, ">");
|
||||
Add_name(rv, Bool_.N, 8596, "↔");
|
||||
Add_name(rv, Bool_.N, 8660, "⇔");
|
||||
Add_name(rv, Bool_.N, 9829, "♥");
|
||||
Add_name(rv, Bool_.N, 8230, "…");
|
||||
Add_name(rv, Bool_.N, 205, "Í");
|
||||
Add_name(rv, Bool_.N, 237, "í");
|
||||
Add_name(rv, Bool_.N, 206, "Î");
|
||||
Add_name(rv, Bool_.N, 238, "î");
|
||||
Add_name(rv, Bool_.N, 161, "¡");
|
||||
Add_name(rv, Bool_.N, 204, "Ì");
|
||||
Add_name(rv, Bool_.N, 236, "ì");
|
||||
Add_name(rv, Bool_.N, 8465, "ℑ");
|
||||
Add_name(rv, Bool_.N, 8734, "∞");
|
||||
Add_name(rv, Bool_.N, 8747, "∫");
|
||||
Add_name(rv, Bool_.N, 921, "Ι");
|
||||
Add_name(rv, Bool_.N, 953, "ι");
|
||||
Add_name(rv, Bool_.N, 191, "¿");
|
||||
Add_name(rv, Bool_.N, 8712, "∈");
|
||||
Add_name(rv, Bool_.N, 207, "Ï");
|
||||
Add_name(rv, Bool_.N, 239, "ï");
|
||||
Add_name(rv, Bool_.N, 922, "Κ");
|
||||
Add_name(rv, Bool_.N, 954, "κ");
|
||||
Add_name(rv, Bool_.N, 923, "Λ");
|
||||
Add_name(rv, Bool_.N, 955, "λ");
|
||||
Add_name(rv, Bool_.N, 9001, "⟨");
|
||||
Add_name(rv, Bool_.N, 171, "«");
|
||||
Add_name(rv, Bool_.N, 8592, "←");
|
||||
Add_name(rv, Bool_.N, 8656, "⇐");
|
||||
Add_name(rv, Bool_.N, 8968, "⌈");
|
||||
Add_name(rv, Bool_.N, 8220, "“");
|
||||
Add_name(rv, Bool_.N, 8804, "≤");
|
||||
Add_name(rv, Bool_.N, 8970, "⌊");
|
||||
Add_name(rv, Bool_.N, 8727, "∗");
|
||||
Add_name(rv, Bool_.N, 9674, "◊");
|
||||
Add_name(rv, Bool_.N, 8206, "‎");
|
||||
Add_name(rv, Bool_.N, 8249, "‹");
|
||||
Add_name(rv, Bool_.N, 8216, "‘");
|
||||
Add_name(rv, Bool_.N, 60, "<");
|
||||
Add_name(rv, Bool_.N, 175, "¯");
|
||||
Add_name(rv, Bool_.N, 8212, "—");
|
||||
Add_name(rv, Bool_.N, 181, "µ");
|
||||
Add_name(rv, Bool_.N, 183, "·");
|
||||
Add_name(rv, Bool_.N, 8722, "−");
|
||||
Add_name(rv, Bool_.N, 924, "Μ");
|
||||
Add_name(rv, Bool_.N, 956, "μ");
|
||||
Add_name(rv, Bool_.N, 8711, "∇");
|
||||
Add_name(rv, Bool_.N, 160, " ");
|
||||
Add_name(rv, Bool_.N, 8211, "–");
|
||||
Add_name(rv, Bool_.N, 8800, "≠");
|
||||
Add_name(rv, Bool_.N, 8715, "∋");
|
||||
Add_name(rv, Bool_.N, 172, "¬");
|
||||
Add_name(rv, Bool_.N, 8713, "∉");
|
||||
Add_name(rv, Bool_.N, 8836, "⊄");
|
||||
Add_name(rv, Bool_.N, 209, "Ñ");
|
||||
Add_name(rv, Bool_.N, 241, "ñ");
|
||||
Add_name(rv, Bool_.N, 925, "Ν");
|
||||
Add_name(rv, Bool_.N, 957, "ν");
|
||||
Add_name(rv, Bool_.N, 211, "Ó");
|
||||
Add_name(rv, Bool_.N, 243, "ó");
|
||||
Add_name(rv, Bool_.N, 212, "Ô");
|
||||
Add_name(rv, Bool_.N, 244, "ô");
|
||||
Add_name(rv, Bool_.N, 338, "Œ");
|
||||
Add_name(rv, Bool_.N, 339, "œ");
|
||||
Add_name(rv, Bool_.N, 210, "Ò");
|
||||
Add_name(rv, Bool_.N, 242, "ò");
|
||||
Add_name(rv, Bool_.N, 8254, "‾");
|
||||
Add_name(rv, Bool_.N, 937, "Ω");
|
||||
Add_name(rv, Bool_.N, 969, "ω");
|
||||
Add_name(rv, Bool_.N, 927, "Ο");
|
||||
Add_name(rv, Bool_.N, 959, "ο");
|
||||
Add_name(rv, Bool_.N, 8853, "⊕");
|
||||
Add_name(rv, Bool_.N, 8744, "∨");
|
||||
Add_name(rv, Bool_.N, 170, "ª");
|
||||
Add_name(rv, Bool_.N, 186, "º");
|
||||
Add_name(rv, Bool_.N, 216, "Ø");
|
||||
Add_name(rv, Bool_.N, 248, "ø");
|
||||
Add_name(rv, Bool_.N, 213, "Õ");
|
||||
Add_name(rv, Bool_.N, 245, "õ");
|
||||
Add_name(rv, Bool_.N, 8855, "⊗");
|
||||
Add_name(rv, Bool_.N, 214, "Ö");
|
||||
Add_name(rv, Bool_.N, 246, "ö");
|
||||
Add_name(rv, Bool_.N, 182, "¶");
|
||||
Add_name(rv, Bool_.N, 8706, "∂");
|
||||
Add_name(rv, Bool_.N, 8240, "‰");
|
||||
Add_name(rv, Bool_.N, 8869, "⊥");
|
||||
Add_name(rv, Bool_.N, 934, "Φ");
|
||||
Add_name(rv, Bool_.N, 966, "φ");
|
||||
Add_name(rv, Bool_.N, 928, "Π");
|
||||
Add_name(rv, Bool_.N, 960, "π");
|
||||
Add_name(rv, Bool_.N, 982, "ϖ");
|
||||
Add_name(rv, Bool_.N, 177, "±");
|
||||
Add_name(rv, Bool_.N, 163, "£");
|
||||
Add_name(rv, Bool_.N, 8242, "′");
|
||||
Add_name(rv, Bool_.N, 8243, "″");
|
||||
Add_name(rv, Bool_.N, 8719, "∏");
|
||||
Add_name(rv, Bool_.N, 8733, "∝");
|
||||
Add_name(rv, Bool_.N, 936, "Ψ");
|
||||
Add_name(rv, Bool_.N, 968, "ψ");
|
||||
Add_name(rv, Bool_.N, 34, """);
|
||||
Add_name(rv, Bool_.N, 8730, "√");
|
||||
Add_name(rv, Bool_.N, 9002, "⟩");
|
||||
Add_name(rv, Bool_.N, 187, "»");
|
||||
Add_name(rv, Bool_.N, 8594, "→");
|
||||
Add_name(rv, Bool_.N, 8658, "⇒");
|
||||
Add_name(rv, Bool_.N, 8969, "⌉");
|
||||
Add_name(rv, Bool_.N, 8221, "”");
|
||||
Add_name(rv, Bool_.N, 8476, "ℜ");
|
||||
Add_name(rv, Bool_.N, 174, "®");
|
||||
Add_name(rv, Bool_.N, 8971, "⌋");
|
||||
Add_name(rv, Bool_.N, 929, "Ρ");
|
||||
Add_name(rv, Bool_.N, 961, "ρ");
|
||||
Add_name(rv, Bool_.N, 8207, "‏");
|
||||
Add_name(rv, Bool_.N, 8250, "›");
|
||||
Add_name(rv, Bool_.N, 8217, "’");
|
||||
Add_name(rv, Bool_.N, 8218, "‚");
|
||||
Add_name(rv, Bool_.N, 352, "Š");
|
||||
Add_name(rv, Bool_.N, 353, "š");
|
||||
Add_name(rv, Bool_.N, 8901, "⋅");
|
||||
Add_name(rv, Bool_.N, 167, "§");
|
||||
Add_name(rv, Bool_.N, 173, "­");
|
||||
Add_name(rv, Bool_.N, 931, "Σ");
|
||||
Add_name(rv, Bool_.N, 963, "σ");
|
||||
Add_name(rv, Bool_.N, 962, "ς");
|
||||
Add_name(rv, Bool_.N, 8764, "∼");
|
||||
Add_name(rv, Bool_.N, 9824, "♠");
|
||||
Add_name(rv, Bool_.N, 8834, "⊂");
|
||||
Add_name(rv, Bool_.N, 8838, "⊆");
|
||||
Add_name(rv, Bool_.N, 8721, "∑");
|
||||
Add_name(rv, Bool_.N, 8835, "⊃");
|
||||
Add_name(rv, Bool_.N, 185, "¹");
|
||||
Add_name(rv, Bool_.N, 178, "²");
|
||||
Add_name(rv, Bool_.N, 179, "³");
|
||||
Add_name(rv, Bool_.N, 8839, "⊇");
|
||||
Add_name(rv, Bool_.N, 223, "ß");
|
||||
Add_name(rv, Bool_.N, 932, "Τ");
|
||||
Add_name(rv, Bool_.N, 964, "τ");
|
||||
Add_name(rv, Bool_.N, 8756, "∴");
|
||||
Add_name(rv, Bool_.N, 920, "Θ");
|
||||
Add_name(rv, Bool_.N, 952, "θ");
|
||||
Add_name(rv, Bool_.N, 977, "ϑ");
|
||||
Add_name(rv, Bool_.N, 8201, " ");
|
||||
Add_name(rv, Bool_.N, 222, "Þ");
|
||||
Add_name(rv, Bool_.N, 254, "þ");
|
||||
Add_name(rv, Bool_.N, 732, "˜");
|
||||
Add_name(rv, Bool_.N, 215, "×");
|
||||
Add_name(rv, Bool_.N, 8482, "™");
|
||||
Add_name(rv, Bool_.N, 218, "Ú");
|
||||
Add_name(rv, Bool_.N, 250, "ú");
|
||||
Add_name(rv, Bool_.N, 8593, "↑");
|
||||
Add_name(rv, Bool_.N, 8657, "⇑");
|
||||
Add_name(rv, Bool_.N, 219, "Û");
|
||||
Add_name(rv, Bool_.N, 251, "û");
|
||||
Add_name(rv, Bool_.N, 217, "Ù");
|
||||
Add_name(rv, Bool_.N, 249, "ù");
|
||||
Add_name(rv, Bool_.N, 168, "¨");
|
||||
Add_name(rv, Bool_.N, 978, "ϒ");
|
||||
Add_name(rv, Bool_.N, 933, "Υ");
|
||||
Add_name(rv, Bool_.N, 965, "υ");
|
||||
Add_name(rv, Bool_.N, 220, "Ü");
|
||||
Add_name(rv, Bool_.N, 252, "ü");
|
||||
Add_name(rv, Bool_.N, 8472, "℘");
|
||||
Add_name(rv, Bool_.N, 926, "Ξ");
|
||||
Add_name(rv, Bool_.N, 958, "ξ");
|
||||
Add_name(rv, Bool_.N, 221, "Ý");
|
||||
Add_name(rv, Bool_.N, 253, "ý");
|
||||
Add_name(rv, Bool_.N, 165, "¥");
|
||||
Add_name(rv, Bool_.N, 376, "Ÿ");
|
||||
Add_name(rv, Bool_.N, 255, "ÿ");
|
||||
Add_name(rv, Bool_.N, 918, "Ζ");
|
||||
Add_name(rv, Bool_.N, 950, "ζ");
|
||||
Add_name(rv, Bool_.N, 8205, "‍");
|
||||
Add_name(rv, Bool_.N, 8204, "‌");
|
||||
Add_prefix(rv, Gfh_entity_itm.Tid_num_hex, "#x");
|
||||
Add_prefix(rv, Gfh_entity_itm.Tid_num_hex, "#X");
|
||||
Add_prefix(rv, Gfh_entity_itm.Tid_num_dec, "#");
|
||||
return rv;
|
||||
}
|
||||
private static void Add_name(Btrie_slim_mgr trie, boolean tid_is_xowa, int char_int, String xml_name_str) {
|
||||
byte itm_tid = tid_is_xowa ? Gfh_entity_itm.Tid_name_xowa : Gfh_entity_itm.Tid_name_std;
|
||||
byte[] xml_name_bry = Bry_.new_a7(xml_name_str);
|
||||
byte[] key = Bry_.Mid(xml_name_bry, 1, xml_name_bry.length); // ignore & for purpose of trie; EX: "amp;"; NOTE: must keep trailing ";" else "& " will be valid;
|
||||
trie.Add_obj(key, new Gfh_entity_itm(itm_tid, char_int, xml_name_bry));
|
||||
}
|
||||
private static void Add_prefix(Btrie_slim_mgr trie, byte prefix_type, String prefix) {
|
||||
byte[] prefix_ary = Bry_.new_u8(prefix);
|
||||
Gfh_entity_itm itm = new Gfh_entity_itm(prefix_type, Gfh_entity_itm.Char_int_null, prefix_ary);
|
||||
trie.Add_obj(prefix_ary, itm);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user