|
|
| version 1.26, 2024/10/26 18:53:36 | version 1.27, 2024/10/27 12:24:49 |
|---|---|
| Line 608 static void _count(Request& r, MethodPar | Line 608 static void _count(Request& r, MethodPar |
| r.write(*new VInt(array.used())); | r.write(*new VInt(array.used())); |
| } | } |
| static void _create_or_append(Request& r, MethodParams& params) { | static void _create_or_append_or_push(Request& r, MethodParams& params) { |
| ArrayValue& array=GET_SELF(r, VArray).array(); | ArrayValue& array=GET_SELF(r, VArray).array(); |
| int count=params.count(); | int count=params.count(); |
| Line 651 static void _remove(Request& r, MethodPa | Line 651 static void _remove(Request& r, MethodPa |
| array.invalidate(); | array.invalidate(); |
| } | } |
| static void _pop(Request& r, MethodParams& params) { | |
| ArrayValue& array=GET_SELF(r, VArray).array(); | |
| Value *result=array.pop(); | |
| if(result){ | |
| r.write(*result); | |
| } else { | |
| r.write(*VVoid::get()); | |
| } | |
| array.invalidate(); | |
| } | |
| static void _contains(Request& r, MethodParams& params) { | static void _contains(Request& r, MethodParams& params) { |
| VArray& self=GET_SELF(r, VArray); | VArray& self=GET_SELF(r, VArray); |
| bool result=self.contains(VArray::index(params.as_int(0, PARAM_INDEX, r))); | bool result=self.contains(VArray::index(params.as_int(0, PARAM_INDEX, r))); |
| Line 1065 MArray::MArray(): Methoded(VARRAY_TYPE) | Line 1076 MArray::MArray(): Methoded(VARRAY_TYPE) |
| // ^array.join[join_from[;options]] | // ^array.join[join_from[;options]] |
| add_native_method("join", Method::CT_DYNAMIC, _join, 1, 2); | add_native_method("join", Method::CT_DYNAMIC, _join, 1, 2); |
| // ^array::create[value;value] | // ^array::create[value[;value...]] |
| add_native_method("create", Method::CT_DYNAMIC, _create_or_append, 0, 10000); | add_native_method("create", Method::CT_DYNAMIC, _create_or_append_or_push, 0, 10000); |
| // ^array.append[value;value] | // ^array.append[value[;value...]] |
| add_native_method("append", Method::CT_DYNAMIC, _create_or_append, 1, 10000); | add_native_method("append", Method::CT_DYNAMIC, _create_or_append_or_push, 1, 10000); |
| // ^array.insert[index;value...] | // ^array.push[value[;value...]] |
| add_native_method("push", Method::CT_DYNAMIC, _create_or_append_or_push, 1, 10000); | |
| // ^array.insert[index;value[;value...]] | |
| add_native_method("insert", Method::CT_DYNAMIC, _insert, 2, 10000); | add_native_method("insert", Method::CT_DYNAMIC, _insert, 2, 10000); |
| // ^array.left(n) | // ^array.left(n) |
| Line 1084 MArray::MArray(): Methoded(VARRAY_TYPE) | Line 1097 MArray::MArray(): Methoded(VARRAY_TYPE) |
| add_native_method("delete", Method::CT_DYNAMIC, _delete, 0, 1); | add_native_method("delete", Method::CT_DYNAMIC, _delete, 0, 1); |
| // ^array.remove[index] | // ^array.remove[index] |
| add_native_method("remove", Method::CT_DYNAMIC, _remove, 1, 1); | add_native_method("remove", Method::CT_DYNAMIC, _remove, 1, 1); |
| // ^array.pop[] | |
| add_native_method("pop", Method::CT_DYNAMIC, _pop, 0, 0); | |
| // ^array.contains[index] | // ^array.contains[index] |
| add_native_method("contains", Method::CT_DYNAMIC, _contains, 1, 1); | add_native_method("contains", Method::CT_DYNAMIC, _contains, 1, 1); |