diff --git a/400_xowa/src/gplx/xowa/mediawiki/XophpArray.java b/400_xowa/src/gplx/xowa/mediawiki/XophpArray.java index 154e076db..a42a664a4 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/XophpArray.java +++ b/400_xowa/src/gplx/xowa/mediawiki/XophpArray.java @@ -20,17 +20,20 @@ import gplx.Bry_bfr; import gplx.Bry_bfr_; import gplx.Char_; import gplx.Int_; +import gplx.List_adp; +import gplx.List_adp_; import gplx.Object_; import gplx.Ordered_hash; import gplx.Ordered_hash_; import gplx.Type_; -import gplx.core.brys.*; +import gplx.core.brys.Bry_bfr_able; +import gplx.core.strings.String_bldr; +import gplx.core.strings.String_bldr_; import java.util.Iterator; -import java.util.function.Consumer; // REF.PHP: https://www.php.net/manual/en/language.types.array.php -// Will also will have static functions but "array_" will be stripped; REF.PHP: https://www.php.net/manual/en/ref.array.php +// also has static functions; REF.PHP: https://www.php.net/manual/en/ref.array.php public class XophpArray implements Bry_bfr_able, Iterable { private final Ordered_hash hash = Ordered_hash_.New(); private int newMemberIdx; @@ -41,65 +44,39 @@ public class XophpArray implements Bry_bfr_able, Iterable { internalPointerIndex = 0; } public int Len() {return hash.Len();} - public int count() {return hash.Len();} - public boolean count_bool() {return hash.Len() > 0;} - public boolean isset(String key) {return hash.Has(key);} - public boolean isset(int idx) {return idx >= 0 && idx < hash.Count();} - public boolean in_array(String v) {return Has(v);} - public Object end() { - int len = hash.Len(); - return len == 0 ? null : ((XophpArrayItm)hash.Get_at(len - 1)).Val(); - } - public boolean Eq_to_new() {return hash.Count() == 0;}// same as "array === []" - public void unset(int key) {unset(Int_.To_str(key));} - public void unset(String key) { - hash.Del(key); - } - public Object pop() {// "array_pop" - int pos = this.count() - 1; - if (pos < 0) return null; - XophpArrayItm itm = (XophpArrayItm)hash.Get_at(pos); - this.Del_at(pos); - return itm.Val(); - } - // REF.PHP: https://www.php.net/manual/en/function.array-values.php - public XophpArray values() { - XophpArray rv = new XophpArray(); - int len = this.count(); - for (int i = 0; i < len; i++) { - rv.Add(i, this.Get_at(i)); - } - return rv; + public boolean Has_obj(Object key) {return Has(Object_.Xto_str_strict_or_null(key));} + public boolean Has(String key) { + return hash.Has(key); } public XophpArray Add(T val) { int key = newMemberIdx++; - Set(XophpArrayItm.New_int(key, val)); + Set(XophpArrayItm.NewInt(key, val)); return this; } public XophpArray Add(int key, Object val) { newMemberIdx = key + 1; - Set(XophpArrayItm.New_int(key, val)); + Set(XophpArrayItm.NewInt(key, val)); return this; } public XophpArray Add(double key, Object val) { int key_as_int = (int)key; newMemberIdx = key_as_int + 1; - Set(XophpArrayItm.New_int(key_as_int, val)); + Set(XophpArrayItm.NewInt(key_as_int, val)); return this; } public XophpArray Add(boolean key, Object val) { int key_as_int = key ? 1 : 0; newMemberIdx = key_as_int + 1; - Set(XophpArrayItm.New_int(key_as_int, val)); + Set(XophpArrayItm.NewInt(key_as_int, val)); return this; } public XophpArray Add(String key, Object val) { int key_as_int = Int_.Parse_or(key, Int_.Min_value); if (key_as_int == Int_.Min_value) { - Set(XophpArrayItm.New_str(key, val)); + Set(XophpArrayItm.NewStr(key, val)); } else { - Set(XophpArrayItm.New_int(key_as_int, val)); + Set(XophpArrayItm.NewInt(key_as_int, val)); newMemberIdx = key_as_int + 1; } return this; @@ -124,7 +101,6 @@ public class XophpArray implements Bry_bfr_able, Iterable { return Type_.Eq_by_obj(rv, XophpArray.class) ? (XophpArray)rv : null; } public XophpArray Get_at_ary(int i) {return (XophpArray)Get_at(i);} - public boolean Get_at_bool(int i) {return Bool_.Cast(Get_at(i));} public int Get_at_int(int i) {return Int_.Cast(Get_at(i));} public String Get_at_str(int i) {return (String)Get_at(i);} public Object Get_at(int i) { @@ -136,12 +112,6 @@ public class XophpArray implements Bry_bfr_able, Iterable { if (i < 0 || i >= hash.Len()) return null; return (XophpArrayItm)hash.Get_at(i); } - public void Del_at(int i) { - XophpArrayItm itm = (XophpArrayItm)hash.Get_at(i); - if (itm != null) { - hash.Del(itm.Key()); - } - } public Object Get_by_obj(Object key) {return Get_by(Object_.Xto_str_strict_or_null(key));} public Object Get_by(int key) {return Get_by(Int_.To_str(key));} public boolean Get_by_bool_or(String key, boolean or) {Object rv = this.Get_by(key); return rv == null ? or : Bool_.Cast(rv);} @@ -163,21 +133,32 @@ public class XophpArray implements Bry_bfr_able, Iterable { public XophpArray Get_by_ary(String key) {return (XophpArray)this.Get_by(key);} public String Get_by_str(char key) {return (String)this.Get_by(Char_.To_str(key));} public String Get_by_str(int key) {return (String)this.Get_by(Int_.To_str(key));} - public String Get_by_str_or(String key, String or) {Object rv = this.Get_by(key); return rv == null ? or : (String)rv;} public String Get_by_str(String key) {return (String)this.Get_by(key);} public T Get_by(String key) { XophpArrayItm itm = (XophpArrayItm)hash.Get_by(key); return itm == null ? null : (T)itm.Val(); } public void Set(int key, Object val) { - this.Set(XophpArrayItm.New_int(key, val)); + this.Set(XophpArrayItm.NewInt(key, val)); } public void Set(String key, Object val) { - this.Set(XophpArrayItm.New_str(key, val)); + this.Set(XophpArrayItm.NewStr(key, val)); } - public boolean Has_obj(Object key) {return Has(Object_.Xto_str_strict_or_null(key));} - public boolean Has(String key) { - return hash.Has(key); + private void Set(XophpArrayItm itm) { + String key = itm.Key(); + XophpArrayItm cur = (XophpArrayItm)hash.Get_by(key); + if (cur == null) { + hash.Add(key, itm); + } + else { + cur.Val_(itm.Val()); + } + } + public void Del_at(int i) { + XophpArrayItm itm = (XophpArrayItm)hash.Get_at(i); + if (itm != null) { + hash.Del(itm.Key()); + } } public XophpArrayItm[] To_ary() { return (XophpArrayItm[])hash.To_ary(XophpArrayItm.class); @@ -193,16 +174,6 @@ public class XophpArray implements Bry_bfr_able, Iterable { itm.To_bfr(bfr); } } - private void Set(XophpArrayItm itm) { - String key = itm.Key(); - XophpArrayItm cur = (XophpArrayItm)hash.Get_by(key); - if (cur == null) { - hash.Add(key, itm); - } - else { - cur.Val_(itm.Val()); - } - } public void Itm_str_concat_end(int idx, String v) { String itm = (String)this.Get_at(idx); itm += v; @@ -275,6 +246,80 @@ public class XophpArray implements Bry_bfr_able, Iterable { } } + // DEPRECATE:use XophpArray + public static boolean popBoolOrN(List_adp list) {return Bool_.Cast(List_adp_.Pop_or(list, false));} + public static byte[] popBryOrNull(List_adp list) {return (byte[])List_adp_.Pop_or(list, null);} + public static String[] array_keys_str(Ordered_hash array) { + int len = array.Len(); + String[] rv = new String[len]; + for (int i = 0; i < len; i++) { + rv[i] = (String)array.Get_at(i); + } + return rv; + } + public static byte[][] array_keys_bry(Ordered_hash array) { + int len = array.Len(); + byte[][] rv = new byte[len][]; + for (int i = 0; i < len; i++) { + rv[i] = (byte[])array.Get_at(i); + } + return rv; + } + public static boolean array_key_exists(int key, Ordered_hash array) {return array.Has(key);} + public static boolean array_key_exists(String key, Ordered_hash array) {return array.Has(key);} + public static boolean array_key_exists(byte[] key, Ordered_hash array) {return array.Has(key);} + public static boolean empty(Ordered_hash array) { + return array.Len() == 0; + } + + // ********** + // * STATIC * + // ********** + public static final XophpArray False = null; // handles code like "if ($var === false)" where var is an Object; + public static XophpArray New(Object... vals) { + XophpArray rv = new XophpArray(); + for (Object val : vals) + rv.Add(val); + return rv; + } + public static boolean Eq_to_new(XophpArray array) {return array.hash.Count() == 0;}// same as "array === []" + + public static boolean empty(XophpArray array) {return array.Len() == 0;} + public static int count(XophpArray array) {return array.Len();} + public static boolean count_bool(XophpArray array) {return array.Len() > 0;} + + public static boolean isset(XophpArray array, int key) {return array.Get_at(key) != null;} + public static boolean isset(XophpArray array, String key) {return array.Get_by(key) != null;} + public static boolean is_array(Object array) {return XophpType_.instance_of(array, XophpArray.class);} + public static void unset(XophpArray array, String key) {array.hash.Del(key);} + public static void unset(XophpArray array, int key) {array.hash.Del(Int_.To_str(key));} + public static void unset(Ordered_hash array, Object key) {array.Del(key);} + public static boolean array_key_exists(String key, XophpArray array) {return array.Has(key);} + public static boolean array_key_exists(int key, XophpArray array) {return array.Has(Int_.To_str(key));} + + public static Object array_pop(XophpArray array) {// "array_pop" + int pos = array.Len() - 1; + if (pos < 0) return null; + XophpArrayItm itm = (XophpArrayItm)array.hash.Get_at(pos); + array.Del_at(pos); + return itm.Val(); + } + public static Object end(XophpArray array) { + int len = array.Len(); + return len == 0 ? null : ((XophpArrayItm)array.hash.Get_at(len - 1)).Val(); + } + + // REF.PHP: https://www.php.net/manual/en/function.array-values.php + public static XophpArray array_values(XophpArray array) { + XophpArray rv = new XophpArray(); + int len = array.Len(); + for (int i = 0; i < len; i++) { + XophpArrayItm itm = array.Get_at_itm(i); + rv.Add(i, itm.Val()); + } + return rv; + } + // REF.PHP:https://www.php.net/manual/en/function.reset.php private int internalPointerIndex = 0; private Object internalPointerAdd(int v) { @@ -292,14 +337,245 @@ public class XophpArray implements Bry_bfr_able, Iterable { return array.internalPointerAdd(1); } - public static boolean is_array(Object val) { - return Type_.Eq_by_obj(val, XophpArray.class); - } - public static final XophpArray False = null; // handles code like "if ($var === false)" where var is an Object; - public static XophpArray New(Object... vals) { + // REF.PHP:https://www.php.net/manual/en/function.array-merge.php + public static XophpArray array_merge(XophpArray... vals) { XophpArray rv = new XophpArray(); - for (Object val : vals) - rv.Add(val); + for (XophpArray ary : vals) { + XophpArrayItm[] itms = ary.To_ary(); + for (XophpArrayItm itm : itms) { + array_itm_add(rv, itm); + } + } return rv; } + // REF.PHP:https://www.php.net/manual/en/function.array-merge.php + // "If you want to append array elements from the second array to the first array while not overwriting the elements from the first array and not re-indexing, use the + array union operator:" + public static XophpArray array_add(XophpArray lhs, XophpArray... vals) { + for (XophpArray ary : vals) { + XophpArrayItm[] itms = ary.To_ary(); + for (XophpArrayItm itm : itms) { + if (lhs.Has(itm.Key())) { + continue; + } + else { + lhs.Add(itm.Key(), itm.Val()); + } + } + } + return lhs; + } + private static void array_itm_add(XophpArray ary, XophpArrayItm itm) { + if (itm.KeyIsInt()) + ary.Add(itm.Val()); + else + ary.Add(itm.Key(), itm.Val()); + } + public static XophpArray array_splice(XophpArray src, int bgn) {return array_splice(src, bgn, src.Len(), null);} + public static XophpArray array_splice(XophpArray src, int bgn, int len) {return array_splice(src, bgn, len , null);} + public static XophpArray array_splice(XophpArray src, int bgn, int len, XophpArray repl) { + // get itms before clearing it + int src_len = src.Len(); + XophpArrayItm[] itms = src.To_ary(); + src.Clear(); + + // calc bgn + if (bgn < 0) { // negative bgn should be adusted from src_len; EX: -1 means start at last item + bgn += src_len; + if (bgn < 0) // large negative bgn should be capped at 0; EX: -99 + bgn = 0; + } + else if (bgn > src_len) // large positive bgn should be capped at src_len; EX: 99 + bgn = src_len; + + // add src from 0 to bgn + for (int i = 0; i < bgn; i++) { + array_itm_add(src, itms[i]); + } + + // add repl + if (repl != null) { + XophpArrayItm[] repl_itms = repl.To_ary(); + for (XophpArrayItm itm : repl_itms) { + array_itm_add(src, itm); + } + } + + // calc end + int end; + if (len < 0) { // negative len should be adjusted from src_len; EX: -1 means stop at last itm + end = src_len + len; + if (end < 0) // large_negative len should be capped at 0; EX: -99 + end = 0; + } + else { // positive len should be added to bgn to find end + end = bgn + len; + } + if (end < bgn) // end should never be less than bgn; EX: splice(1, -99) + end = bgn; + else if (end > src_len) // end should not be more then end; + end = src_len; + + // add src from end to len + for (int i = end; i < src_len; i++) { + array_itm_add(src, itms[i]); + } + + // add del to rv + XophpArray rv = new XophpArray(); + for (int i = bgn; i < end; i++) { + array_itm_add(rv, itms[i]); + } + return rv; + } + // ( array $array , int $offset [, int $length = NULL [, boolean $preserve_keys = FALSE ]] ) : + public static XophpArray array_slice(XophpArray array, int offset) {return array_slice(array, offset, array.Len());} + public static XophpArray array_slice(XophpArray array, int offset, int length) { + XophpArray rv = new XophpArray(); + int end = offset + length; + for (int i = offset; i< end; i++) { + rv.Add(array.Get_at(i)); + } + return rv; + } + + public static XophpArray array_keys(XophpArray array) { + XophpArray rv = XophpArray.New(); + int len = array.Len(); + for (int i = 0; i < len; i++) { + XophpArrayItm itm = array.Get_at_itm(i); + rv.Add(itm.Key()); + } + return rv; + } + + + // REF.PHP:https://www.php.net/manual/en/function.array-map.php + public static XophpArray array_map(XophpCallbackOwner callback_owner, String method, XophpArray array) { + XophpArray rv = XophpArray.New(); + int len = array.Len(); + for (int i = 0; i < len; i++) { + String itm = array.Get_at_str(i); + rv.Add((String)callback_owner.Call(method, itm)); + } + return rv; + } + + // REF.PHP:https://www.php.net/manual/en/function.array-flip.php + public static XophpArray array_flip(XophpArray array) { + XophpArray rv = XophpArray.New(); + int len = array.Len(); + for (int i = 0; i < len; i++) { + XophpArrayItm itm = array.Get_at_itm(i); + rv.Set(Object_.Xto_str_strict_or_null(itm.Val()), itm.Key()); + } + return rv; + } + + // REF.PHP:https://www.php.net/manual/en/function.implode.php + public static String implode(String glue, XophpArray pieces) { + String_bldr sb = String_bldr_.new_(); + int len = pieces.Len(); + for (int i = 0; i < len; i++) { + if (i != 0) sb.Add(glue); + sb.Add(pieces.Get_at_str(i)); + } + return sb.To_str_and_clear(); + } + + // REF.PHP: https://www.php.net/manual/en/function.in-array.php + public static boolean in_array(Object needle, XophpArray haystack) {return in_array(needle, haystack, false);} + public static boolean in_array(Object needle, XophpArray haystack, boolean strict) { + // if strict, cache needleType + Class needleType = null; + if (strict && needle != null) { + needleType = Type_.Type_by_obj(needle); + } + + // loop haystack to find match + int haystack_len = haystack.Len(); + for (int i = 0; i < haystack_len; i++) { + Object val = haystack.Get_at(i); + + // if strict, compare types + if (strict) { + if (needle != null && val == null) { + return false; + } + else if (needle == null && val != null) { + return false; + } + else if (needle != null && val != null) { + if (!Type_.Eq_by_obj(val, needleType)) { + return false; + } + } + } + + // compare objects + if (Object_.Eq(needle, val)) { + return true; + } + } + return false; + } + + // REF.PHP: https://www.php.net/manual/en/function.array-shift.php + // Returns the shifted value, or NULL if array is empty or is not an array. + public static Object array_shift(XophpArray array) { + if (array == null) { + return null; + } + int len = array.Len(); + if (len == 0) { + return null; + } + XophpArrayItm[] itms = array.To_ary(); + array.Clear(); + int idx = 0; + for (int i = 1; i < len; i++) { + XophpArrayItm itm = itms[i]; + if (itm.KeyIsInt()) { + array.Add(idx++, itm.Val()); + } + else { + array.Add(itm.Key(), itm.Val()); + } + } + return itms[0].Val(); + } + + // REF.PHP: https://www.php.net/manual/en/function.array-filter.php + public static final int ARRAY_FILTER_USE_BOTH = 1, ARRAY_FILTER_USE_KEY = 2, ARRAY_FILTER_USE_VAL = 0; // XO:USE_VAL is not PHP + public static XophpArray array_filter(XophpArray array) {return array_filter(array, NULL_CALLBACK, 0);} + public static XophpArray array_filter(XophpArray array, XophpCallback callback) {return array_filter(array, callback, 0);} + public static XophpArray array_filter(XophpArray array, XophpCallback callback, int flag) { + XophpArray rv = new XophpArray(); + int len = array.Len(); + for (int i = 0; i < len; i++) { + XophpArrayItm itm = array.Get_at_itm(i); + boolean filter = false; + switch (flag) { + case ARRAY_FILTER_USE_VAL: + filter = Bool_.Cast(callback.Call(itm.Val())); + break; + case ARRAY_FILTER_USE_KEY: + filter = Bool_.Cast(callback.Call(itm.Key())); + break; + case ARRAY_FILTER_USE_BOTH: + filter = Bool_.Cast(callback.Call(itm.Key(), itm.Val())); + break; + } + if (filter) + rv.Add(itm.Key(), itm.Val()); + } + return rv; + } + public static XophpCallback NULL_CALLBACK = new XophpCallback(new XophpArray.XophpArrayFilterNullCallback(), ""); + static class XophpArrayFilterNullCallback implements XophpCallbackOwner { + public Object Call(String method, Object... args) { + if (args.length != 1) throw new XophpRuntimeException("ArrayFilterNullCallback requires 1 arg"); + Object arg = args[0]; + return !XophpObject_.empty_obj(arg); + } + } } diff --git a/400_xowa/src/gplx/xowa/mediawiki/XophpArrayItm.java b/400_xowa/src/gplx/xowa/mediawiki/XophpArrayItm.java index 1d2afa237..e92310ccb 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/XophpArrayItm.java +++ b/400_xowa/src/gplx/xowa/mediawiki/XophpArrayItm.java @@ -1,30 +1,38 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ -package gplx.xowa.mediawiki; import gplx.*; import gplx.xowa.*; -import gplx.core.brys.*; +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2020 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ +package gplx.xowa.mediawiki; + +import gplx.Bool_; +import gplx.Bry_bfr; +import gplx.Int_; +import gplx.Object_; +import gplx.String_; +import gplx.Type_; +import gplx.core.brys.Bry_bfr_able; + public class XophpArrayItm implements Bry_bfr_able { - XophpArrayItm(boolean key_is_int, int key_as_int, String key, Object val) { - this.key_is_int = key_is_int; - this.key_as_int = key_as_int; + XophpArrayItm(boolean keyIsInt, int keyAsInt, String key, Object val) { + this.keyIsInt = keyIsInt; + this.keyAsInt = keyAsInt; this.key = key; this.val = val; } - public boolean Key_is_int() {return key_is_int;} private final boolean key_is_int; - public int Key_as_int() {return key_as_int;} private final int key_as_int; - public String Key() {return key;} private final String key; + public boolean KeyIsInt() {return keyIsInt;} private final boolean keyIsInt; + public int KeyAsInt() {return keyAsInt;} private final int keyAsInt; + public String Key() {return key;} private final String key; public Object Val() {return val;} public void Val_(Object v) {this.val = v;} private Object val; public void To_bfr(Bry_bfr bfr) { @@ -44,8 +52,8 @@ public class XophpArrayItm implements Bry_bfr_able { XophpArrayItm comp = (XophpArrayItm)obj; // compare key - if (key_is_int) { - if (this.key_as_int != comp.key_as_int) + if (keyIsInt) { + if (this.keyAsInt != comp.keyAsInt) return false; } else { @@ -65,11 +73,12 @@ public class XophpArrayItm implements Bry_bfr_able { } @Override public int hashCode() { int rv = 0; - rv = (31 * rv) + (key_is_int ? key_as_int : key.hashCode()); + rv = (31 * rv) + (keyIsInt ? keyAsInt : key.hashCode()); rv = (31 * rv) + val.hashCode(); return rv; } - public static XophpArrayItm New_int(int key, Object val) {return new XophpArrayItm(Bool_.Y, key, Int_.To_str(key), val);} - public static XophpArrayItm New_str(String key, Object val) {return new XophpArrayItm(Bool_.N, -1, key , val);} + private static final int NULL_KEY_INT = -1; + public static XophpArrayItm NewInt(int key, Object val) {return new XophpArrayItm(Bool_.Y, key, Int_.To_str(key), val);} + public static XophpArrayItm NewStr(String key, Object val) {return new XophpArrayItm(Bool_.N, NULL_KEY_INT, key, val);} } diff --git a/400_xowa/src/gplx/xowa/mediawiki/XophpArray_.java b/400_xowa/src/gplx/xowa/mediawiki/XophpArray_.java deleted file mode 100644 index 83fc627bc..000000000 --- a/400_xowa/src/gplx/xowa/mediawiki/XophpArray_.java +++ /dev/null @@ -1,325 +0,0 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ -package gplx.xowa.mediawiki; - -import gplx.*; -import gplx.core.strings.*; -public class XophpArray_ { - // REF.PHP:https://www.php.net/manual/en/function.array-merge.php - public static XophpArray array_merge(XophpArray... vals) { - XophpArray rv = new XophpArray(); - for (XophpArray ary : vals) { - XophpArrayItm[] itms = ary.To_ary(); - for (XophpArrayItm itm : itms) { - array_itm_add(rv, itm); - } - } - return rv; - } - // REF.PHP:https://www.php.net/manual/en/function.array-merge.php - // "If you want to append array elements from the second array to the first array while not overwriting the elements from the first array and not re-indexing, use the + array union operator:" - public static XophpArray array_add(XophpArray lhs, XophpArray... vals) { - for (XophpArray ary : vals) { - XophpArrayItm[] itms = ary.To_ary(); - for (XophpArrayItm itm : itms) { - if (lhs.Has(itm.Key())) { - continue; - } - else { - lhs.Add(itm.Key(), itm.Val()); - } - } - } - return lhs; - } - private static void array_itm_add(XophpArray ary, XophpArrayItm itm) { - if (itm.Key_is_int()) - ary.Add(itm.Val()); - else - ary.Add(itm.Key(), itm.Val()); - } - public static XophpArray array_splice(XophpArray src, int bgn) {return array_splice(src, bgn, src.count(), null);} - public static XophpArray array_splice(XophpArray src, int bgn, int len) {return array_splice(src, bgn, len , null);} - public static XophpArray array_splice(XophpArray src, int bgn, int len, XophpArray repl) { - // get itms before clearing it - int src_len = src.count(); - XophpArrayItm[] itms = src.To_ary(); - src.Clear(); - - // calc bgn - if (bgn < 0) { // negative bgn should be adusted from src_len; EX: -1 means start at last item - bgn += src_len; - if (bgn < 0) // large negative bgn should be capped at 0; EX: -99 - bgn = 0; - } - else if (bgn > src_len) // large positive bgn should be capped at src_len; EX: 99 - bgn = src_len; - - // add src from 0 to bgn - for (int i = 0; i < bgn; i++) { - array_itm_add(src, itms[i]); - } - - // add repl - if (repl != null) { - XophpArrayItm[] repl_itms = repl.To_ary(); - for (XophpArrayItm itm : repl_itms) { - array_itm_add(src, itm); - } - } - - // calc end - int end; - if (len < 0) { // negative len should be adjusted from src_len; EX: -1 means stop at last itm - end = src_len + len; - if (end < 0) // large_negative len should be capped at 0; EX: -99 - end = 0; - } - else { // positive len should be added to bgn to find end - end = bgn + len; - } - if (end < bgn) // end should never be less than bgn; EX: splice(1, -99) - end = bgn; - else if (end > src_len) // end should not be more then end; - end = src_len; - - // add src from end to len - for (int i = end; i < src_len; i++) { - array_itm_add(src, itms[i]); - } - - // add del to rv - XophpArray rv = new XophpArray(); - for (int i = bgn; i < end; i++) { - array_itm_add(rv, itms[i]); - } - return rv; - } - // ( array $array , int $offset [, int $length = NULL [, boolean $preserve_keys = FALSE ]] ) : - public static XophpArray array_slice(XophpArray array, int offset) {return array_slice(array, offset, array.count());} - public static XophpArray array_slice(XophpArray array, int offset, int length) { - XophpArray rv = new XophpArray(); - int end = offset + length; - for (int i = offset; i< end; i++) { - rv.Add(array.Get_at(i)); - } - return rv; - } - - public static XophpArray array_keys(XophpArray array) { - XophpArray rv = XophpArray.New(); - int len = array.count(); - for (int i = 0; i < len; i++) { - XophpArrayItm itm = array.Get_at_itm(i); - rv.Add(itm.Key()); - } - return rv; - } - - public static XophpArray array_values(XophpArray array) { - XophpArray rv = XophpArray.New(); - int len = array.count(); - for (int i = 0; i < len; i++) { - XophpArrayItm itm = array.Get_at_itm(i); - rv.Add(itm.Val()); - } - return rv; - } - - // DEPRECATE:use XophpArray - public static boolean popBoolOrN(List_adp list) {return Bool_.Cast(List_adp_.Pop_or(list, false));} - public static byte[] popBryOrNull(List_adp list) {return (byte[])List_adp_.Pop_or(list, null);} - public static String[] array_keys_str(Ordered_hash array) { - int len = array.Len(); - String[] rv = new String[len]; - for (int i = 0; i < len; i++) { - rv[i] = (String)array.Get_at(i); - } - return rv; - } - public static byte[][] array_keys_bry(Ordered_hash array) { - int len = array.Len(); - byte[][] rv = new byte[len][]; - for (int i = 0; i < len; i++) { - rv[i] = (byte[])array.Get_at(i); - } - return rv; - } - public static boolean array_key_exists(int key, Ordered_hash array) {return array.Has(key);} - public static boolean array_key_exists(String key, Ordered_hash array) {return array.Has(key);} - public static boolean array_key_exists(byte[] key, Ordered_hash array) {return array.Has(key);} - public static boolean empty(Ordered_hash array) { - return array.Len() == 0; - } - public static boolean empty(XophpArray array) { - return array.Len() == 0; - } - - public static boolean array_key_exists(String key, XophpArray array) {return array.Has(key);} - public static boolean array_key_exists(int key, XophpArray array) {return array.Has(Int_.To_str(key));} - - public static void unset(XophpArray array, String s) {array.unset(s);} - public static void unset(XophpArray array, int i) {array.unset(i);} - public static void unset(Ordered_hash array, Object key) { - array.Del(key); - } - public static Object[] unset_by_idx(Object[] ary, int idx) { - int ary_len = ary.length; - Object[] rv = new Object[ary_len]; - for (int i = 0; i < idx; i++) - rv[i] = ary[i]; - for (int i = idx + 1; i < ary_len; i++) - rv[i - 1] = ary[i]; - return rv; - } - - // REF.PHP:https://www.php.net/manual/en/function.array-map.php - public static XophpArray array_map(XophpCallbackOwner callback_owner, String method, XophpArray array) { - XophpArray rv = XophpArray.New(); - int len = array.count(); - for (int i = 0; i < len; i++) { - String itm = array.Get_at_str(i); - rv.Add((String)callback_owner.Call(method, itm)); - } - return rv; - } - - // REF.PHP:https://www.php.net/manual/en/function.array-flip.php - public static XophpArray array_flip(XophpArray array) { - XophpArray rv = XophpArray.New(); - int len = array.count(); - for (int i = 0; i < len; i++) { - XophpArrayItm itm = array.Get_at_itm(i); - rv.Set(Object_.Xto_str_strict_or_null(itm.Val()), itm.Key()); - } - return rv; - } - - // REF.PHP:https://www.php.net/manual/en/function.implode.php - public static String implode(String glue, XophpArray pieces) { - String_bldr sb = String_bldr_.new_(); - int len = pieces.count(); - for (int i = 0; i < len; i++) { - if (i != 0) sb.Add(glue); - sb.Add(pieces.Get_at_str(i)); - } - return sb.To_str_and_clear(); - } - - public static int count(XophpArray array) {return array.count();} - public static boolean count_bool(XophpArray array) {return array.count_bool();} - public static Object array_pop(XophpArray array) {return array.pop();} - public static boolean isset(XophpArray array, int key) {return XophpObject_.isset_obj(array.Get_at(key));} - public static boolean isset(XophpArray array, String key) {return XophpObject_.isset_obj(array.Get_by(key));} - public static boolean is_array(Object array) {return XophpType_.instance_of(array, XophpArray.class);} - - // REF.PHP: https://www.php.net/manual/en/function.in-array.php - public static boolean in_array(Object needle, XophpArray haystack) {return in_array(needle, haystack, false);} - public static boolean in_array(Object needle, XophpArray haystack, boolean strict) { - // if strict, cache needleType - Class needleType = null; - if (strict && needle != null) { - needleType = Type_.Type_by_obj(needle); - } - - // loop haystack to find match - int haystack_len = haystack.Len(); - for (int i = 0; i < haystack_len; i++) { - Object val = haystack.Get_at(i); - - // if strict, compare types - if (strict) { - if (needle != null && val == null) { - return false; - } - else if (needle == null && val != null) { - return false; - } - else if (needle != null && val != null) { - if (!Type_.Eq_by_obj(val, needleType)) { - return false; - } - } - } - - // compare objects - if (Object_.Eq(needle, val)) { - return true; - } - } - return false; - } - - // REF.PHP: https://www.php.net/manual/en/function.array-shift.php - // Returns the shifted value, or NULL if array is empty or is not an array. - public static Object array_shift(XophpArray array) { - if (array == null) { - return null; - } - int len = array.Len(); - if (len == 0) { - return null; - } - XophpArrayItm[] itms = array.To_ary(); - array.Clear(); - int idx = 0; - for (int i = 1; i < len; i++) { - XophpArrayItm itm = itms[i]; - if (itm.Key_is_int()) { - array.Add(idx++, itm.Val()); - } - else { - array.Add(itm.Key(), itm.Val()); - } - } - return itms[0].Val(); - } - - // REF.PHP: https://www.php.net/manual/en/function.array-filter.php - public static final int ARRAY_FILTER_USE_BOTH = 1, ARRAY_FILTER_USE_KEY = 2, ARRAY_FILTER_USE_VAL = 0; // XO:USE_VAL is not PHP - public static XophpArray array_filter(XophpArray array) {return array_filter(array, XophpArrayFilterNullCallback.Instance, 0);} - public static XophpArray array_filter(XophpArray array, XophpCallback callback) {return array_filter(array, callback, 0);} - public static XophpArray array_filter(XophpArray array, XophpCallback callback, int flag) { - XophpArray rv = new XophpArray(); - int len = array.count(); - for (int i = 0; i < len; i++) { - XophpArrayItm itm = array.Get_at_itm(i); - boolean filter = false; - switch (flag) { - case ARRAY_FILTER_USE_VAL: - filter = Bool_.Cast(callback.Call(itm.Val())); - break; - case ARRAY_FILTER_USE_KEY: - filter = Bool_.Cast(callback.Call(itm.Key())); - break; - case ARRAY_FILTER_USE_BOTH: - filter = Bool_.Cast(callback.Call(itm.Key(), itm.Val())); - break; - } - if (filter) - rv.Add(itm.Key(), itm.Val()); - } - return rv; - } -} -class XophpArrayFilterNullCallback implements XophpCallbackOwner { - public Object Call(String method, Object... args) { - if (args.length != 1) throw new XophpRuntimeException("ArrayFilterNullCallback requires 1 arg"); - Object arg = args[0]; - return !XophpObject_.empty_obj(arg); - } - public static XophpCallback Instance = new XophpCallback(new XophpArrayFilterNullCallback(), ""); -} diff --git a/400_xowa/src/gplx/xowa/mediawiki/extensions/JsonConfig/includes/JCValue.java b/400_xowa/src/gplx/xowa/mediawiki/extensions/JsonConfig/includes/JCValue.java index 525550a50..46326aa06 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/extensions/JsonConfig/includes/JCValue.java +++ b/400_xowa/src/gplx/xowa/mediawiki/extensions/JsonConfig/includes/JCValue.java @@ -1,18 +1,18 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ package gplx.xowa.mediawiki.extensions.JsonConfig.includes; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; import gplx.xowa.mediawiki.extensions.*; import gplx.xowa.mediawiki.extensions.JsonConfig.*; import gplx.xowa.xtns.scribunto.*; import gplx.xowa.mediawiki.*; @@ -181,9 +181,9 @@ public class JCValue { else if (value_tid == Value_tid__ary && (fld_type == Type_ids_.Id__str || fld_type == Type_ids_.Id__int)) { tmp = value_as_ary.Get_by_obj(fld); if (fld_type == Type_ids_.Id__str) - value_as_ary.unset((String)fld); + XophpArray.unset(value_as_ary, (String)fld); else - value_as_ary.unset(Int_.Cast(fld)); + XophpArray.unset(value_as_ary, Int_.Cast(fld)); value.Del(fld); } else { diff --git a/400_xowa/src/gplx/xowa/mediawiki/extensions/Wikibase/lib/includes/Store/XomwWikiTextPropertyOrderProvider.java b/400_xowa/src/gplx/xowa/mediawiki/extensions/Wikibase/lib/includes/Store/XomwWikiTextPropertyOrderProvider.java index cc2bb6978..2d8c4b26e 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/extensions/Wikibase/lib/includes/Store/XomwWikiTextPropertyOrderProvider.java +++ b/400_xowa/src/gplx/xowa/mediawiki/extensions/Wikibase/lib/includes/Store/XomwWikiTextPropertyOrderProvider.java @@ -1,18 +1,18 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ package gplx.xowa.mediawiki.extensions.Wikibase.lib.includes.Store; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; import gplx.xowa.mediawiki.extensions.*; import gplx.xowa.mediawiki.extensions.Wikibase.*; import gplx.xowa.mediawiki.extensions.Wikibase.lib.*; import gplx.xowa.mediawiki.extensions.Wikibase.lib.includes.*; import gplx.langs.regxs.*; // REF.WBASE:2020-01-19 @@ -38,7 +38,7 @@ abstract class XomwWikiTextPropertyOrderProvider implements XomwPropertyOrderPro } XophpArray parsedList = this.parseList(pageContent); - return XophpArray_.array_flip(parsedList); + return XophpArray.array_flip(parsedList); } /** @@ -65,7 +65,7 @@ abstract class XomwWikiTextPropertyOrderProvider implements XomwPropertyOrderPro XophpRegex_.PREG_PATTERN_ORDER ); - XophpArray orderedProperties = XophpArray_.array_map(XophpString_.Callback_owner, "strtoupper", (XophpArray)orderedPropertiesMatches.Get_at_ary(1)); + XophpArray orderedProperties = XophpArray.array_map(XophpString_.Callback_owner, "strtoupper", (XophpArray)orderedPropertiesMatches.Get_at_ary(1)); return orderedProperties; } diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/XomwCategoryViewer.java b/400_xowa/src/gplx/xowa/mediawiki/includes/XomwCategoryViewer.java index 3701650db..4e8086281 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/XomwCategoryViewer.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/XomwCategoryViewer.java @@ -1,18 +1,18 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ package gplx.xowa.mediawiki.includes; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; // MW.SRC:1.33 public class XomwCategoryViewer {// extends ContextSource @@ -560,18 +560,18 @@ public class XomwCategoryViewer {// extends ContextSource // Kind of like array_flip() here, but we keep duplicates in an // array instead of dropping them. - int columns_len = columns.count(); + int columns_len = XophpArray.count(columns); for (int i = 0; i < columns_len; i++) { XophpArrayItm itm = columns.Get_at_itm(i); String article = itm.Key(); String charVal = (String)itm.Val(); - if (!colContents.isset((String)colContents.Get_by(charVal))) { + if (!XophpArray.isset(colContents, (String)colContents.Get_by(charVal))) { colContents.Set(charVal, XophpArray.New()); } colContents.Set(charVal, article); // colContents[char][] = article; } - int colContentsLen = colContents.count(); + int colContentsLen = colContents.Len(); for (int i = 0; i < colContentsLen; i++) { XophpArrayItm itm = columns.Get_at_itm(i); String charVal = itm.Key(); @@ -583,7 +583,7 @@ public class XomwCategoryViewer {// extends ContextSource ret += "\n"; ret += "
  • "; - ret += XophpArray_.implode("
  • \n
  • ", articlesItm); + ret += XophpArray.implode("
  • \n
  • ", articlesItm); ret += "
"; } diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/XomwHooks.java b/400_xowa/src/gplx/xowa/mediawiki/includes/XomwHooks.java index 95aa31c09..76ff6404c 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/XomwHooks.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/XomwHooks.java @@ -19,7 +19,7 @@ import gplx.String_; import gplx.core.primitives.String_obj_ref; import gplx.core.tests.GfoTestMethod; import gplx.xowa.mediawiki.XophpArray; -import gplx.xowa.mediawiki.XophpArray_; +import gplx.xowa.mediawiki.XophpArray; import gplx.xowa.mediawiki.XophpCallback; import gplx.xowa.mediawiki.XophpCallbackOwner; import gplx.xowa.mediawiki.XophpFatalException; @@ -71,7 +71,7 @@ public class XomwHooks { // throw new MWException('Cannot reset hooks in operation.'); // } - XophpArray_.unset(handlers, name); + XophpArray.unset(handlers, name); } /** @@ -99,12 +99,12 @@ public class XomwHooks { public static XophpArray getHandlers(String name) { if (!isRegistered(name)) { return XophpArray.New(); - } else if (!XophpArray_.isset(handlers, name)) { + } else if (!XophpArray.isset(handlers, name)) { return XomwDefaultSettings.wgHooks.Get_by_ary(name); - } else if (!XophpArray_.isset(XomwDefaultSettings.wgHooks, name)) { + } else if (!XophpArray.isset(XomwDefaultSettings.wgHooks, name)) { return handlers.Get_by_ary(name); } else { - return XophpArray_.array_merge(handlers.Get_by_ary(name), XomwDefaultSettings.wgHooks.Get_by_ary(name)); + return XophpArray.array_merge(handlers.Get_by_ary(name), XomwDefaultSettings.wgHooks.Get_by_ary(name)); } } @@ -123,7 +123,7 @@ public class XomwHooks { ) { XophpArray hook; // Turn non-array values into an array. (Can't use casting because of objects.) - if (!XophpArray_.is_array(hookObj)) { + if (!XophpArray.is_array(hookObj)) { hook = XophpArray.New(hookObj); } else { // XO: cast it to XophpArray @@ -135,11 +135,11 @@ public class XomwHooks { return null; } - if (XophpArray_.is_array(hook.Get_at(0))) { + if (XophpArray.is_array(hook.Get_at(0))) { // First element is an array, meaning the developer intended // the first element to be a callback. Merge it in so that // processing can be uniform. - hook = XophpArray_.array_merge(hook.Get_at_ary(0), XophpArray_.array_slice(hook, 1)); + hook = XophpArray.array_merge(hook.Get_at_ary(0), XophpArray.array_slice(hook, 1)); } /** @@ -150,10 +150,10 @@ public class XomwHooks { XophpCallback callback = null; if (XophpType_.instance_of(hook.Get_at(0), XophpCallback.class)) { // XophpClosure if (fname != null) fname.Val_("hook-" + event + "-closure"); - callback = (XophpCallback) XophpArray_.array_shift(hook); + callback = (XophpCallback) XophpArray.array_shift(hook); } else if (XophpObject_.is_object(hook.Get_at_str(0))) { - XophpCallbackOwner object = (XophpCallbackOwner)XophpArray_.array_shift(hook); - String method = (String)XophpArray_.array_shift(hook); + XophpCallbackOwner object = (XophpCallbackOwner)XophpArray.array_shift(hook); + String method = (String)XophpArray.array_shift(hook); // If no method was specified, default to on$event. if (XophpObject_.is_null(method)) { @@ -163,7 +163,7 @@ public class XomwHooks { if (fname != null) fname.Val_(XophpType_.get_class(object).getName() + "::" + method); callback = new XophpCallback(object, method); } else if (XophpString_.is_string(hook.Get_at(0))) { - throw new XomwMWException("XOMW does not support string callbacks! Should not have been passed here!; event={0}; fname={1}\n", event, XophpArray_.array_shift(hook)); + throw new XomwMWException("XOMW does not support string callbacks! Should not have been passed here!; event={0}; fname={1}\n", event, XophpArray.array_shift(hook)); } else { throw new XomwMWException("Unknown datatype in hooks for {0}\n", event); } @@ -181,7 +181,7 @@ public class XomwHooks { } // Call the hook. - XophpArray hook_args = XophpArray_.array_merge(hook, args); + XophpArray hook_args = XophpArray.array_merge(hook, args); return (String) XophpCallback.call_user_func_array(callback, hook_args); } /** @@ -211,7 +211,7 @@ public class XomwHooks { public static boolean run(String event, XophpArray args) {return run(event, args, null);} public static boolean run(String event, XophpArray args, String deprecatedVersion) { XophpArray handlers = getHandlers(event); - for (int i = 0; i < handlers.count(); i++) { + for (int i = 0; i < handlers.Len(); i++) { XophpCallback hook = (XophpCallback)handlers.Get_at(i); Object retval = callHook(event, hook, args, deprecatedVersion); if (retval == null) { @@ -245,7 +245,7 @@ public class XomwHooks { public static boolean runWithoutAbort(String event) {return runWithoutAbort(event, XophpArray.New(), null);} public static boolean runWithoutAbort(String event, XophpArray args, String deprecatedVersion) { XophpArray handlers = getHandlers(event); - int len = handlers.count(); + int len = handlers.Len(); for (int i = 0; i < len; i++) { Object hookObj = handlers.Get_at(i); String_obj_ref fname = String_obj_ref.empty_(); diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/XomwMessage.java b/400_xowa/src/gplx/xowa/mediawiki/includes/XomwMessage.java index adff663d6..7726b7d5e 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/XomwMessage.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/XomwMessage.java @@ -17,7 +17,7 @@ package gplx.xowa.mediawiki.includes; import gplx.String_; import gplx.xowa.mediawiki.XophpArray; -import gplx.xowa.mediawiki.XophpArray_; +import gplx.xowa.mediawiki.XophpArray; import gplx.xowa.mediawiki.XophpInvalidArgumentException; import gplx.xowa.mediawiki.XophpObject_; import gplx.xowa.mediawiki.XophpString_; @@ -266,7 +266,7 @@ class XomwMessage { // implements MessageSpecifier, Serializable if (XophpString_.is_string(key)) { this.keysToTry = XophpArray.New(key); } - else if (XophpArray_.is_array(key)) { + else if (XophpArray.is_array(key)) { this.keysToTry = (XophpArray)key; } else { @@ -274,13 +274,13 @@ class XomwMessage { // implements MessageSpecifier, Serializable } // XOMW.TYPE.END - if (XophpArray_.empty(this.keysToTry)) { + if (XophpArray.empty(this.keysToTry)) { throw new XophpInvalidArgumentException("{0} must not be an empty list", key); } this.key = (String)XophpArray.reset(this.keysToTry); - this.parameters = XophpArray_.array_values(params); + this.parameters = XophpArray.array_values(params); // User language is only resolved in getLanguage(). This helps preserve the // semantic intent of "user language" across serialize() and unserialize(). this.language = (XomwLanguage)XophpObject_.Elvis(language, null); diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/XomwWebRequest.java b/400_xowa/src/gplx/xowa/mediawiki/includes/XomwWebRequest.java index 446afa616..22d76c8a2 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/XomwWebRequest.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/XomwWebRequest.java @@ -18,7 +18,7 @@ package gplx.xowa.mediawiki.includes; // MW.SRC:1.33.1 import gplx.xowa.mediawiki.XophpArray; -import gplx.xowa.mediawiki.XophpArray_; +import gplx.xowa.mediawiki.XophpArray; import gplx.xowa.mediawiki.XophpObject_; import gplx.xowa.mediawiki.XophpString_; @@ -88,7 +88,7 @@ public class XomwWebRequest { // POST overrides GET data // We don't use $_REQUEST here to avoid interference from cookies... - this.data = XophpArray_.array_merge(_POST, _GET); + this.data = XophpArray.array_merge(_POST, _GET); } // /** @@ -378,9 +378,9 @@ public class XomwWebRequest { // https://secure.php.net/variables.external#language.variables.external.dot-in-names // Work around PHP *feature* to avoid *bugs* elsewhere. name = XophpString_.strtr(name, ".", "_"); - if (XophpArray_.isset(arr, name)) { + if (XophpArray.isset(arr, name)) { Object data = arr.Get_by(name); - if (XophpArray_.isset(_GET, name) && XophpString_.is_string(data)) { + if (XophpArray.isset(_GET, name) && XophpString_.is_string(data)) { // Check for alternate/legacy character encoding. // $contLang = MediaWikiServices::getInstance().getContentLanguage(); // $data = $contLang.checkTitleEncoding($data); diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/cache/localisation/XomwLocalisationCache.java b/400_xowa/src/gplx/xowa/mediawiki/includes/cache/localisation/XomwLocalisationCache.java index ee668b7e5..debeec82a 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/cache/localisation/XomwLocalisationCache.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/cache/localisation/XomwLocalisationCache.java @@ -1,18 +1,18 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ package gplx.xowa.mediawiki.includes.cache.localisation; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; import gplx.xowa.mediawiki.includes.*; import gplx.xowa.mediawiki.includes.cache.*; // MW.SRC:1.33 import gplx.xowa.mediawiki.xml.*; @@ -250,11 +250,11 @@ public class XomwLocalisationCache { * @return mixed */ public Object getItem(String code, String key) { - if (!this.loadedItems.Get_by_ary(code).isset(key)) { + if (!XophpArray.isset(this.loadedItems.Get_by_ary(code), key)) { // this.loadItem(code, key); } - if (String_.Eq(key, "fallback") && this.shallowFallbacks.isset(code)) { + if (String_.Eq(key, "fallback") && XophpArray.isset(this.shallowFallbacks, code)) { return this.shallowFallbacks.Get_by(code); } diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/content/ContentHandler.java b/400_xowa/src/gplx/xowa/mediawiki/includes/content/ContentHandler.java index eb753a809..c86a3036f 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/content/ContentHandler.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/content/ContentHandler.java @@ -1,18 +1,18 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ package gplx.xowa.mediawiki.includes.content; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; import gplx.xowa.mediawiki.includes.*; import gplx.core.brys.*; public abstract class ContentHandler { @@ -532,7 +532,7 @@ public abstract class ContentHandler { return true; // this means "use the default" } - return XophpArray_.in_array(format, this.mSupportedFormats); + return XophpArray.in_array(format, this.mSupportedFormats); } /** diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/interwiki/XomwInterwikiLookupAdapter.java b/400_xowa/src/gplx/xowa/mediawiki/includes/interwiki/XomwInterwikiLookupAdapter.java index a6b35463b..7baa1da1d 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/interwiki/XomwInterwikiLookupAdapter.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/interwiki/XomwInterwikiLookupAdapter.java @@ -1,18 +1,18 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ package gplx.xowa.mediawiki.includes.interwiki; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; import gplx.xowa.mediawiki.includes.*; import gplx.xowa.mediawiki.includes.site.*; public class XomwInterwikiLookupAdapter implements XomwInterwikiLookup { @@ -41,7 +41,7 @@ public class XomwInterwikiLookupAdapter implements XomwInterwikiLookup { * @return boolean Whether it exists */ public boolean isValidInterwiki(byte[] prefix) { - return XophpArray_.array_key_exists(prefix, this.getInterwikiMap()); + return XophpArray.array_key_exists(prefix, this.getInterwikiMap()); } /** @@ -71,7 +71,7 @@ public class XomwInterwikiLookupAdapter implements XomwInterwikiLookup { */ public byte[][] getAllPrefixes(boolean local) { if (!local) { - XophpArray_.array_keys_bry(this.getInterwikiMap()); + XophpArray.array_keys_bry(this.getInterwikiMap()); } List_adp res = List_adp_.New(); Ordered_hash hash = this.getInterwikiMap(); diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/libs/services/XomwServiceContainer.java b/400_xowa/src/gplx/xowa/mediawiki/includes/libs/services/XomwServiceContainer.java index 4a8215f97..34648e4bd 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/libs/services/XomwServiceContainer.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/libs/services/XomwServiceContainer.java @@ -16,7 +16,7 @@ Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt package gplx.xowa.mediawiki.includes.libs.services; import gplx.xowa.mediawiki.XophpArray; -import gplx.xowa.mediawiki.XophpArray_; +import gplx.xowa.mediawiki.XophpArray; import gplx.xowa.mediawiki.XophpCallback; import gplx.xowa.mediawiki.XophpObject_; import gplx.xowa.mediawiki.XophpType_; @@ -154,24 +154,24 @@ public class XomwServiceContainer implements XomwDestructibleService { */ public void importWiring(XomwServiceContainer container) {this.importWiring(container, new XophpArray<>());} public void importWiring(XomwServiceContainer container, XophpArray skip) { -// XophpArray newInstantiators = XophpArray_.array_diff_key( +// XophpArray newInstantiators = XophpArray.array_diff_key( // container.serviceInstantiators, -// XophpArray_.array_flip(skip) +// XophpArray.array_flip(skip) // ); // -// this.serviceInstantiators = XophpArray_.array_merge( +// this.serviceInstantiators = XophpArray.array_merge( // this.serviceInstantiators, // newInstantiators // ); // -// XophpArray newManipulators = XophpArray_.array_diff( -// XophpArray_.array_keys(container.serviceManipulators), +// XophpArray newManipulators = XophpArray.array_diff( +// XophpArray.array_keys(container.serviceManipulators), // skip // ); // // for (String name : newManipulators) { -// if (XophpArray_.isset(this.serviceManipulators, name)) { -// this.serviceManipulators.Set(name, XophpArray_.array_merge( +// if (XophpArray.isset(this.serviceManipulators, name)) { +// this.serviceManipulators.Set(name, XophpArray.array_merge( // this.serviceManipulators.Get_by(name), // container.serviceManipulators.Get_by(name) // )); @@ -190,7 +190,7 @@ public class XomwServiceContainer implements XomwDestructibleService { * @return bool */ public boolean hasService(String name) { - return XophpArray_.isset(this.serviceInstantiators, name); + return XophpArray.isset(this.serviceInstantiators, name); } /** @@ -220,7 +220,7 @@ public class XomwServiceContainer implements XomwDestructibleService { * @return string[] */ public XophpArray getServiceNames() { - return XophpArray_.array_keys(this.serviceInstantiators); + return XophpArray.array_keys(this.serviceInstantiators); } /** @@ -273,12 +273,12 @@ public class XomwServiceContainer implements XomwDestructibleService { throw new XomwNoSuchServiceException(name); } - if (XophpArray_.isset(this.services, name)) { + if (XophpArray.isset(this.services, name)) { throw new XomwCannotReplaceActiveServiceException(name); } this.serviceInstantiators.Set(name, instantiator); - XophpArray_.unset(this.disabled, name); + XophpArray.unset(this.disabled, name); } /** @@ -314,7 +314,7 @@ public class XomwServiceContainer implements XomwDestructibleService { throw new XomwNoSuchServiceException(name); } - if (XophpArray_.isset(this.services, name)) { + if (XophpArray.isset(this.services, name)) { throw new XomwCannotReplaceActiveServiceException(name); } @@ -379,8 +379,8 @@ public class XomwServiceContainer implements XomwDestructibleService { ((XomwDestructibleService)instance).destroy(); } - XophpArray_.unset(this.services, name); - XophpArray_.unset(this.disabled, name); + XophpArray.unset(this.services, name); + XophpArray.unset(this.disabled, name); } /** @@ -408,11 +408,11 @@ public class XomwServiceContainer implements XomwDestructibleService { throw new XomwContainerDisabledException(); } - if (XophpArray_.isset(this.disabled, name)) { + if (XophpArray.isset(this.disabled, name)) { throw new XomwServiceDisabledException(name); } - if (!XophpArray_.isset(this.services, name)) { + if (!XophpArray.isset(this.services, name)) { this.services.Set(name, this.createService(name)); } @@ -427,18 +427,18 @@ public class XomwServiceContainer implements XomwDestructibleService { */ private Object createService(String name) { Object service; - if (XophpArray_.isset(this.serviceInstantiators, name)) { + if (XophpArray.isset(this.serviceInstantiators, name)) { service = (this.serviceInstantiators.Get_by(name)).Call( this, this.extraInstantiationParams ); - if (XophpArray_.isset(this.serviceManipulators, name)) { + if (XophpArray.isset(this.serviceManipulators, name)) { Object ret; for (XophpCallback callback : this.serviceManipulators.Get_by(name)) { ret = XophpCallback.call_user_func_array( callback, - XophpArray_.array_merge(XophpArray.New(service, this), this.extraInstantiationParams) + XophpArray.array_merge(XophpArray.New(service, this), this.extraInstantiationParams) ); // If the manipulator callback returns an object, that object replaces @@ -464,6 +464,6 @@ public class XomwServiceContainer implements XomwDestructibleService { * @since 1.28 */ public boolean isServiceDisabled(String name) { - return XophpArray_.isset(this.disabled, name); + return XophpArray.isset(this.disabled, name); } } diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/XomwParser.java b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/XomwParser.java index ec213cd81..2fea0f13c 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/XomwParser.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/XomwParser.java @@ -4051,29 +4051,29 @@ public class XomwParser implements XomwParserIface { // result = this.callParserFunction(frame, func, funcArgs); // Extract any forwarded flags - if (XophpArray_.isset(result, "title")) { + if (XophpArray.isset(result, "title")) { title = (XomwTitleOld)result.Get_by("title"); } - if (XophpArray_.isset(result, "found")) { + if (XophpArray.isset(result, "found")) { found = result.Get_by_bool("found"); } - if (XophpArray_.array_key_exists("text", result)) { + if (XophpArray.array_key_exists("text", result)) { // a String or null text = result.Get_by_str("text"); } - if (XophpArray_.isset(result, "nowiki")) { + if (XophpArray.isset(result, "nowiki")) { nowiki = result.Get_by_bool("nowiki"); } - if (XophpArray_.isset(result, "isHTML")) { + if (XophpArray.isset(result, "isHTML")) { isHTML = result.Get_by_bool("isHTML"); } - if (XophpArray_.isset(result, "forceRawInterwiki")) { + if (XophpArray.isset(result, "forceRawInterwiki")) { forceRawInterwiki = result.Get_by_bool("forceRawInterwiki"); } - if (XophpArray_.isset(result, "isChildObj")) { + if (XophpArray.isset(result, "isChildObj")) { isChildObj = result.Get_by_bool("isChildObj"); } - if (XophpArray_.isset(result, "isLocalObj")) { + if (XophpArray.isset(result, "isLocalObj")) { isLocalObj = result.Get_by_bool("isLocalObj"); } } diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/XomwPreprocessor_DOM.java b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/XomwPreprocessor_DOM.java index 574f281cc..7645db090 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/XomwPreprocessor_DOM.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/XomwPreprocessor_DOM.java @@ -1,18 +1,18 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ package gplx.xowa.mediawiki.includes.parsers; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; import gplx.xowa.mediawiki.includes.*; import gplx.core.btries.*; import gplx.xowa.mediawiki.includes.parsers.preprocessors.*; @@ -118,7 +118,7 @@ class XomwPreprocessor_DOM extends XomwPreprocessor { private final Bry_bfr tmp_bfr.Add_str_a7("").Add(title).Add_str_a7(""); int arg_idx = 1; - int parts_len = parts.count(); + int parts_len = parts.Len(); for (int j = 0; j < parts_len; j++) { XomwPPDPart_DOM part = (XomwPPDPart_DOM)parts.Get_at(j); if (part.eqpos != 0) { @@ -144,7 +144,7 @@ class XomwPreprocessor_DOM extends XomwPreprocessor { private final Bry_bfr } @Override protected Object preprocessToObj_term(XomwPPDStack stack) { Bry_bfr root_accum = Bry_bfr_.New().Add_str_u8(((Xomw_prepro_accum__dom)stack.Get_root_accum()).To_str()); - int stack_len = stack.stack.count(); + int stack_len = stack.stack.Len(); for (int j = 0; j < stack_len; j++) { // XomwPPDStackElement_Hash piece = (XomwPPDStackElement_Hash)stack.stack.Get_at(j); // root_accum.Add((XophpArray)piece.breakSyntax(tmp_bfr)); diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/XomwPreprocessor_Hash.java b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/XomwPreprocessor_Hash.java index 93c5ea54a..c153d5fa1 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/XomwPreprocessor_Hash.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/XomwPreprocessor_Hash.java @@ -1,18 +1,18 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ package gplx.xowa.mediawiki.includes.parsers; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; import gplx.xowa.mediawiki.includes.*; import gplx.xowa.mediawiki.includes.parsers.preprocessors.*; class XomwPreprocessor_Hash extends XomwPreprocessor { private XophpArray accum; @@ -55,7 +55,7 @@ class XomwPreprocessor_Hash extends XomwPreprocessor { private XophpArray accum accum.Add(XophpArray.New("comment", XophpArray.New(XophpString_.substr(src, bgn, end - bgn)))); } @Override protected void preprocessToObj_removeLeadingWhitespaceFromEnd(int ws_len) { - int endIndex = accum.count() - 1; + int endIndex = accum.Len() - 1; if ( ws_len > 0 && endIndex >= 0) { Object itm_obj = accum.Get_at(endIndex); @@ -86,7 +86,7 @@ class XomwPreprocessor_Hash extends XomwPreprocessor { private XophpArray accum rv.Ary().Add ( XophpArray.New ( "h", - XophpArray_.array_merge + XophpArray.array_merge ( XophpArray.New ( XophpArray.New("@level", XophpArray.New(count)) , XophpArray.New("@i" , XophpArray.New(heading_index)) @@ -98,7 +98,7 @@ class XomwPreprocessor_Hash extends XomwPreprocessor { private XophpArray accum return rv; } @Override protected void preprocessToObj_heading_end(Xomw_prepro_accum element) { - XophpArray_.array_splice(accum, accum.count(), 0, ((Xomw_prepro_accum__hash)element).Ary()); + XophpArray.array_splice(accum, XophpArray.count(accum), 0, ((Xomw_prepro_accum__hash)element).Ary()); } @Override protected Xomw_prepro_accum preprocessToObj_text(XomwPPDStackElement piece, byte[] rule_end, int matching_count) { @@ -122,14 +122,14 @@ class XomwPreprocessor_Hash extends XomwPreprocessor { private XophpArray accum children.Add(titleNode); int argIndex = 1; - int parts_len = parts.count(); + int parts_len = parts.Len(); for (int j = 0; j < parts_len; j++) { XomwPPDPart_Hash part = (XomwPPDPart_Hash)parts.Get_at(j); XophpArray part_out = (XophpArray)part.Accum_hash().Ary(); if (part.eqpos != 0) { Object equalsNode = part_out.Get_at(part.eqpos); - XophpArray nameNode = XophpArray.New("name" , XophpArray_.array_slice(part_out, 0, part.eqpos)); - XophpArray valueNode = XophpArray.New("value", XophpArray_.array_slice(part_out, part.eqpos + 1)); + XophpArray nameNode = XophpArray.New("name" , XophpArray.array_slice(part_out, 0, part.eqpos)); + XophpArray valueNode = XophpArray.New("value", XophpArray.array_slice(part_out, part.eqpos + 1)); XophpArray partNode = XophpArray.New("part" , XophpArray.New(nameNode, equalsNode, valueNode)); children.Add(partNode); } @@ -144,19 +144,19 @@ class XomwPreprocessor_Hash extends XomwPreprocessor { private XophpArray accum return new Xomw_prepro_accum__hash(element); } @Override protected void preprocessToObj_add_element(Xomw_prepro_accum element) { - XophpArray_.array_splice(accum, accum.count(), 0, ((Xomw_prepro_accum__hash)element).Ary()); + XophpArray.array_splice(accum, XophpArray.count(accum), 0, ((Xomw_prepro_accum__hash)element).Ary()); } @Override protected void preprocessToObj_equals(XomwPPDStack stack) { accum.Add(XophpArray.New("equals", XophpArray.New("="))); - stack.getCurrentPart().eqpos = accum.count() - 1; + stack.getCurrentPart().eqpos = XophpArray.count(accum) - 1; } @Override protected Object preprocessToObj_term(XomwPPDStack stack) { Xomw_prepro_accum__hash stack_accum = (Xomw_prepro_accum__hash)stack.getAccum(); XophpArray stack_ary = stack_accum.Ary(); - int len = stack_ary.count(); + int len = stack_ary.Len(); for (int i = 0; i < len; i++) { // XomwPPDPart_Hash piece = (XomwPPDPart_Hash)(stack_ary.Get_at(i).Val()); -// XophpArray_.array_splice(stack_ary, stack_ary.Len(), 0, piece.breakSyntax()); +// XophpArray.array_splice(stack_ary, stack_ary.Len(), 0, piece.breakSyntax()); } // for ( $stack->stack as $piece ) { // array_splice( $stack->rootAccum, count( $stack->rootAccum ), 0, $piece->breakSyntax() ); @@ -184,7 +184,7 @@ class XomwPreprocessor_Hash extends XomwPreprocessor { private XophpArray accum private static void addLiteral(XophpArray accum, byte[] text) {addLiteral(accum, String_.new_u8(text));} private static void addLiteral(XophpArray accum, String text) { - int n = accum.count(); + int n = accum.Len(); Object itm = accum.Get_at(n - 1); if (n > 0 && XophpType_.is_string(itm)) { accum.Set(n - 1, ((String)itm) + text); diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPDStack.java b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPDStack.java index 208f10c3d..4c3cfc5d9 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPDStack.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPDStack.java @@ -1,18 +1,18 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ package gplx.xowa.mediawiki.includes.parsers.preprocessors; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; import gplx.xowa.mediawiki.includes.*; import gplx.xowa.mediawiki.includes.parsers.*; import gplx.xowa.mediawiki.includes.exception.*; // MW.FILE:Preprocessor @@ -43,7 +43,7 @@ public class XomwPPDStack { * @return int */ public int count() { - return this.stack.count(); + return XophpArray.count(this.stack); } public Xomw_prepro_accum getAccum() { @@ -65,17 +65,17 @@ public class XomwPPDStack { // $class = this.elementClass; // this.stack[] = new $class($data); // } - this.top = (XomwPPDStackElement)this.stack.Get_at(this.stack.count() - 1); + this.top = (XomwPPDStackElement)this.stack.Get_at(XophpArray.count(this.stack) - 1); this.accum = this.top.getAccum(); } public XomwPPDStackElement pop() { - if (this.stack.count() == 0) { + if (XophpArray.count(this.stack) == 0) { throw XomwMWException.New_by_method(XomwPPDStack.class, "pop", "no elements remaining"); } - XomwPPDStackElement temp = (XomwPPDStackElement)this.stack.pop(); - if (this.stack.count()> 0) { - this.top = (XomwPPDStackElement)this.stack.Get_at(this.stack.count() - 1); + XomwPPDStackElement temp = (XomwPPDStackElement)XophpArray.array_pop(this.stack); + if (XophpArray.count(this.stack)> 0) { + this.top = (XomwPPDStackElement)this.stack.Get_at(XophpArray.count(this.stack) - 1); this.accum = this.top.getAccum(); } else { this.top = null; @@ -93,7 +93,7 @@ public class XomwPPDStack { * @return array */ public XomwPPDStackElementFlags getFlags() { - if (this.stack.count() == 0) { + if (XophpArray.count(this.stack) == 0) { return XomwPPDStackElementFlags.Empty; } else { diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPDStackElement.java b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPDStackElement.java index 6d5da7916..2f0bdcb0a 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPDStackElement.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPDStackElement.java @@ -1,18 +1,18 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ package gplx.xowa.mediawiki.includes.parsers.preprocessors; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; import gplx.xowa.mediawiki.includes.*; import gplx.xowa.mediawiki.includes.parsers.*; // MW.FILE:Preprocessor /** @@ -63,7 +63,7 @@ public class XomwPPDStackElement { } public Xomw_prepro_accum getAccum() { - return (Xomw_prepro_accum)Get_at(this.parts.count() - 1).Accum(); + return (Xomw_prepro_accum)Get_at(XophpArray.count(this.parts) - 1).Accum(); } public void addPart(String s) { @@ -74,14 +74,14 @@ public class XomwPPDStackElement { } public XomwPPDPart getCurrentPart() { - return (XomwPPDPart)Get_at(this.parts.count() - 1); + return (XomwPPDPart)Get_at(XophpArray.count(this.parts) - 1); } /** * @return array */ public XomwPPDStackElementFlags getFlags() { - int partCount = this.parts.count(); + int partCount = XophpArray.count(this.parts); boolean findPipe = String_.EqNot(this.open, "\n") && String_.EqNot(this.open, "["); return new XomwPPDStackElementFlags ( findPipe @@ -108,7 +108,7 @@ public class XomwPPDStackElement { } bfr.Add_str(XophpString_.str_repeat(this.open, openingCount)); boolean first = true; - int parts_len = parts.count(); + int parts_len = parts.Len(); for (int i = 0; i < parts_len; i++) { XomwPPDPart_DOM part = (XomwPPDPart_DOM)Get_at(i); if (first) { diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPDStackElement_Hash.java b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPDStackElement_Hash.java index b9bed61ca..c65750679 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPDStackElement_Hash.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPDStackElement_Hash.java @@ -1,18 +1,18 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ package gplx.xowa.mediawiki.includes.parsers.preprocessors; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; import gplx.xowa.mediawiki.includes.*; import gplx.xowa.mediawiki.includes.parsers.*; // MW.FILE:Preprocessor_Hash /** @@ -42,7 +42,7 @@ public class XomwPPDStackElement_Hash extends XomwPPDStackElement { public Xomw accum = XophpArray.New(XophpString_.str_repeat(this.open, openingCount)); int lastIndex = 0; boolean first = true; - int parts_len = parts.count(); + int parts_len = parts.Len(); for (int i = 0; i < parts_len; i++) { XomwPPDPart_Hash part = Get_at_hash(i); if (first) { @@ -55,7 +55,7 @@ public class XomwPPDStackElement_Hash extends XomwPPDStackElement { public Xomw } XophpArray part_out = ((Xomw_prepro_accum__hash)part.Accum()).Ary(); - int part_out_len = part_out.count(); + int part_out_len = part_out.Len(); for (int j = 0; j < part_out_len; j++) { Object node = part_out.Get_at(j); if (XophpType_.is_string(node) && XophpType_.is_string(accum.Get_at(lastIndex))) { diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPFrame_Hash.java b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPFrame_Hash.java index ba63d256b..c011412e6 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPFrame_Hash.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPFrame_Hash.java @@ -97,14 +97,14 @@ public class XomwPPFrame_Hash extends XomwPPFrame { /** args = (XophpArray)argsObj; } - int argsLen = args.count(); + int argsLen = args.Len(); for (int i = 0; i < argsLen; i++) { XomwPPNode arg = (XomwPPNode)args.Get_at(i); XophpArray bits = arg.splitArg(); if (bits.Has("index")) { // Numbered parameter int index = bits.Get_by_int("index") - indexOffset; - if (namedArgs.isset(index) || numberedArgs.isset(index)) { + if (XophpArray.isset(namedArgs, index) || XophpArray.isset(numberedArgs, index)) { // this.parser.getOutput().addWarning(wfMessage('duplicate-args-warning', // wfEscapeWikiText(this.title), // wfEscapeWikiText(title), @@ -112,11 +112,11 @@ public class XomwPPFrame_Hash extends XomwPPFrame { /** // this.parser.addTrackingCategory('duplicate-args-category'); } numberedArgs.Set(index, bits.Get_by("value")); - namedArgs.unset(index); + XophpArray.unset(namedArgs, index); } else { // Named parameter String name = String_.Trim(this.expand(bits.Get_by("name"), XomwPPFrame.STRIP_COMMENTS)); - if (namedArgs.isset(name) || numberedArgs.isset(name)) { + if (XophpArray.isset(namedArgs, name) || XophpArray.isset(numberedArgs, name)) { // this.parser.getOutput().addWarning(wfMessage('duplicate-args-warning', // wfEscapeWikiText(this.title), // wfEscapeWikiText(title), @@ -124,7 +124,7 @@ public class XomwPPFrame_Hash extends XomwPPFrame { /** // this.parser.addTrackingCategory('duplicate-args-category'); } namedArgs.Set(name, bits.Get_by("value")); - numberedArgs.unset(name); + XophpArray.unset(numberedArgs, name); } } } @@ -179,15 +179,15 @@ public class XomwPPFrame_Hash extends XomwPPFrame { /** XophpArray iteratorStack = XophpArray.New(XophpObject_.False, root); XophpArray indexStack = XophpArray.New(0, 0); - while (iteratorStack.count() > 1) { - int level = outStack.count() - 1; + while (XophpArray.count(iteratorStack) > 1) { + int level = XophpArray.count(outStack) - 1; Object iteratorNode = iteratorStack.Get_at(level); String outItm = outStack.Get_at_str(level); int index = indexStack.Get_at_int(level); Object contextNode; if (XophpArray.is_array(iteratorNode)) { XophpArray iteratorNodeArray = (XophpArray)iteratorNode; - if (index >= iteratorNodeArray.count()) { + if (index >= XophpArray.count(iteratorNodeArray)) { // All done with this iterator iteratorStack.Set(level, XophpObject_.False); contextNode = XophpObject_.False; @@ -233,7 +233,7 @@ public class XomwPPFrame_Hash extends XomwPPFrame { /** } else if (XophpArray.is_array(contextNode)) { XophpArray contextNodeArray = (XophpArray)contextNode; // Node descriptor array - if (contextNodeArray.count() != 2) { + if (XophpArray.count(contextNodeArray) != 2) { throw XomwMWException.New_by_method(XomwPPFrame_Hash.class, "expand", ": found an array where a node descriptor should be"); } @@ -259,7 +259,7 @@ public class XomwPPFrame_Hash extends XomwPPFrame { /** ); } else { XophpArray ret = this.parser.braceSubstitution(bits, this); - if (ret.isset(Object_.Cls_val_name)) {// NOTE: using Cls_val_name b/c of transpilation and Object . Object + if (XophpArray.isset(ret, Object_.Cls_val_name)) {// NOTE: using Cls_val_name b/c of transpilation and Object . Object newIterator = ret.Get_by(Object_.Cls_val_name); } else { outItm += ret.Get_by_str("text"); @@ -276,7 +276,7 @@ public class XomwPPFrame_Hash extends XomwPPFrame { /** ); } else { XophpArray ret = this.parser.argSubstitution(bits, this); - if (ret.isset(Object_.Cls_val_name)) {// NOTE: using Cls_val_name b/c of transpilation and Object . Object + if (XophpArray.isset(ret, Object_.Cls_val_name)) {// NOTE: using Cls_val_name b/c of transpilation and Object . Object newIterator = ret.Get_by("Object"); } else { outItm += ret.Get_by_str("text"); @@ -343,7 +343,7 @@ public class XomwPPFrame_Hash extends XomwPPFrame { /** XophpArray bits = XomwPPNode_Hash_Tree.splitRawHeading(contextChildren); String titleText = this.title.getPrefixedDBkeyStr(); this.parser.mHeadings.Add(titleText, bits.Get_by("i")); - int serial = XophpArray_.count(this.parser.mHeadings) - 1; + int serial = XophpArray.count(this.parser.mHeadings) - 1; String marker = XomwParser.MARKER_PREFIX + "-h-" + Int_.To_str(serial) + "-" + XomwParser.MARKER_SUFFIX; s = XophpString_.substr(s, 0, bits.Get_by_int("level")) + marker + XophpString_.substr(s, bits.Get_by_int("level")); this.parser.mStripState.addGeneral(marker, ""); @@ -366,9 +366,9 @@ public class XomwPPFrame_Hash extends XomwPPFrame { /** // With tail recursion while (!XophpObject_.is_true(iteratorStack.Get_at(level)) && level > 0) { outStack.Itm_str_concat_end(level - 1, outItm); - outStack.pop(); - iteratorStack.pop(); - indexStack.pop(); + XophpArray.array_pop(outStack); + XophpArray.array_pop(iteratorStack); + XophpArray.array_pop(indexStack); level--; } } @@ -384,7 +384,7 @@ public class XomwPPFrame_Hash extends XomwPPFrame { /** * @return String */ public String implodeWithFlags(String sep, int flags, XophpArray args) { - // args = XophpArray_.array_slice(func_get_args(), 2); + // args = XophpArray.array_slice(func_get_args(), 2); boolean first = true; String s = ""; @@ -430,7 +430,7 @@ public class XomwPPFrame_Hash extends XomwPPFrame { /** if (!XophpArray.is_array(rootObj)) { root = XophpArray.New(root); } - int rootLen = root.count(); + int rootLen = root.Len(); for (int i = 0; i < rootLen; i++) { Object node = root.Get_at(i); if (first) { @@ -464,7 +464,7 @@ public class XomwPPFrame_Hash extends XomwPPFrame { /** if (!XophpArray.is_array(rootObj)) { root = XophpArray.New(root); } - int rootLen = root.count(); + int rootLen = root.Len(); for (int i = 0; i < rootLen; i++) { Object node = root.Get_at(i); if (first) { @@ -499,7 +499,7 @@ public class XomwPPFrame_Hash extends XomwPPFrame { /** if (!XophpArray.is_array(rootObj)) { root = XophpArray.New((String)rootObj); } - int root_len = root.count(); + int root_len = root.Len(); for (int i = 0; i < root_len; i++) { String node = root.Get_at_str(i); if (first) { @@ -527,7 +527,7 @@ public class XomwPPFrame_Hash extends XomwPPFrame { /** return this.title.getPrefixedDBkeyStr(); } else { // return isset( $this->titleCache[$level] ) ? $this->titleCache[$level] : false; - return this.titleCache.count() > 0 ? ((String)this.titleCache.Get_at(0)) : XophpString_.False; + return XophpArray.count(this.titleCache) > 0 ? ((String)this.titleCache.Get_at(0)) : XophpString_.False; } } @@ -577,7 +577,7 @@ public class XomwPPFrame_Hash extends XomwPPFrame { /** * @return boolean */ @Override public boolean loopCheck(XomwTitleOld title) { - return !this.loopCheckHash.isset(title.getPrefixedDBkeyStr()); + return !XophpArray.isset(this.loopCheckHash, title.getPrefixedDBkeyStr()); } /** diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPNode_Hash_Array.java b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPNode_Hash_Array.java index 20620e83b..ce694178f 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPNode_Hash_Array.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPNode_Hash_Array.java @@ -1,18 +1,18 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ package gplx.xowa.mediawiki.includes.parsers.preprocessors; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; import gplx.xowa.mediawiki.includes.*; import gplx.xowa.mediawiki.includes.parsers.*; import gplx.xowa.mediawiki.includes.exception.*; // MW.FILE:Preprocessor_Hash @@ -31,7 +31,7 @@ public class XomwPPNode_Hash_Array extends XomwPPNode { public XophpArray value } @Override public int getLength() { - return XophpArray_.count(this.value); + return XophpArray.count(this.value); } @Override public XomwPPNode item(int i) { diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPNode_Hash_Tree.java b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPNode_Hash_Tree.java index ba04d46d3..5465e9cbf 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPNode_Hash_Tree.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPNode_Hash_Tree.java @@ -1,19 +1,20 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ -package gplx.xowa.mediawiki.includes.parsers.preprocessors; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; import gplx.xowa.mediawiki.includes.*; import gplx.xowa.mediawiki.includes.parsers.*; +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ +package gplx.xowa.mediawiki.includes.parsers.preprocessors; import gplx.*; +import gplx.xowa.mediawiki.*; // MW.FILE:Preprocessor_Hash /** * @ingroup Parser @@ -138,7 +139,7 @@ public class XomwPPNode_Hash_Tree extends XomwPPNode { public final String na int rawChildrenLen = rawChildren.Len(); for (int i = 0; i < rawChildrenLen; i++) { XophpArrayItm itm = rawChildren.Get_at_itm(i); - children.Add(XomwPPNode_Hash_Tree.factory(this.rawChildren, itm.Key_as_int())); + children.Add(XomwPPNode_Hash_Tree.factory(this.rawChildren, itm.KeyAsInt())); } return new XomwPPNode_Hash_Array(children); } @@ -151,7 +152,7 @@ public class XomwPPNode_Hash_Tree extends XomwPPNode { public final String na * @return PPNode_Hash_Tree|PPNode_Hash_Attr|PPNode_Hash_Text|boolean */ @Override public XomwPPNode getFirstChild() { - if (this.rawChildren.isset(0)) { + if (XophpArray.isset(this.rawChildren, 0)) { return null; } else { @@ -183,7 +184,7 @@ public class XomwPPNode_Hash_Tree extends XomwPPNode { public final String na XophpArrayItm itm = this.rawChildren.Get_at_itm(idx); Object child = itm.Val(); if (XophpType_.is_array(child) && String_.Eq(((XophpArray)child).Get_at_str(XomwPPNode_Hash_Tree.NAME), name)) { - children.Add(XomwPPNode_Hash_Tree.factory(this.rawChildren, itm.Key_as_int())); + children.Add(XomwPPNode_Hash_Tree.factory(this.rawChildren, itm.KeyAsInt())); } } return new XomwPPNode_Hash_Array(children); @@ -245,7 +246,7 @@ public class XomwPPNode_Hash_Tree extends XomwPPNode { public final String na continue; } XophpArray child = (XophpArray)childObj; - int i = itm.Key_as_int(); + int i = itm.KeyAsInt(); if (String_.Eq(child.Get_at_str(XomwPPNode_Hash_Tree.NAME), "name")) { bits.Set("name", new XomwPPNode_Hash_Tree(children, i)); if (XophpObject_.isset_obj(child.Get_at_ary(XomwPPNode_Hash_Tree.CHILDREN).Get_at_ary(0).Get_at(XomwPPNode_Hash_Tree.NAME)) @@ -284,7 +285,7 @@ public class XomwPPNode_Hash_Tree extends XomwPPNode { public final String na */ public static XophpArray splitRawExt(XophpArray children) { XophpArray bits = XophpArray.New(); - int len = children.count(); + int len = children.Len(); for (int i = 0; i < len; i++) { Object childObj = children.Get_at(i); if (!XophpArray.is_array(childObj)) { @@ -305,7 +306,7 @@ public class XomwPPNode_Hash_Tree extends XomwPPNode { public final String na bits.Add("close", new XomwPPNode_Hash_Tree(children, i)); } } - if (!bits.isset("name")) { + if (!XophpArray.isset(bits, "name")) { throw new XomwMWException("Invalid ext node passed to " + "splitRawExt"); } return bits; @@ -329,7 +330,7 @@ public class XomwPPNode_Hash_Tree extends XomwPPNode { public final String na */ public static XophpArray splitRawHeading(XophpArray children) { XophpArray bits = XophpArray.New(); - int len = children.count(); + int len = children.Len(); for (int i = 0; i < len; i++) { Object childObj = children.Get_at(i); if (!XophpArray.is_array(childObj)) { @@ -344,7 +345,7 @@ public class XomwPPNode_Hash_Tree extends XomwPPNode { public final String na bits.Add("level", childChildren.Get_at(0)); } } - if (!bits.isset("i")) { + if (!XophpArray.isset(bits, "i")) { throw new XomwMWException("Invalid h node passed to " + "splitRawHeading"); } return bits; @@ -366,7 +367,7 @@ public class XomwPPNode_Hash_Tree extends XomwPPNode { public final String na public static XophpArray splitRawTemplate(XophpArray children) { XophpArray parts = XophpArray.New(); XophpArray bits = XophpArray.New("lineStart" , ""); - int len = children.count(); + int len = children.Len(); for (int i = 0; i < len; i++) { Object childObj = children.Get_at(i); if (!XophpArray.is_array(childObj)) { @@ -383,7 +384,7 @@ public class XomwPPNode_Hash_Tree extends XomwPPNode { public final String na bits.Add("lineStart", "1"); } } - if (!bits.isset("title")) { + if (!XophpArray.isset(bits, "title")) { throw new XomwMWException("Invalid node passed to " + "splitRawTemplate"); } bits.Add("parts", new XomwPPNode_Hash_Array(parts)); diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPTemplateFrame_Hash.java b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPTemplateFrame_Hash.java index 130e99956..bf299cebe 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPTemplateFrame_Hash.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors/XomwPPTemplateFrame_Hash.java @@ -51,8 +51,8 @@ class XomwPPTemplateFrame_Hash extends XomwPPFrame_Hash { public XophpArray num @Override public String toString() { String s = "tplframe{"; boolean first = true; - XophpArray args = XophpArray_.array_add(this.numberedArgs, this.namedArgs); - int args_len = args.count(); + XophpArray args = XophpArray.array_add(this.numberedArgs, this.namedArgs); + int args_len = args.Len(); for (int i = 0; i < args_len; i++) { XophpArrayItm itm = args.Get_at_itm(i); if (first) { @@ -91,7 +91,7 @@ class XomwPPTemplateFrame_Hash extends XomwPPFrame_Hash { public XophpArray num * @return boolean */ @Override public boolean isEmpty() { - return !this.numberedArgs.count_bool() && !this.namedArgs.count_bool(); + return !XophpArray.count_bool(this.numberedArgs) && !XophpArray.count_bool(this.namedArgs); } /** @@ -99,10 +99,10 @@ class XomwPPTemplateFrame_Hash extends XomwPPFrame_Hash { public XophpArray num */ @Override public XophpArray getArguments() { XophpArray arguments = XophpArray.New(); - XophpArray merged = XophpArray_.array_merge( - XophpArray_.array_keys(this.numberedArgs), - XophpArray_.array_keys(this.namedArgs)); - int merged_len = merged.count(); + XophpArray merged = XophpArray.array_merge( + XophpArray.array_keys(this.numberedArgs), + XophpArray.array_keys(this.namedArgs)); + int merged_len = merged.Len(); for (int i = 0; i < merged_len; i++) { String key = merged.Get_at_str(i); arguments.Set(key, this.getArgument(key)); @@ -115,8 +115,8 @@ class XomwPPTemplateFrame_Hash extends XomwPPFrame_Hash { public XophpArray num */ @Override public XophpArray getNumberedArguments() { XophpArray arguments = XophpArray.New(); - XophpArray temp = XophpArray_.array_keys(this.numberedArgs); - int temp_len = temp.count(); + XophpArray temp = XophpArray.array_keys(this.numberedArgs); + int temp_len = temp.Len(); for (int i = 0; i < temp_len; i++) { String key = temp.Get_at_str(i); arguments.Set(key, this.getArgument(key)); @@ -129,8 +129,8 @@ class XomwPPTemplateFrame_Hash extends XomwPPFrame_Hash { public XophpArray num */ @Override public XophpArray getNamedArguments() { XophpArray arguments = XophpArray.New(); - XophpArray temp = XophpArray_.array_keys(this.namedArgs); - int temp_len = temp.count(); + XophpArray temp = XophpArray.array_keys(this.namedArgs); + int temp_len = temp.Len(); for (int i = 0; i < temp_len; i++) { String key = temp.Get_at_str(i); arguments.Set(key, this.getArgument(key)); diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPDStack.java b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPDStack.java index 39be7e62c..8cfd1bea0 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPDStack.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPDStack.java @@ -1,18 +1,18 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ package gplx.xowa.mediawiki.includes.parsers.preprocessors_new; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; import gplx.xowa.mediawiki.includes.*; import gplx.xowa.mediawiki.includes.parsers.*; // MW.SRC:1.33 import gplx.xowa.mediawiki.includes.exception.*; @@ -48,7 +48,7 @@ public class XomwPPDStack { * @return int */ public int count() { - return XophpArray_.count(this.stack); + return XophpArray.count(this.stack); } public XophpArray getAccum() { // &getAccum @@ -73,18 +73,18 @@ public class XomwPPDStack { XophpArray array = (XophpArray)data; this.stack.Add(elementClass.New(partClass, array.Get_by_str("open"), array.Get_by_str("close"), array.Get_by_ary_or("parts", null), array.Get_by_int_or("count", 0), array.Get_by_bool_or("lineStart", false), array.Get_by_int_or("startPos", 0))); } - this.top = (XomwPPDStackElement)this.stack.Get_at(XophpArray_.count(this.stack) - 1); + this.top = (XomwPPDStackElement)this.stack.Get_at(XophpArray.count(this.stack) - 1); this.accum = this.top.getAccum(); //=& } public XomwPPDStackElement pop() { - if (this.stack.Eq_to_new()) { + if (XophpArray.Eq_to_new(this.stack)) { throw XomwMWException.New_by_method_obj(this, "pop", ": no elements remaining"); } - XomwPPDStackElement temp = (XomwPPDStackElement)XophpArray_.array_pop(this.stack); + XomwPPDStackElement temp = (XomwPPDStackElement)XophpArray.array_pop(this.stack); - if (XophpArray_.count_bool(this.stack)) { - this.top = (XomwPPDStackElement)this.stack.Get_at(XophpArray_.count(this.stack) - 1); + if (XophpArray.count_bool(this.stack)) { + this.top = (XomwPPDStackElement)this.stack.Get_at(XophpArray.count(this.stack) - 1); this.accum = this.top.getAccum(); // =& } else { this.top = null; @@ -103,7 +103,7 @@ public class XomwPPDStack { * @return array */ public XophpArray getFlags() { - if (this.stack.Eq_to_new()) { + if (XophpArray.Eq_to_new(this.stack)) { return XophpArray.New() .Add("findEquals", false) .Add("findPipe", false) diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPDStackElement.java b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPDStackElement.java index ed88e6801..413908ce9 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPDStackElement.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPDStackElement.java @@ -1,18 +1,18 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ package gplx.xowa.mediawiki.includes.parsers.preprocessors_new; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; import gplx.xowa.mediawiki.includes.*; import gplx.xowa.mediawiki.includes.parsers.*; // MW.SRC:1.33 /** @@ -70,7 +70,7 @@ public abstract class XomwPPDStackElement { } public XophpArray getAccum() { - return (XophpArray)((XomwPPDPart)(this.parts.Get_at(XophpArray_.count(this.parts) - 1))).output; + return (XophpArray)((XomwPPDPart)(this.parts.Get_at(XophpArray.count(this.parts) - 1))).output; } public void addPart(String s) { // s = "" @@ -82,14 +82,14 @@ public abstract class XomwPPDStackElement { * @return PPDPart */ public XomwPPDPart getCurrentPart() { - return (XomwPPDPart)this.parts.Get_at(XophpArray_.count(this.parts) - 1); + return (XomwPPDPart)this.parts.Get_at(XophpArray.count(this.parts) - 1); } /** * @return array */ public XophpArray getFlags() { - int partCount = XophpArray_.count(this.parts); + int partCount = XophpArray.count(this.parts); boolean findPipe = !String_.Eq(this.open, "\n") && !String_.Eq(this.open, "["); return XophpArray.New() .Add("findPipe", findPipe) diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPDStackElement_Hash.java b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPDStackElement_Hash.java index 534b01ca8..dbbec0afd 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPDStackElement_Hash.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPDStackElement_Hash.java @@ -1,18 +1,18 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ package gplx.xowa.mediawiki.includes.parsers.preprocessors_new; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; import gplx.xowa.mediawiki.includes.*; import gplx.xowa.mediawiki.includes.parsers.*; // MW.SRC:1.33 class XomwPPDStackElement_Hash extends XomwPPDStackElement { @@ -29,7 +29,7 @@ class XomwPPDStackElement_Hash extends XomwPPDStackElement { public XophpArray breakSyntax(int openingCount) { XophpArray accum; if (String_.Eq(this.open, "\n")) { - accum = XophpArray_.array_merge(XophpArray.New(this.savedPrefix), XophpArray.New(((XomwPPDPart)this.parts.Get_at(0)).output)); + accum = XophpArray.array_merge(XophpArray.New(this.savedPrefix), XophpArray.New(((XomwPPDPart)this.parts.Get_at(0)).output)); } else { if (XophpInt_.is_false(openingCount)) { openingCount = this.count; diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPFrame_Hash.java b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPFrame_Hash.java index 6a4af68c0..3f0189bd3 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPFrame_Hash.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPFrame_Hash.java @@ -343,7 +343,7 @@ public class XomwPPFrame_Hash extends XomwPPFrame { // /** // XophpArray bits = XomwPPNode_Hash_Tree.splitRawHeading(contextChildren); // String titleText = this.title.getPrefixedDBkeyStr(); // this.parser.mHeadings.Add(titleText, bits.Get_by("i")); -// int serial = XophpArray_.count(this.parser.mHeadings) - 1; +// int serial = XophpArray.count(this.parser.mHeadings) - 1; // String marker = XomwParser.MARKER_PREFIX + "-h-" + Int_.To_str(serial) + "-" + XomwParser.MARKER_SUFFIX; // s = XophpString_.substr(s, 0, bits.Get_by_int("level")) + marker + XophpString_.substr(s, bits.Get_by_int("level")); // this.parser.mStripState.addGeneral(marker, ""); @@ -384,7 +384,7 @@ public class XomwPPFrame_Hash extends XomwPPFrame { // /** // * @return String // */ // public String implodeWithFlags(String sep, int flags, XophpArray args) { -// // args = XophpArray_.array_slice(func_get_args(), 2); +// // args = XophpArray.array_slice(func_get_args(), 2); // // boolean first = true; // String s = ""; diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPNode_Hash_Array.java b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPNode_Hash_Array.java index 21be76695..3356ccb9b 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPNode_Hash_Array.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPNode_Hash_Array.java @@ -1,18 +1,18 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ package gplx.xowa.mediawiki.includes.parsers.preprocessors_new; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; import gplx.xowa.mediawiki.includes.*; import gplx.xowa.mediawiki.includes.parsers.*; import gplx.xowa.mediawiki.includes.exception.*; // MW.FILE:Preprocessor_Hash @@ -31,7 +31,7 @@ public class XomwPPNode_Hash_Array extends XomwPPNode { public XophpArray value } @Override public int getLength() { - return XophpArray_.count(this.value); + return XophpArray.count(this.value); } @Override public XomwPPNode item(int i) { diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPNode_Hash_Tree.java b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPNode_Hash_Tree.java index cdfbf0aba..e3436bd6f 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPNode_Hash_Tree.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPNode_Hash_Tree.java @@ -1,19 +1,20 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ -package gplx.xowa.mediawiki.includes.parsers.preprocessors_new; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; import gplx.xowa.mediawiki.includes.*; import gplx.xowa.mediawiki.includes.parsers.*; +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ +package gplx.xowa.mediawiki.includes.parsers.preprocessors_new; import gplx.*; +import gplx.xowa.mediawiki.*; // MW.FILE:Preprocessor_Hash /** * @ingroup Parser @@ -138,7 +139,7 @@ public class XomwPPNode_Hash_Tree extends XomwPPNode { public final String na int rawChildrenLen = rawChildren.Len(); for (int i = 0; i < rawChildrenLen; i++) { XophpArrayItm itm = rawChildren.Get_at_itm(i); - children.Add(XomwPPNode_Hash_Tree.factory(this.rawChildren, itm.Key_as_int())); + children.Add(XomwPPNode_Hash_Tree.factory(this.rawChildren, itm.KeyAsInt())); } return new XomwPPNode_Hash_Array(children); } @@ -151,7 +152,7 @@ public class XomwPPNode_Hash_Tree extends XomwPPNode { public final String na * @return PPNode_Hash_Tree|PPNode_Hash_Attr|PPNode_Hash_Text|boolean */ @Override public XomwPPNode getFirstChild() { - if (!XophpArray_.isset(this.rawChildren, 0)) { + if (!XophpArray.isset(this.rawChildren, 0)) { return null; } else { @@ -183,7 +184,7 @@ public class XomwPPNode_Hash_Tree extends XomwPPNode { public final String na XophpArrayItm itm = this.rawChildren.Get_at_itm(idx); Object child = itm.Val(); if (XophpType_.is_array(child) && String_.Eq(((XophpArray)child).Get_at_str(XomwPPNode_Hash_Tree.NAME), name)) { - children.Add(XomwPPNode_Hash_Tree.factory(this.rawChildren, itm.Key_as_int())); + children.Add(XomwPPNode_Hash_Tree.factory(this.rawChildren, itm.KeyAsInt())); } } return new XomwPPNode_Hash_Array(children); @@ -245,7 +246,7 @@ public class XomwPPNode_Hash_Tree extends XomwPPNode { public final String na continue; } XophpArray child = (XophpArray)childObj; - int i = itm.Key_as_int(); + int i = itm.KeyAsInt(); if (String_.Eq(child.Get_at_str(XomwPPNode_Hash_Tree.NAME), "name")) { bits.Set("name", new XomwPPNode_Hash_Tree(children, i)); if (XophpObject_.isset_obj(child.Get_at_ary(XomwPPNode_Hash_Tree.CHILDREN).Get_at_ary(0).Get_at(XomwPPNode_Hash_Tree.NAME)) @@ -284,7 +285,7 @@ public class XomwPPNode_Hash_Tree extends XomwPPNode { public final String na */ public static XophpArray splitRawExt(XophpArray children) { XophpArray bits = XophpArray.New(); - int len = children.count(); + int len = children.Len(); for (int i = 0; i < len; i++) { Object childObj = children.Get_at(i); if (!XophpArray.is_array(childObj)) { @@ -305,7 +306,7 @@ public class XomwPPNode_Hash_Tree extends XomwPPNode { public final String na bits.Add("close", new XomwPPNode_Hash_Tree(children, i)); } } - if (!bits.isset("name")) { + if (!XophpArray.isset(bits, "name")) { throw new XomwMWException("Invalid ext node passed to " + "splitRawExt"); } return bits; @@ -329,7 +330,7 @@ public class XomwPPNode_Hash_Tree extends XomwPPNode { public final String na */ public static XophpArray splitRawHeading(XophpArray children) { XophpArray bits = XophpArray.New(); - int len = children.count(); + int len = children.Len(); for (int i = 0; i < len; i++) { Object childObj = children.Get_at(i); if (!XophpArray.is_array(childObj)) { @@ -344,7 +345,7 @@ public class XomwPPNode_Hash_Tree extends XomwPPNode { public final String na bits.Add("level", childChildren.Get_at(0)); } } - if (!bits.isset("i")) { + if (!XophpArray.isset(bits, "i")) { throw new XomwMWException("Invalid h node passed to " + "splitRawHeading"); } return bits; @@ -366,7 +367,7 @@ public class XomwPPNode_Hash_Tree extends XomwPPNode { public final String na public static XophpArray splitRawTemplate(XophpArray children) { XophpArray parts = XophpArray.New(); XophpArray bits = XophpArray.New("lineStart" , ""); - int len = children.count(); + int len = children.Len(); for (int i = 0; i < len; i++) { Object childObj = children.Get_at(i); if (!XophpArray.is_array(childObj)) { @@ -383,7 +384,7 @@ public class XomwPPNode_Hash_Tree extends XomwPPNode { public final String na bits.Add("lineStart", "1"); } } - if (!bits.isset("title")) { + if (!XophpArray.isset(bits, "title")) { throw new XomwMWException("Invalid node passed to " + "splitRawTemplate"); } bits.Add("parts", new XomwPPNode_Hash_Array(parts)); diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPTemplateFrame_Hash.java b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPTemplateFrame_Hash.java index 9f1ced0ce..8b5b09b45 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPTemplateFrame_Hash.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPPTemplateFrame_Hash.java @@ -51,7 +51,7 @@ Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt // public override String toString() { // String s = "tplframe{"; // boolean first = true; -// XophpArray args = XophpArray_.array_add(this.numberedArgs, this.namedArgs); +// XophpArray args = XophpArray.array_add(this.numberedArgs, this.namedArgs); // int args_len = args.count(); // for (int i = 0; i < args_len; i++) { // XophpArrayItm itm = args.Get_at_itm(i); @@ -99,9 +99,9 @@ Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt // */ // public override XophpArray getArguments() { // XophpArray arguments = XophpArray.New(); -// XophpArray merged = XophpArray_.array_merge( -// XophpArray_.array_keys(this.numberedArgs), -// XophpArray_.array_keys(this.namedArgs)); +// XophpArray merged = XophpArray.array_merge( +// XophpArray.array_keys(this.numberedArgs), +// XophpArray.array_keys(this.namedArgs)); // int merged_len = merged.count(); // for (int i = 0; i < merged_len; i++) { // String key = merged.Get_at_str(i); @@ -115,7 +115,7 @@ Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt // */ // public override XophpArray getNumberedArguments() { // XophpArray arguments = XophpArray.New(); -// XophpArray temp = XophpArray_.array_keys(this.numberedArgs); +// XophpArray temp = XophpArray.array_keys(this.numberedArgs); // int temp_len = temp.count(); // for (int i = 0; i < temp_len; i++) { // String key = temp.Get_at_str(i); @@ -129,7 +129,7 @@ Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt // */ // public override XophpArray getNamedArguments() { // XophpArray arguments = XophpArray.New(); -// XophpArray temp = XophpArray_.array_keys(this.namedArgs); +// XophpArray temp = XophpArray.array_keys(this.namedArgs); // int temp_len = temp.count(); // for (int i = 0; i < temp_len; i++) { // String key = temp.Get_at_str(i); diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPreprocessor_Hash.java b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPreprocessor_Hash.java index e6d9c7ffb..afb994066 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPreprocessor_Hash.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/preprocessors_new/XomwPreprocessor_Hash.java @@ -1,24 +1,23 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ -package gplx.xowa.mediawiki.includes.parsers.preprocessors_new; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; import gplx.xowa.mediawiki.includes.*; import gplx.xowa.mediawiki.includes.parsers.*; +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ +package gplx.xowa.mediawiki.includes.parsers.preprocessors_new; import gplx.*; +import gplx.xowa.mediawiki.*; import gplx.xowa.mediawiki.includes.*; import gplx.xowa.mediawiki.includes.parsers.*; // MW.SRC:1.33 -import gplx.core.bits.*; import gplx.langs.regxs.*; -import gplx.xowa.mediawiki.includes.exception.*; -import gplx.xowa.mediawiki.includes.parsers.preprocessors.*; + /** * Differences from DOM schema: * * attribute nodes are children @@ -145,7 +144,7 @@ public class XomwPreprocessor_Hash extends XomwPreprocessor { ignoredElements = XophpArray.New("includeonly"); xmlishElements.Add("includeonly"); } - String xmlishRegex = XophpArray_.implode("|", XophpArray_.array_merge(xmlishElements, ignoredTags)); + String xmlishRegex = XophpArray.implode("|", XophpArray.array_merge(xmlishElements, ignoredTags)); // Use "A" modifier (anchored) instead of "^", because ^ doesn"t work with an offset Regx_adp elementsRegex = XophpRegex_.Pattern("(" + xmlishRegex + ")(?:\\s|\\/>|>)|(!--)", XophpRegex_.MODIFIER_i | XophpRegex_.MODIFIER_A); @@ -302,7 +301,7 @@ public class XomwPreprocessor_Hash extends XomwPreprocessor { continue; } // Handle comments - if (XophpArray_.isset(matches, 2) && String_.Eq(matches.Get_at_str(2), "!--")) { + if (XophpArray.isset(matches, 2) && String_.Eq(matches.Get_at_str(2), "!--")) { // To avoid leaving blank lines, when a sequence of // space-separated comments is both preceded and followed by // a newline (ignoring spaces), then @@ -345,7 +344,7 @@ public class XomwPreprocessor_Hash extends XomwPreprocessor { ) { // Remove leading whitespace from the end of the accumulator int wsLength = i - wsStart; - int endIndex = XophpArray_.count(accum) - 1; + int endIndex = XophpArray.count(accum) - 1; // Sanity check if (wsLength > 0 @@ -360,11 +359,11 @@ public class XomwPreprocessor_Hash extends XomwPreprocessor { int commentsLen = comments.Len(); for (int commentsIdx = 0; commentsIdx < commentsLen; commentsIdx++) { XophpArrayItm itm = comments.Get_at_itm(commentsIdx); - int j = itm.Key_as_int(); + int j = itm.KeyAsInt(); XophpArray com = (XophpArray)itm.Val(); startPos = com.Get_at_int(0); endPos = com.Get_at_int(1) + 1; - if (j == (XophpArray_.count(comments) - 1)) { + if (j == (XophpArray.count(comments) - 1)) { break; } inner = XophpString_.substr(text, startPos, endPos - startPos); @@ -409,7 +408,7 @@ public class XomwPreprocessor_Hash extends XomwPreprocessor { } // Handle ignored tags - if (XophpArray_.in_array(lowerName, ignoredTags)) { + if (XophpArray.in_array(lowerName, ignoredTags)) { accum.Add(XophpArray.New("ignore", XophpArray.New(XophpString_.substr(text, i, tagEndPos - i + 1)))); i = tagEndPos + 1; continue; @@ -436,7 +435,7 @@ public class XomwPreprocessor_Hash extends XomwPreprocessor { close = matches.Get_at_ary(0).Get_at_str(0); } else { // No end tag - if (XophpArray_.in_array(name, xmlishAllowMissingEndTag)) { + if (XophpArray.in_array(name, xmlishAllowMissingEndTag)) { // Let it run out to the end of the text. inner = XophpString_.substr(text, tagEndPos + 1); i = lengthText; @@ -453,7 +452,7 @@ public class XomwPreprocessor_Hash extends XomwPreprocessor { } } // and just become tags - if (XophpArray_.in_array(lowerName, ignoredElements)) { + if (XophpArray.in_array(lowerName, ignoredElements)) { accum.Add(XophpArray.New("ignore", XophpArray.New(XophpString_.substr(text, tagStartPos, i - tagStartPos)))); continue; } @@ -503,13 +502,13 @@ public class XomwPreprocessor_Hash extends XomwPreprocessor { stack.push(piece); accum = stack.getAccum(); // =& XophpArray stackFlags = stack.getFlags(); - if (XophpArray_.isset(stackFlags, "findEquals")) { + if (XophpArray.isset(stackFlags, "findEquals")) { findEquals = stackFlags.Get_by_bool("findEquals"); } - if (XophpArray_.isset(stackFlags, "findPipe")) { + if (XophpArray.isset(stackFlags, "findPipe")) { findPipe = stackFlags.Get_by_bool("findPipe"); } - if (XophpArray_.isset(stackFlags, "inHeading")) { + if (XophpArray.isset(stackFlags, "inHeading")) { inHeading = stackFlags.Get_by_bool("inHeading"); } i += count; @@ -553,7 +552,7 @@ public class XomwPreprocessor_Hash extends XomwPreprocessor { if (count > 0) { // Normal match, output element = XophpArray.New(XophpArray.New("possible-h", - XophpArray_.array_merge( + XophpArray.array_merge( XophpArray.New( XophpArray.New("@level", XophpArray.New(count)), XophpArray.New("@i", XophpArray.New(headingIndex++)) @@ -573,18 +572,18 @@ public class XomwPreprocessor_Hash extends XomwPreprocessor { stack.pop(); accum = stack.getAccum(); // =& XophpArray stackFlags = stack.getFlags(); - if (XophpArray_.isset(stackFlags, "findEquals")) { + if (XophpArray.isset(stackFlags, "findEquals")) { findEquals = stackFlags.Get_by_bool("findEquals"); } - if (XophpArray_.isset(stackFlags, "findPipe")) { + if (XophpArray.isset(stackFlags, "findPipe")) { findPipe = stackFlags.Get_by_bool("findPipe"); } - if (XophpArray_.isset(stackFlags, "inHeading")) { + if (XophpArray.isset(stackFlags, "inHeading")) { inHeading = stackFlags.Get_by_bool("inHeading"); } // Append the result to the enclosing accumulator - XophpArray_.array_splice(accum, XophpArray_.count(accum), 0, element); + XophpArray.array_splice(accum, XophpArray.count(accum), 0, element); // Note that we do NOT increment the input pointer. // This is because the closing linebreak could be the opening linebreak of @@ -625,13 +624,13 @@ public class XomwPreprocessor_Hash extends XomwPreprocessor { stack.push(piece); accum = stack.getAccum(); // =& XophpArray stackFlags = stack.getFlags(); - if (XophpArray_.isset(stackFlags, "findEquals")) { + if (XophpArray.isset(stackFlags, "findEquals")) { findEquals = stackFlags.Get_by_bool("findEquals"); } - if (XophpArray_.isset(stackFlags, "findPipe")) { + if (XophpArray.isset(stackFlags, "findPipe")) { findPipe = stackFlags.Get_by_bool("findPipe"); } - if (XophpArray_.isset(stackFlags, "inHeading")) { + if (XophpArray.isset(stackFlags, "inHeading")) { inHeading = stackFlags.Get_by_bool("inHeading"); } } else { @@ -663,7 +662,7 @@ public class XomwPreprocessor_Hash extends XomwPreprocessor { // Skip any gaps in the callback array to find the true largest match // Need to use array_key_exists not isset because the callback can be null matchingCount = count; - while (matchingCount > 0 && !XophpArray_.array_key_exists(matchingCount, rule.Get_by_ary("names"))) { + while (matchingCount > 0 && !XophpArray.array_key_exists(matchingCount, rule.Get_by_ary("names"))) { --matchingCount; } } @@ -688,7 +687,7 @@ public class XomwPreprocessor_Hash extends XomwPreprocessor { // Create XML element XophpArray parts = piece.parts; XophpArray titleAccum = ((XomwPPDPart)parts.Get_at(0)).output; - XophpArray_.unset(parts, 0); + XophpArray.unset(parts, 0); XophpArray children = XophpArray.New(); @@ -707,8 +706,8 @@ public class XomwPreprocessor_Hash extends XomwPreprocessor { XomwPPDPart_Hash part = (XomwPPDPart_Hash)parts.Get_at(j); if (XophpInt_.is_true(part.eqpos)) { // XO.NOTE: MW says isset(part.commentEnd) b/c commentEnd can be null due to magic property Object equalsNode = part.output.Get_at(part.eqpos); - XophpArray nameNode = XophpArray.New("name", XophpArray_.array_slice(part.output, 0, part.eqpos)); - XophpArray valueNode = XophpArray.New("value", XophpArray_.array_slice(part.output, part.eqpos + 1)); + XophpArray nameNode = XophpArray.New("name", XophpArray.array_slice(part.output, 0, part.eqpos)); + XophpArray valueNode = XophpArray.New("value", XophpArray.array_slice(part.output, part.eqpos + 1)); XophpArray partNode = XophpArray.New("part", XophpArray.New(nameNode, equalsNode, valueNode)); children.Add(partNode); } else { @@ -757,18 +756,18 @@ public class XomwPreprocessor_Hash extends XomwPreprocessor { } XophpArray stackFlags = stack.getFlags(); - if (XophpArray_.isset(stackFlags, "findEquals")) { + if (XophpArray.isset(stackFlags, "findEquals")) { findEquals = stackFlags.Get_by_bool("findEquals"); } - if (XophpArray_.isset(stackFlags, "findPipe")) { + if (XophpArray.isset(stackFlags, "findPipe")) { findPipe = stackFlags.Get_by_bool("findPipe"); } - if (XophpArray_.isset(stackFlags, "inHeading")) { + if (XophpArray.isset(stackFlags, "inHeading")) { inHeading = stackFlags.Get_by_bool("inHeading"); } // Add XML element to the enclosing accumulator - XophpArray_.array_splice(accum, XophpArray_.count(accum), 0, element); + XophpArray.array_splice(accum, XophpArray.count(accum), 0, element); } else if (String_.Eq(found, "pipe")) { findEquals = true; // shortcut for getFlags() stack.addPart(); @@ -777,7 +776,7 @@ public class XomwPreprocessor_Hash extends XomwPreprocessor { } else if (String_.Eq(found, "equals")) { findEquals = false; // shortcut for getFlags() accum.Add(XophpArray.New("equals", XophpArray.New("="))); - stack.getCurrentPart().eqpos = XophpArray_.count(accum) - 1; + stack.getCurrentPart().eqpos = XophpArray.count(accum) - 1; ++i; } } @@ -787,7 +786,7 @@ public class XomwPreprocessor_Hash extends XomwPreprocessor { int tempStackLen = tempStack.Len(); for (int j = 0; j < tempStackLen; j++) { XomwPPDStackElement_Hash piece = (XomwPPDStackElement_Hash)tempStack.Get_at(j); - XophpArray_.array_splice(stack.rootAccum, XophpArray_.count(stack.rootAccum), 0, piece.breakSyntax()); + XophpArray.array_splice(stack.rootAccum, XophpArray.count(stack.rootAccum), 0, piece.breakSyntax()); } // Enable top-level headings @@ -795,7 +794,7 @@ public class XomwPreprocessor_Hash extends XomwPreprocessor { int rootAccumLen = rootAccum.Len(); for (int j = 0; j < rootAccumLen; j++) { XophpArray node = rootAccum.Get_at_ary_or_null(j); // stack.rootAccum as &node - if (XophpArray_.is_array(node) && String_.Eq(node.Get_at_str(XomwPPNode_Hash_Tree.NAME), "possible-h")) { + if (XophpArray.is_array(node) && String_.Eq(node.Get_at_str(XomwPPNode_Hash_Tree.NAME), "possible-h")) { node.Set(XomwPPNode_Hash_Tree.NAME, "h"); } } @@ -813,7 +812,7 @@ public class XomwPreprocessor_Hash extends XomwPreprocessor { } private static void addLiteral(XophpArray accum, String text) { - int n = XophpArray_.count(accum); + int n = XophpArray.count(accum); if (XophpInt_.is_true(n) && XophpType_.is_string(accum.Get_at(n - 1))) { accum.Concat_str(n - 1, text); } else { diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/tables/Xomw_table_wkr.java b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/tables/Xomw_table_wkr.java index 0f454e5c7..96e261519 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/tables/Xomw_table_wkr.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/parsers/tables/Xomw_table_wkr.java @@ -1,18 +1,18 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ package gplx.xowa.mediawiki.includes.parsers.tables; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; import gplx.xowa.mediawiki.includes.*; import gplx.xowa.mediawiki.includes.parsers.*; import gplx.xowa.parsers.htmls.*; import gplx.xowa.mediawiki.includes.libs.*; import gplx.xowa.parsers.uniqs.*; @@ -48,13 +48,13 @@ public class Xomw_table_wkr implements gplx.core.brys.Bry_split_wkr {// THREAD.U // Closing open td, tr && table while (td_history.Len() > 0) { - if (XophpArray_.popBoolOrN(td_history)) { + if (XophpArray.popBoolOrN(td_history)) { bfr.Add_str_a7("\n"); } - if (XophpArray_.popBoolOrN(tr_history)) { + if (XophpArray.popBoolOrN(tr_history)) { bfr.Add_str_a7("\n"); } - if (!XophpArray_.popBoolOrN(has_opened_tr)) { + if (!XophpArray.popBoolOrN(has_opened_tr)) { bfr.Add_str_a7("\n"); } bfr.Add_str_a7("\n"); @@ -123,20 +123,20 @@ public class Xomw_table_wkr implements gplx.core.brys.Bry_split_wkr {// THREAD.U else if (Bry_.Eq(first_2, Wtxt__tb__end)) { // We are ending a table line = tmp.Add_str_a7("").Add_mid(line, 2, line.length).To_bry_and_clear(); - byte[] last_tag = XophpArray_.popBryOrNull(last_tag_history); + byte[] last_tag = XophpArray.popBryOrNull(last_tag_history); - if (!XophpArray_.popBoolOrN(has_opened_tr)) { + if (!XophpArray.popBoolOrN(has_opened_tr)) { line = tmp.Add_str_a7("").Add(line).To_bry_and_clear(); } - if (XophpArray_.popBoolOrN(tr_history)) { + if (XophpArray.popBoolOrN(tr_history)) { line = tmp.Add_str_a7("").Add(line).To_bry_and_clear(); } - if (XophpArray_.popBoolOrN(td_history)) { + if (XophpArray.popBoolOrN(td_history)) { line = tmp.Add_str_a7("', $indent_level ); tmp.Add(line); for (int j = 0; j < indent_level; j++) @@ -152,19 +152,19 @@ public class Xomw_table_wkr implements gplx.core.brys.Bry_split_wkr {// THREAD.U sanitizer.fixTagAttributes(tmp, Name__tr, atrs); atrs = tmp.To_bry_and_clear(); - XophpArray_.popBryOrNull(tr_attributes); + XophpArray.popBryOrNull(tr_attributes); tr_attributes.Add(atrs); line = Bry_.Empty; - byte[] last_tag = XophpArray_.popBryOrNull(last_tag_history); - XophpArray_.popBoolOrN(has_opened_tr); + byte[] last_tag = XophpArray.popBryOrNull(last_tag_history); + XophpArray.popBoolOrN(has_opened_tr); has_opened_tr.Add(true); - if (XophpArray_.popBoolOrN(tr_history)) { + if (XophpArray.popBoolOrN(tr_history)) { line = Html__tr__end; } - if (XophpArray_.popBoolOrN(td_history)) { + if (XophpArray.popBoolOrN(td_history)) { line = tmp.Add_str_a7("\n").To_bry_and_clear(); } tr_history.Add(true); tr_attributes.Add(Bry_.Empty); - XophpArray_.popBoolOrN(has_opened_tr); + XophpArray.popBoolOrN(has_opened_tr); has_opened_tr.Add(true); } - byte[] last_tag = XophpArray_.popBryOrNull(last_tag_history); + byte[] last_tag = XophpArray.popBryOrNull(last_tag_history); - if (XophpArray_.popBoolOrN(td_history)) { + if (XophpArray.popBoolOrN(td_history)) { previous = tmp.Add_str_a7("\n").Add(previous).To_bry_and_clear(); } diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/site/XomwSiteList.java b/400_xowa/src/gplx/xowa/mediawiki/includes/site/XomwSiteList.java index 0582f0504..4e9096215 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/site/XomwSiteList.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/site/XomwSiteList.java @@ -104,14 +104,14 @@ public class XomwSiteList extends XomwGenericArrayObject { public int Len() {ret */ XomwSite site = (XomwSite)this.offsetGet(index); - XophpArray_.unset(this.byGlobalId, site.getGlobalId()); - XophpArray_.unset(this.byInternalId, site.getInternalId()); + XophpArray.unset(this.byGlobalId, site.getGlobalId()); + XophpArray.unset(this.byInternalId, site.getInternalId()); Ordered_hash ids = site.getNavigationIds(); int len = ids.Len(); for (int i = 0; i < len; i++) { int navId = Int_.Cast(ids.Get_at(i)); - XophpArray_.unset(this.byNavigationId, navId); + XophpArray.unset(this.byNavigationId, navId); } } @@ -127,7 +127,7 @@ public class XomwSiteList extends XomwGenericArrayObject { public int Len() {ret * @return array */ public String[] getGlobalIdentifiers() { - return XophpArray_.array_keys_str(this.byGlobalId); + return XophpArray.array_keys_str(this.byGlobalId); } /** @@ -138,7 +138,7 @@ public class XomwSiteList extends XomwGenericArrayObject { public int Len() {ret * @return boolean */ public boolean hasSite(String globalSiteId) { - return XophpArray_.array_key_exists(globalSiteId, this.byGlobalId); + return XophpArray.array_key_exists(globalSiteId, this.byGlobalId); } /** @@ -175,7 +175,7 @@ public class XomwSiteList extends XomwGenericArrayObject { public int Len() {ret * @return boolean */ @Override public boolean isEmpty() { - return XophpArray_.empty(this.byGlobalId); + return XophpArray.empty(this.byGlobalId); } /** @@ -186,7 +186,7 @@ public class XomwSiteList extends XomwGenericArrayObject { public int Len() {ret * @return boolean */ public boolean hasInternalId(int id) { - return XophpArray_.array_key_exists(id, this.byInternalId); + return XophpArray.array_key_exists(id, this.byInternalId); } /** @@ -223,7 +223,7 @@ public class XomwSiteList extends XomwGenericArrayObject { public int Len() {ret * @return boolean */ public boolean hasNavigationId(String id) { - return XophpArray_.array_key_exists(id, this.byNavigationId); + return XophpArray.array_key_exists(id, this.byNavigationId); } /** diff --git a/400_xowa/src/gplx/xowa/mediawiki/includes/user/XomwUser.java b/400_xowa/src/gplx/xowa/mediawiki/includes/user/XomwUser.java index 0720f07e6..95b287c14 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/includes/user/XomwUser.java +++ b/400_xowa/src/gplx/xowa/mediawiki/includes/user/XomwUser.java @@ -18,7 +18,7 @@ package gplx.xowa.mediawiki.includes.user; // MW.SRC:1.33.1 import gplx.xowa.mediawiki.XophpArray; -import gplx.xowa.mediawiki.XophpArray_; +import gplx.xowa.mediawiki.XophpArray; import gplx.xowa.mediawiki.includes.XomwWebRequest; import gplx.xowa.mediawiki.includes.dao.XomwIDBAccessObject; @@ -3167,11 +3167,11 @@ public class XomwUser implements XomwIDBAccessObject { //, UserIdentity // set it, and then it was disabled removing their ability to change it). But // we don't want to erase the preferences in the database in case the preference // is re-enabled again. So don't touch $mOptions, just override the returned value - if (!ignoreHidden && XophpArray_.in_array(oname, wgHiddenPrefs)) { + if (!ignoreHidden && XophpArray.in_array(oname, wgHiddenPrefs)) { // return getDefaultOption(oname); } - if (XophpArray_.array_key_exists(oname, this.mOptions)) { + if (XophpArray.array_key_exists(oname, this.mOptions)) { return this.mOptions.Get_by(oname); } diff --git a/400_xowa/src/gplx/xowa/mediawiki/languages/XomwLanguage.java b/400_xowa/src/gplx/xowa/mediawiki/languages/XomwLanguage.java index dabe6faae..cc2819fb1 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/languages/XomwLanguage.java +++ b/400_xowa/src/gplx/xowa/mediawiki/languages/XomwLanguage.java @@ -1,18 +1,18 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ package gplx.xowa.mediawiki.languages; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; import gplx.langs.regxs.*; import gplx.core.primitives.*; @@ -4038,12 +4038,12 @@ public class XomwLanguage { return (String)formsObject; } forms = (XophpArray)formsObject; - if (!forms.count_bool()) { + if (!XophpArray.count_bool(forms)) { return ""; } int pluralForm = this.getPluralRuleIndexNumber(count); - pluralForm = XophpMath_.min(pluralForm, forms.count() - 1); + pluralForm = XophpMath_.min(pluralForm, XophpArray.count(forms) - 1); return forms.Get_at_str(pluralForm); } @@ -4064,7 +4064,7 @@ public class XomwLanguage { */ public Object handleExplicitPluralForms(String count, XophpArray forms) { XophpArray mutable = forms.Clone(); - int len = forms.count(); + int len = forms.Len(); for (int i = 0; i < len; i++) { XophpArrayItm formItem = forms.Get_at_itm(i); String index = formItem.Key(); @@ -4074,11 +4074,11 @@ public class XomwLanguage { if (String_.Eq(XophpString_.substr(form, 0, pos), count)) { return XophpString_.substr(form, pos + 1); } - mutable.unset(index); + XophpArray.unset(mutable, index); } } - return mutable.values(); + return XophpArray.array_values(mutable); } private static final Regx_adp handleExplicitPluralForms_digits = Regx_adp_.new_("\\d+="); @@ -4987,7 +4987,7 @@ public class XomwLanguage { if (pluralRules == null) return getCompiledPluralRulesEmpty; XophpArray fallbacks = XomwLanguage.getFallbacksFor(this.mCode); if (!XophpObject_.is_true(pluralRules)) { - int fallbacks_len = fallbacks.count(); + int fallbacks_len = fallbacks.Len(); for (int i = 0; i < fallbacks_len; i++) { String fallbackCode = fallbacks.Get_at_str(i); pluralRules = XomwLanguage.dataCacheXowa.getItem_ary(XophpString_.strtolower(fallbackCode), "compiledPluralRules"); diff --git a/400_xowa/src/gplx/xowa/mediawiki/languages/XomwLanguage_fxt.java b/400_xowa/src/gplx/xowa/mediawiki/languages/XomwLanguage_fxt.java index 452771c02..e8d918c52 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/languages/XomwLanguage_fxt.java +++ b/400_xowa/src/gplx/xowa/mediawiki/languages/XomwLanguage_fxt.java @@ -1,18 +1,18 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ package gplx.xowa.mediawiki.languages; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; import gplx.core.tests.*; import gplx.xowa.langs.*; diff --git a/400_xowa/src/gplx/xowa/mediawiki/vendor/wikimedia/cldr_plural_rule_parser/src/Converter/XomwOperator.java b/400_xowa/src/gplx/xowa/mediawiki/vendor/wikimedia/cldr_plural_rule_parser/src/Converter/XomwOperator.java index 782267a62..06cef7c5e 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/vendor/wikimedia/cldr_plural_rule_parser/src/Converter/XomwOperator.java +++ b/400_xowa/src/gplx/xowa/mediawiki/vendor/wikimedia/cldr_plural_rule_parser/src/Converter/XomwOperator.java @@ -1,18 +1,18 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ package gplx.xowa.mediawiki.vendor.wikimedia.cldr_plural_rule_parser.src.Converter; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; import gplx.xowa.mediawiki.vendor.*; import gplx.xowa.mediawiki.vendor.wikimedia.*; import gplx.xowa.mediawiki.vendor.wikimedia.cldr_plural_rule_parser.*; import gplx.xowa.mediawiki.vendor.wikimedia.cldr_plural_rule_parser.src.*; // MW.SRC:1.33.1 /** @@ -77,7 +77,7 @@ public class XomwOperator extends XomwFragment { /** @var String The name */ * @param int length */ public XomwOperator(XomwConverter parser, String name, int pos, int length) {super(parser, pos, length); - if (XomwOperator.aliasMap.isset(name)) { + if (XophpArray.isset(XomwOperator.aliasMap, name)) { name = XomwOperator.aliasMap.Get_by_str(name); } this.name = name; diff --git a/400_xowa/src/gplx/xowa/mediawiki/vendor/wikimedia/cldr_plural_rule_parser/src/XomwConverter.java b/400_xowa/src/gplx/xowa/mediawiki/vendor/wikimedia/cldr_plural_rule_parser/src/XomwConverter.java index e29224531..7a23c18ed 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/vendor/wikimedia/cldr_plural_rule_parser/src/XomwConverter.java +++ b/400_xowa/src/gplx/xowa/mediawiki/vendor/wikimedia/cldr_plural_rule_parser/src/XomwConverter.java @@ -1,18 +1,18 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ package gplx.xowa.mediawiki.vendor.wikimedia.cldr_plural_rule_parser.src; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; import gplx.xowa.mediawiki.vendor.*; import gplx.xowa.mediawiki.vendor.wikimedia.*; import gplx.xowa.mediawiki.vendor.wikimedia.cldr_plural_rule_parser.*; import gplx.xowa.mediawiki.vendor.wikimedia.cldr_plural_rule_parser.src.Converter.*; import gplx.langs.regxs.*; @@ -148,11 +148,11 @@ public class XomwConverter { token.error("unexpected operator"); } // Resolve higher precedence levels - XomwOperator lastOp = (XomwOperator)this.operators.end(); + XomwOperator lastOp = (XomwOperator)XophpArray.end(this.operators); while (lastOp != null && Int_.Cast(XomwConverter.precedence.Get_by(((XomwOperator)token).name)) <= Int_.Cast(XomwConverter.precedence.Get_by(((XomwOperator)lastOp).name))) { this.doOperation(lastOp, this.operands); - this.operators.pop(); - lastOp = (XomwOperator)this.operators.end(); + XophpArray.array_pop(this.operators); + lastOp = (XomwOperator)XophpArray.end(this.operators); } this.operators.Add(token); } @@ -160,15 +160,15 @@ public class XomwConverter { // Finish off the stack XomwOperator op = null; - while (null != (op = (XomwOperator)this.operators.pop())) { + while (null != (op = (XomwOperator)XophpArray.array_pop(this.operators))) { this.doOperation(op, this.operands); } // Make sure the result is sane. The first case is possible for an empty // String input, the second should be unreachable. - if (!this.operands.count_bool()) { + if (!XophpArray.count_bool(this.operands)) { this.error("condition expected"); - } else if (this.operands.count() > 1) { + } else if (XophpArray.count(this.operands) > 1) { this.error("missing operator or too many operands"); } @@ -248,7 +248,7 @@ public class XomwConverter { // Two-word operators like "is not" take precedence over single-word operators like "is" if (String_.Eq(word2, "")) { String bothWords = word1 + "-" + word2; - if (XomwConverter.precedence.isset(bothWords)) { + if (XophpArray.isset(XomwConverter.precedence, bothWords)) { XomwFragment token = this.newOperator(bothWords, this.pos, nextTokenPos - this.pos); this.pos = nextTokenPos; @@ -257,7 +257,7 @@ public class XomwConverter { } // Single-word operators - if (XomwConverter.precedence.isset(word1)) { + if (XophpArray.isset(XomwConverter.precedence, word1)) { XomwFragment token = this.newOperator(word1, this.pos, XophpString_.strlen(word1)); this.pos += XophpString_.strlen(word1); @@ -293,11 +293,11 @@ public class XomwConverter { * @param Operator op */ protected void doOperation(XomwOperator op, Object ignore) { // NOTE: MW passes 2 args, but method only has 1 - if (this.operands.count() < 2) { + if (XophpArray.count(this.operands) < 2) { op.error("missing operand"); } - XomwExpression right = (XomwExpression)this.operands.pop(); - XomwExpression left = (XomwExpression)this.operands.pop(); + XomwExpression right = (XomwExpression)XophpArray.array_pop(this.operands); + XomwExpression left = (XomwExpression)XophpArray.array_pop(this.operands); XomwExpression result = op.operate(left, right); this.operands.Add(result); } diff --git a/400_xowa/src/gplx/xowa/mediawiki/vendor/wikimedia/cldr_plural_rule_parser/src/XomwEvaluator.java b/400_xowa/src/gplx/xowa/mediawiki/vendor/wikimedia/cldr_plural_rule_parser/src/XomwEvaluator.java index b7be17812..8baaeab95 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/vendor/wikimedia/cldr_plural_rule_parser/src/XomwEvaluator.java +++ b/400_xowa/src/gplx/xowa/mediawiki/vendor/wikimedia/cldr_plural_rule_parser/src/XomwEvaluator.java @@ -1,18 +1,18 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ package gplx.xowa.mediawiki.vendor.wikimedia.cldr_plural_rule_parser.src; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; import gplx.xowa.mediawiki.vendor.*; import gplx.xowa.mediawiki.vendor.wikimedia.*; import gplx.xowa.mediawiki.vendor.wikimedia.cldr_plural_rule_parser.*; import gplx.xowa.mediawiki.vendor.wikimedia.cldr_plural_rule_parser.src.Converter.*; // MW.SRC:1.33.1 @@ -42,7 +42,7 @@ public class XomwEvaluator { XophpArray rv = XophpArray.New(); // We can't use array_map() for this because it generates a warning if // there is an exception. - int rules_len = rules.count(); + int rules_len = rules.Len(); for (int i = 0; i < rules_len; i++) { String rule = rules.Get_at_str(i); rule = XomwConverter.convert(rule); @@ -69,11 +69,11 @@ public class XomwEvaluator { XophpArray m = XophpArray.New(); if (!XophpRegex_.preg_match_bool(gplx.langs.regxs.Regx_adp_.new_("^-?(([0-9]+)(?:\\.([0-9]+))?)"), number_str, m, 0, 0)) { XomwLog_.wfDebug_by_method("evaluateCompiled", ": invalid number input, returning \"other\"\n"); - return rules.count(); + return XophpArray.count(rules); } XophpArray operandSymbols = null; - if (!m.isset(3)) { + if (!XophpArray.isset(m, 3)) { operandSymbols = XophpArray.New() .Add("n", Decimal_adp_.int_(XophpInt_.intval(m.Get_at_str(1)))) .Add("i", Decimal_adp_.int_(XophpInt_.intval(m.Get_at_str(1)))) @@ -98,7 +98,7 @@ public class XomwEvaluator { // The compiled form is RPN, with tokens strictly delimited by // spaces, so this is a simple RPN evaluator. - int rules_len = rules.count(); + int rules_len = rules.Len(); for (int i = 0; i < rules_len; i++) { String rule = rules.Get_at_str(i); XophpArray stack = XophpArray.New(); @@ -108,13 +108,13 @@ public class XomwEvaluator { String[] tokens = XophpString_.explode(" ", rule); for (String token : tokens) { int ord = XophpString_.ord(token); - if (operandSymbols.isset(token)) { + if (XophpArray.isset(operandSymbols, token)) { stack.Add(XomwStackItem.New__number((Decimal_adp)operandSymbols.Get_by(token))); } else if (ord >= zero && ord <= nine) { stack.Add(XomwStackItem.New__number(Decimal_adp_.int_(XophpInt_.intval(token)))); } else { - XomwStackItem right = (XomwStackItem)stack.pop(); - XomwStackItem left = (XomwStackItem)stack.pop(); + XomwStackItem right = (XomwStackItem)XophpArray.array_pop(stack); + XomwStackItem left = (XomwStackItem)XophpArray.array_pop(stack); XomwStackItem result = XomwEvaluator.doOperation(token, left, right); stack.Add(result); } @@ -125,7 +125,7 @@ public class XomwEvaluator { } // None of the provided rules match. The number belongs to category // "other", which comes last. - return rules.count(); + return XophpArray.count(rules); } /** diff --git a/400_xowa/src/gplx/xowa/mediawiki/vendor/wikimedia/cldr_plural_rule_parser/src/XomwRange.java b/400_xowa/src/gplx/xowa/mediawiki/vendor/wikimedia/cldr_plural_rule_parser/src/XomwRange.java index e49a50662..3dc40a7f5 100644 --- a/400_xowa/src/gplx/xowa/mediawiki/vendor/wikimedia/cldr_plural_rule_parser/src/XomwRange.java +++ b/400_xowa/src/gplx/xowa/mediawiki/vendor/wikimedia/cldr_plural_rule_parser/src/XomwRange.java @@ -1,18 +1,18 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ package gplx.xowa.mediawiki.vendor.wikimedia.cldr_plural_rule_parser.src; import gplx.*; import gplx.xowa.*; import gplx.xowa.mediawiki.*; import gplx.xowa.mediawiki.vendor.*; import gplx.xowa.mediawiki.vendor.wikimedia.*; import gplx.xowa.mediawiki.vendor.wikimedia.cldr_plural_rule_parser.*; // MW.SRC:1.33.1 /** @@ -50,7 +50,7 @@ class XomwRange { */ public boolean isNumberIn(Decimal_adp number) {return isNumberIn(number, true);} public boolean isNumberIn(Decimal_adp number, boolean integerConstraint) { - int parts_len = parts.count(); + int parts_len = parts.Len(); for (int i = 0; i < parts_len; i++) { Object part_obj = this.parts.Get_at(i); if (XophpArray.is_array(part_obj)) { @@ -91,7 +91,7 @@ class XomwRange { */ public void add(Object otherObj) { if (Type_.Eq_by_obj(otherObj, XomwRange.class)) { - this.parts = XophpArray_.array_merge(this.parts, ((XomwRange)otherObj).parts); + this.parts = XophpArray.array_merge(this.parts, ((XomwRange)otherObj).parts); } else { this.parts.Add(otherObj); } @@ -105,7 +105,7 @@ class XomwRange { */ @Override public String toString() { String s = "Range("; - int parts_len = this.parts.count(); + int parts_len = this.parts.Len(); for (int i = 0; i < parts_len; i++) { Object part_obj = this.parts.Get_at(i); if (i > 0) { diff --git a/400_xowa/src/gplx/xowa/xtns/pfuncs/langs/Pfunc_plural.java b/400_xowa/src/gplx/xowa/xtns/pfuncs/langs/Pfunc_plural.java index 4f8b9d263..9072afc81 100644 --- a/400_xowa/src/gplx/xowa/xtns/pfuncs/langs/Pfunc_plural.java +++ b/400_xowa/src/gplx/xowa/xtns/pfuncs/langs/Pfunc_plural.java @@ -1,18 +1,18 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ package gplx.xowa.xtns.pfuncs.langs; import gplx.*; import gplx.xowa.*; import gplx.xowa.xtns.*; import gplx.xowa.xtns.pfuncs.*; import gplx.xowa.langs.*; import gplx.xowa.langs.kwds.*; import gplx.xowa.parsers.*; import gplx.xowa.parsers.tmpls.*; @@ -39,8 +39,8 @@ public class Pfunc_plural extends Pf_func_base { // no match for explicit key; take results (which has removed all explicit keys) and get plural rule index; EX: {{plural:1|2=two|3=three|one|many}} -> {{plural:?|one|many}} XophpArray resultArray = (XophpArray)result; int idx = ctx.Lang().Mw_lang().getPluralRuleIndexNumber(number_str); - if (idx >= resultArray.count()) // bound-check; EX: {{plural:2|wiki}} -> idx = 1 -> idx = 0 - idx = resultArray.count() - 1; + if (idx >= XophpArray.count(resultArray)) // bound-check; EX: {{plural:2|wiki}} -> idx = 1 -> idx = 0 + idx = XophpArray.count(resultArray) - 1; bfr.Add_str_u8(resultArray.Get_at_str(idx)); } } diff --git a/400_xowa/src/gplx/xowa/xtns/scribunto/libs/Scrib_lib_wikibase.java b/400_xowa/src/gplx/xowa/xtns/scribunto/libs/Scrib_lib_wikibase.java index 29ad17b60..cddfd4ee8 100644 --- a/400_xowa/src/gplx/xowa/xtns/scribunto/libs/Scrib_lib_wikibase.java +++ b/400_xowa/src/gplx/xowa/xtns/scribunto/libs/Scrib_lib_wikibase.java @@ -1,18 +1,18 @@ -/* -XOWA: the XOWA Offline Wiki Application -Copyright (C) 2012-2017 gnosygnu@gmail.com - -XOWA is licensed under the terms of the General Public License (GPL) Version 3, -or alternatively under the terms of the Apache License Version 2.0. - -You may use XOWA according to either of these licenses as is most appropriate -for your project on a case-by-case basis. - -The terms of each license can be found in the source code repository: - -GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt -Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt -*/ +/* +XOWA: the XOWA Offline Wiki Application +Copyright (C) 2012-2017 gnosygnu@gmail.com + +XOWA is licensed under the terms of the General Public License (GPL) Version 3, +or alternatively under the terms of the Apache License Version 2.0. + +You may use XOWA according to either of these licenses as is most appropriate +for your project on a case-by-case basis. + +The terms of each license can be found in the source code repository: + +GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt +Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt +*/ package gplx.xowa.xtns.scribunto.libs; import gplx.*; import gplx.xowa.*; import gplx.xowa.xtns.*; import gplx.xowa.xtns.scribunto.*; import gplx.langs.jsons.*; import gplx.xowa.xtns.wbases.*; import gplx.xowa.xtns.wbases.parsers.*; import gplx.xowa.xtns.wbases.claims.itms.*; import gplx.xowa.xtns.wbases.stores.*; import gplx.xowa.wikis.domains.*; @@ -359,11 +359,11 @@ public function formatValues( $snaksSerialization ) { // } // } // ksort( orderedPropertiesPart ); -// orderedProperties = XophpArray_.array_merge(orderedPropertiesPart, unorderedProperties); +// orderedProperties = XophpArray.array_merge(orderedPropertiesPart, unorderedProperties); // Lua tables start at 1 -// XophpArray orderedPropertiesResult = XophpArray_.array_combine( -// range(1, count(orderedProperties)), XophpArray_.array_values(orderedProperties) +// XophpArray orderedPropertiesResult = XophpArray.array_combine( +// range(1, count(orderedProperties)), XophpArray.array_values(orderedProperties) // ); // return rslt.Init_obj(orderedPropertiesResult.To_kv_ary()); return rslt.Init_obj(propertyIds); diff --git a/400_xowa/tst/gplx/xowa/mediawiki/XophpArray_tst.java b/400_xowa/tst/gplx/xowa/mediawiki/XophpArrayInstanceTest.java similarity index 79% rename from 400_xowa/tst/gplx/xowa/mediawiki/XophpArray_tst.java rename to 400_xowa/tst/gplx/xowa/mediawiki/XophpArrayInstanceTest.java index dee4c6845..66bb08638 100644 --- a/400_xowa/tst/gplx/xowa/mediawiki/XophpArray_tst.java +++ b/400_xowa/tst/gplx/xowa/mediawiki/XophpArrayInstanceTest.java @@ -13,18 +13,19 @@ The terms of each license can be found in the source code repository: GPLv3 License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-GPLv3.txt Apache License: https://github.com/gnosygnu/xowa/blob/master/LICENSE-APACHE2.txt */ -package gplx.xowa.mediawiki; import gplx.*; import gplx.xowa.*; +package gplx.xowa.mediawiki; + import org.junit.*; import gplx.core.tests.*; -public class XophpArray_tst { // REF: http://php.net/manual/en/language.types.array.php - private final XophpArray_fxt fxt = new XophpArray_fxt(); +public class XophpArrayInstanceTest { // REF: http://php.net/manual/en/language.types.array.php + private final XophpArrayfxt fxt = new XophpArrayfxt(); @Test public void array__kvs() { // $array = array("foo" => "bar", "bar" => "foo",); fxt.Test__array ( XophpArray.New() . Add("foo", "bar") . Add("bar", "foo") - , XophpArrayItm.New_str("foo", "bar") - , XophpArrayItm.New_str("bar", "foo") + , XophpArrayItm.NewStr("foo", "bar") + , XophpArrayItm.NewStr("bar", "foo") ); } @Test public void array__casting() { @@ -35,7 +36,7 @@ public class XophpArray_tst { // REF: http://php.net/manual/en/language.types.ar . Add("1" , "b") . Add(1.5 , "c") . Add(true, "d") - , XophpArrayItm.New_int(1, "d")); + , XophpArrayItm.NewInt(1, "d")); } @Test public void array__mixed() { // $array = array("foo" => "bar", "bar" => "foo", 100 => -100, -100 => 100); @@ -45,10 +46,10 @@ public class XophpArray_tst { // REF: http://php.net/manual/en/language.types.ar . Add("bar", "foo") . Add(100, -100) . Add(-100, 100) - , XophpArrayItm.New_str("foo", "bar") - , XophpArrayItm.New_str("bar", "foo") - , XophpArrayItm.New_int(100, -100) - , XophpArrayItm.New_int(-100, 100) + , XophpArrayItm.NewStr("foo", "bar") + , XophpArrayItm.NewStr("bar", "foo") + , XophpArrayItm.NewInt(100, -100) + , XophpArrayItm.NewInt(-100, 100) ); } @Test public void array__objs() { @@ -59,10 +60,10 @@ public class XophpArray_tst { // REF: http://php.net/manual/en/language.types.ar . Add("bar") . Add("hello") . Add("world") - , XophpArrayItm.New_int(0, "foo") - , XophpArrayItm.New_int(1, "bar") - , XophpArrayItm.New_int(2, "hello") - , XophpArrayItm.New_int(3, "world") + , XophpArrayItm.NewInt(0, "foo") + , XophpArrayItm.NewInt(1, "bar") + , XophpArrayItm.NewInt(2, "hello") + , XophpArrayItm.NewInt(3, "world") ); } @Test public void array__unkeyed() { @@ -73,10 +74,10 @@ public class XophpArray_tst { // REF: http://php.net/manual/en/language.types.ar . Add("b") . Add(6, "c") . Add("d") - , XophpArrayItm.New_int(0, "a") - , XophpArrayItm.New_int(1, "b") - , XophpArrayItm.New_int(6, "c") - , XophpArrayItm.New_int(7, "d") + , XophpArrayItm.NewInt(0, "a") + , XophpArrayItm.NewInt(1, "b") + , XophpArrayItm.NewInt(6, "c") + , XophpArrayItm.NewInt(7, "d") ); } @Test public void array__multidimensional() { @@ -99,9 +100,9 @@ public class XophpArray_tst { // REF: http://php.net/manual/en/language.types.ar . Add("dimensional", XophpArray.New() . Add("array", "foo") )) - , XophpArrayItm.New_str("foo", "bar") - , XophpArrayItm.New_int(42, "24") - , XophpArrayItm.New_str("multi", XophpArray.New() + , XophpArrayItm.NewStr("foo", "bar") + , XophpArrayItm.NewInt(42, "24") + , XophpArrayItm.NewStr("multi", XophpArray.New() . Add("dimensional", XophpArray.New() . Add("array", "foo") )) @@ -112,13 +113,13 @@ public class XophpArray_tst { // REF: http://php.net/manual/en/language.types.ar ary.Add(0, "a").Add(1, "b"); // delete all - ary.unset(0); - ary.unset(1); + XophpArray.unset(ary, 0); + XophpArray.unset(ary, 1); fxt.Test__array(ary); // add new and assert idx is 2 ary.Add("c"); - fxt.Test__array(ary, XophpArrayItm.New_int(2, "c")); + fxt.Test__array(ary, XophpArrayItm.NewInt(2, "c")); } @Test public void Pop() { XophpArray ary = XophpArray.New(); @@ -154,9 +155,9 @@ public class XophpArray_tst { // REF: http://php.net/manual/en/language.types.ar fxt.Test__Get_by(ary, "missing", null); } } -class XophpArray_fxt { +class XophpArrayfxt { public void Test__Count(XophpArray ary, int expd) { - Gftest.Eq__int(expd, ary.count()); + Gftest.Eq__int(expd, ary.Len()); } public void Test__array(XophpArray ary, XophpArrayItm... expd) { XophpArrayItm[] actl = ary.To_ary(); @@ -167,7 +168,7 @@ class XophpArray_fxt { Gftest.Eq__ary(expd, actl); } public void Test__Pop(XophpArray ary, String expd) { - String actl = (String)ary.pop(); + String actl = (String)XophpArray.array_pop(ary); Gftest.Eq__str(expd, actl); } public void Test__Itm_str_concat_end(XophpArray ary, String expd, int idx, String v) { diff --git a/400_xowa/tst/gplx/xowa/mediawiki/XophpArray__tst.java b/400_xowa/tst/gplx/xowa/mediawiki/XophpArrayStaticTest.java similarity index 79% rename from 400_xowa/tst/gplx/xowa/mediawiki/XophpArray__tst.java rename to 400_xowa/tst/gplx/xowa/mediawiki/XophpArrayStaticTest.java index 13a2434a0..9aefd5195 100644 --- a/400_xowa/tst/gplx/xowa/mediawiki/XophpArray__tst.java +++ b/400_xowa/tst/gplx/xowa/mediawiki/XophpArrayStaticTest.java @@ -22,61 +22,61 @@ import gplx.String_; import gplx.core.tests.Gftest; import org.junit.Test; -public class XophpArray__tst { - private final XophpArray__fxt fxt = new XophpArray__fxt(); +public class XophpArrayStaticTest { + private final XophpArray_fxt fxt = new XophpArray_fxt(); // REF.PHP:https://www.php.net/manual/en/function.array-merge.php @Test public void array_merge__basic() { XophpArray ary1 = fxt.Make().Add("key1", "val1").Add("a"); XophpArray ary2 = fxt.Make().Add("key2", "val2").Add("b"); fxt.Test__eq ( fxt.Make().Add("key1", "val1").Add("a").Add("key2", "val2").Add("b") - , XophpArray_.array_merge(ary1, ary2)); + , XophpArray.array_merge(ary1, ary2)); } @Test public void array_merge__same_key() { XophpArray ary1 = fxt.Make().Add("key", "val1"); XophpArray ary2 = fxt.Make().Add("key", "val2"); fxt.Test__eq ( fxt.Make().Add("key", "val2") - , XophpArray_.array_merge(ary1, ary2)); + , XophpArray.array_merge(ary1, ary2)); } @Test public void array_merge__same_idx() { XophpArray ary1 = fxt.Make().Add(0, "a"); XophpArray ary2 = fxt.Make().Add(0, "b"); fxt.Test__eq ( fxt.Make().Add(0, "a").Add(1, "b") - , XophpArray_.array_merge(ary1, ary2)); + , XophpArray.array_merge(ary1, ary2)); } @Test public void array_merge__renumber() { XophpArray ary1 = fxt.Make().Add(3, "a"); XophpArray ary2 = fxt.Make().Add(2, "b"); fxt.Test__eq ( fxt.Make().Add(0, "a").Add(1, "b") - , XophpArray_.array_merge(ary1, ary2)); + , XophpArray.array_merge(ary1, ary2)); } @Test public void array_merge__example_1() { XophpArray ary1 = fxt.Make().Add("color", "red").Add_many(2, 4); XophpArray ary2 = fxt.Make().Add_many("a", "b").Add("color", "green").Add("shape", "trapezoid").Add(4); fxt.Test__eq ( fxt.Make().Add("color", "green").Add_many(2, 4, "a", "b").Add("shape", "trapezoid").Add(4) - , XophpArray_.array_merge(ary1, ary2)); + , XophpArray.array_merge(ary1, ary2)); } @Test public void array_merge__example_2() { XophpArray ary1 = fxt.Make(); XophpArray ary2 = fxt.Make().Add(1, "data"); fxt.Test__eq ( fxt.Make().Add(0, "data") - , XophpArray_.array_merge(ary1, ary2)); + , XophpArray.array_merge(ary1, ary2)); } @Test public void array_add() { XophpArray ary1 = fxt.Make().Add(0, "zero_a").Add(2, "two_a").Add(3, "three_a"); XophpArray ary2 = fxt.Make().Add(1, "one_b").Add(3, "three_b").Add(4, "four_b"); fxt.Test__eq ( fxt.Make().Add(0, "zero_a").Add(2, "two_a").Add(3, "three_a").Add(1, "one_b").Add(4, "four_b") - , XophpArray_.array_add(ary1, ary2)); + , XophpArray.array_add(ary1, ary2)); } @Test public void array_splice__bgn_is_positive() { XophpArray src = fxt.Make().Add_many("a", "b", "c", "d"); - XophpArray del = XophpArray_.array_splice(src, 1); + XophpArray del = XophpArray.array_splice(src, 1); fxt.Test__eq ( fxt.Make().Add_many("a") , src @@ -88,7 +88,7 @@ public class XophpArray__tst { } @Test public void array_splice__bgn_is_positive_large() { XophpArray src = fxt.Make().Add_many("a", "b", "c", "d"); - XophpArray del = XophpArray_.array_splice(src, 99); + XophpArray del = XophpArray.array_splice(src, 99); fxt.Test__eq ( fxt.Make().Add_many("a", "b", "c", "d") , src @@ -100,7 +100,7 @@ public class XophpArray__tst { } @Test public void array_splice__bgn_is_negative() { XophpArray src = fxt.Make().Add_many("a", "b", "c", "d"); - XophpArray del = XophpArray_.array_splice(src, -3); + XophpArray del = XophpArray.array_splice(src, -3); fxt.Test__eq ( fxt.Make().Add_many("a") , src @@ -112,7 +112,7 @@ public class XophpArray__tst { } @Test public void array_splice__bgn_is_negative_large() { XophpArray src = fxt.Make().Add_many("a", "b", "c", "d"); - XophpArray del = XophpArray_.array_splice(src, -99); + XophpArray del = XophpArray.array_splice(src, -99); fxt.Test__eq ( fxt.Make() , src @@ -124,7 +124,7 @@ public class XophpArray__tst { } @Test public void array_splice__len_is_positive() { XophpArray src = fxt.Make().Add_many("a", "b", "c", "d"); - XophpArray del = XophpArray_.array_splice(src, 1, 2); + XophpArray del = XophpArray.array_splice(src, 1, 2); fxt.Test__eq ( fxt.Make().Add_many("a", "d") , src @@ -136,7 +136,7 @@ public class XophpArray__tst { } @Test public void array_splice__len_is_positive_large() { XophpArray src = fxt.Make().Add_many("a", "b", "c", "d"); - XophpArray del = XophpArray_.array_splice(src, 1, 99); + XophpArray del = XophpArray.array_splice(src, 1, 99); fxt.Test__eq ( fxt.Make().Add_many("a") , src @@ -148,7 +148,7 @@ public class XophpArray__tst { } @Test public void array_splice__len_is_negative() { XophpArray src = fxt.Make().Add_many("a", "b", "c", "d"); - XophpArray del = XophpArray_.array_splice(src, 1, -2); + XophpArray del = XophpArray.array_splice(src, 1, -2); fxt.Test__eq ( fxt.Make().Add_many("a", "c", "d") , src @@ -160,7 +160,7 @@ public class XophpArray__tst { } @Test public void array_splice__len_is_negative_large() { XophpArray src = fxt.Make().Add_many("a", "b", "c", "d"); - XophpArray del = XophpArray_.array_splice(src, 1, -99); + XophpArray del = XophpArray.array_splice(src, 1, -99); fxt.Test__eq ( fxt.Make().Add_many("a", "b", "c", "d") , src @@ -172,7 +172,7 @@ public class XophpArray__tst { } @Test public void array_splice__repl() { XophpArray src = fxt.Make().Add(0, "a").Add(1, "b").Add(2, "c").Add(3, "d"); - XophpArray del = XophpArray_.array_splice(src, 1, 2, fxt.Make().Add(0, "x")); + XophpArray del = XophpArray.array_splice(src, 1, 2, fxt.Make().Add(0, "x")); fxt.Test__eq ( fxt.Make().Add(0, "a").Add(1, "x").Add(2, "d") , src @@ -184,7 +184,7 @@ public class XophpArray__tst { } @Test public void array_splice__example_1a() { XophpArray src = fxt.Make().Add_many("red", "green", "blue", "yellow"); - XophpArray del = XophpArray_.array_splice(src, 2); + XophpArray del = XophpArray.array_splice(src, 2); fxt.Test__eq ( fxt.Make().Add_many("red", "green") , src @@ -196,7 +196,7 @@ public class XophpArray__tst { } @Test public void array_splice__example_1b() { XophpArray src = fxt.Make().Add_many("red", "green", "blue", "yellow"); - XophpArray del = XophpArray_.array_splice(src, 1, -1); + XophpArray del = XophpArray.array_splice(src, 1, -1); fxt.Test__eq ( fxt.Make().Add_many("red", "yellow") , src @@ -208,7 +208,7 @@ public class XophpArray__tst { } @Test public void array_splice__example_1c() { XophpArray src = fxt.Make().Add_many("red", "green", "blue", "yellow"); - XophpArray del = XophpArray_.array_splice(src, 1, 4, XophpArray.New("orange")); + XophpArray del = XophpArray.array_splice(src, 1, 4, XophpArray.New("orange")); fxt.Test__eq ( fxt.Make().Add_many("red", "orange") , src @@ -220,7 +220,7 @@ public class XophpArray__tst { } @Test public void array_splice__example_1d() { XophpArray src = fxt.Make().Add_many("red", "green", "blue", "yellow"); - XophpArray del = XophpArray_.array_splice(src, -1, 1, XophpArray.New("black", "maroon")); + XophpArray del = XophpArray.array_splice(src, -1, 1, XophpArray.New("black", "maroon")); fxt.Test__eq ( fxt.Make().Add_many("red", "green", "blue", "black", "maroon") , src @@ -234,35 +234,35 @@ public class XophpArray__tst { XophpArray orig = fxt.Make().Add("size", "XL").Add("color", "gold"); fxt.Test__eq ( fxt.Make().Add(0, "XL").Add(1, "gold") - , orig.values() + , XophpArray.array_values(orig) ); } @Test public void array_map() { XophpArray orig = fxt.Make().Add_many("a", "b", "c"); fxt.Test__eq ( fxt.Make().Add_many("A", "B", "C") - , XophpArray_.array_map(XophpString_.Callback_owner, "strtoupper", orig) + , XophpArray.array_map(XophpString_.Callback_owner, "strtoupper", orig) ); } @Test public void array_flip__basic() { XophpArray orig = fxt.Make().Add_many("oranges", "apples", "pears"); fxt.Test__eq ( fxt.Make().Add("oranges", 0).Add("apples", 1).Add("pears", 2) - , XophpArray_.array_flip(orig) + , XophpArray.array_flip(orig) ); } @Test public void array_flip__collision() { XophpArray orig = fxt.Make().Add("a", 1).Add("b", 1).Add("c", 2); fxt.Test__eq ( fxt.Make().Add("1", "b").Add("2", "c") - , XophpArray_.array_flip(orig) + , XophpArray.array_flip(orig) ); } @Test public void implode() { XophpArray orig = fxt.Make().Add_many("a", "b", "c"); Gftest.Eq__str ( "a b c" - , XophpArray_.implode(" ", orig) + , XophpArray.implode(" ", orig) ); } @Test public void in_array() { @@ -270,19 +270,19 @@ public class XophpArray__tst { XophpArray array; // Example #1 array = XophpArray.New("Mac", "NT", "Irix", "Linux"); - Gftest.Eq__bool(Bool_.Y, XophpArray_.in_array("Irix", array)); - Gftest.Eq__bool(Bool_.N, XophpArray_.in_array("mac" , array)); + Gftest.Eq__bool(Bool_.Y, XophpArray.in_array("Irix", array)); + Gftest.Eq__bool(Bool_.N, XophpArray.in_array("mac" , array)); // Example #2 array = XophpArray.New(12.4d, 1.13d); - Gftest.Eq__bool(Bool_.N, XophpArray_.in_array("12.4", array, true)); - Gftest.Eq__bool(Bool_.Y, XophpArray_.in_array( 1.13d, array, true)); + Gftest.Eq__bool(Bool_.N, XophpArray.in_array("12.4", array, true)); + Gftest.Eq__bool(Bool_.Y, XophpArray.in_array( 1.13d, array, true)); // Example #3 array = XophpArray.New(XophpArray.New('p', 'h'), XophpArray.New('p', 'r'), 'o'); - Gftest.Eq__bool(Bool_.Y, XophpArray_.in_array(XophpArray.New('p', 'h'), array)); - Gftest.Eq__bool(Bool_.N, XophpArray_.in_array(XophpArray.New('f', 'i'), array)); - Gftest.Eq__bool(Bool_.Y, XophpArray_.in_array('o', array)); + Gftest.Eq__bool(Bool_.Y, XophpArray.in_array(XophpArray.New('p', 'h'), array)); + Gftest.Eq__bool(Bool_.N, XophpArray.in_array(XophpArray.New('f', 'i'), array)); + Gftest.Eq__bool(Bool_.Y, XophpArray.in_array('o', array)); } @Test public void array_shift() { XophpArray array; @@ -290,7 +290,7 @@ public class XophpArray__tst { // key is int array = XophpArray.New("a", "b"); - shifted = (String)XophpArray_.array_shift(array); + shifted = (String)XophpArray.array_shift(array); Gftest.Eq__str("a", shifted); fxt.Test__eq @@ -300,7 +300,7 @@ public class XophpArray__tst { // key is str and int array = XophpArray.New().Add("a", "a").Add(2, "b").Add(5, "c"); - shifted = (String)XophpArray_.array_shift(array); + shifted = (String)XophpArray.array_shift(array); Gftest.Eq__str("a", shifted); fxt.Test__eq @@ -310,7 +310,7 @@ public class XophpArray__tst { // empty array = XophpArray.New(); - shifted = (String)XophpArray_.array_shift(array); + shifted = (String)XophpArray.array_shift(array); Gftest.Eq__bool_y(shifted == null); fxt.Test__eq @@ -320,7 +320,7 @@ public class XophpArray__tst { // null array = null; - shifted = (String)XophpArray_.array_shift(array); + shifted = (String)XophpArray.array_shift(array); Gftest.Eq__bool_y(shifted == null); Gftest.Eq__bool_y(array == null); @@ -328,7 +328,7 @@ public class XophpArray__tst { // PHP examples // Example #1 array = XophpArray.New("orange", "banana", "apple", "strawberry"); - shifted = (String)XophpArray_.array_shift(array); + shifted = (String)XophpArray.array_shift(array); Gftest.Eq__str("orange", shifted); fxt.Test__eq @@ -344,31 +344,31 @@ public class XophpArray__tst { array = XophpArray.New().Add("a", 1).Add("b", 2).Add("c", 3).Add("d", 4).Add("e", 5); fxt.Test__eq ( XophpArray.New().Add("a", 1).Add("c", 3).Add("e", 5) - , XophpArray_.array_filter(array, callbackOwner.NewCallback("array_filter_odd")) + , XophpArray.array_filter(array, callbackOwner.NewCallback("array_filter_odd")) ); array = XophpArray.New(6, 7, 8, 9, 10, 11, 12); fxt.Test__eq ( XophpArray.New().Add(0, 6).Add(2, 8).Add(4, 10).Add(6, 12) - , XophpArray_.array_filter(array, callbackOwner.NewCallback( "array_filter_even")) + , XophpArray.array_filter(array, callbackOwner.NewCallback( "array_filter_even")) ); // Example #2 array_filter() without callback array = XophpArray.New().Add(0, "foo").Add(1, false).Add(2, -1).Add(3, null).Add(4, "").Add(5, "0").Add(6, 0); fxt.Test__eq ( XophpArray.New().Add(0, "foo").Add(2, -1) - , XophpArray_.array_filter(array) + , XophpArray.array_filter(array) ); // Example #3 array_filter() with flag array = XophpArray.New().Add("a", 1).Add("b", 2).Add("c", 3).Add("d", 4); fxt.Test__eq ( XophpArray.New().Add("b", 2) - , XophpArray_.array_filter(array, callbackOwner.NewCallback("array_filter_key"), XophpArray_.ARRAY_FILTER_USE_KEY) + , XophpArray.array_filter(array, callbackOwner.NewCallback("array_filter_key"), XophpArray.ARRAY_FILTER_USE_KEY) ); fxt.Test__eq ( XophpArray.New().Add("b", 2).Add("d", 4) - , XophpArray_.array_filter(array, callbackOwner.NewCallback("array_filter_both"), XophpArray_.ARRAY_FILTER_USE_BOTH) + , XophpArray.array_filter(array, callbackOwner.NewCallback("array_filter_both"), XophpArray.ARRAY_FILTER_USE_BOTH) ); } @Test public void reset() { @@ -390,7 +390,7 @@ public class XophpArray__tst { Gftest.Eq__str("step one", (String)XophpArray.current(array)); } } -class XophpArray__fxt { +class XophpArray_fxt { public XophpArray Make() {return new XophpArray();} public void Test__eq(XophpArray expd, XophpArray actl) { Gftest.Eq__str(expd.To_str(), actl.To_str()); diff --git a/400_xowa/tst/gplx/xowa/mediawiki/includes/XomwHooksTest.java b/400_xowa/tst/gplx/xowa/mediawiki/includes/XomwHooksTest.java index 064454a4b..7d81415ba 100644 --- a/400_xowa/tst/gplx/xowa/mediawiki/includes/XomwHooksTest.java +++ b/400_xowa/tst/gplx/xowa/mediawiki/includes/XomwHooksTest.java @@ -2,7 +2,6 @@ package gplx.xowa.mediawiki.includes; import gplx.core.tests.Gftest; import gplx.xowa.mediawiki.XophpArray; -import gplx.xowa.mediawiki.XophpArray__tst; import gplx.xowa.mediawiki.XophpCallback; import gplx.xowa.mediawiki.XophpCallbackOwner; import org.junit.Before; @@ -75,7 +74,7 @@ class XomwHooksTestCallbackOwner implements XophpCallbackOwner { public String Result() {return result;} private String result = ""; @Override public Object Call(String method, Object... args) { - result += method + ":" + (args == null ? -1 : ((XophpArray)args[0]).count()) + ";"; + result += method + ":" + (args == null ? -1 : ((XophpArray)args[0]).Len()) + ";"; return null; // NOTE: XomwHooks throws error if non-null } } \ No newline at end of file