123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117 |
- function name(o:Dynamic) return Type.getClassName(Type.getClass(o));
- // array
- var a = [1];
- var a2 = Lambda.array(a);
- name(a) == "Array";
- name(a2) == "Array";
- a != a2;
- a2.length == 1;
- a2[0] == 1;
- var e = [];
- var e2 = Lambda.array(e);
- e != e2;
- e2.length == 0;
- // list
- var a = [1];
- var l = Lambda.list(a);
- name(a) == "Array";
- name(l) == "List";
- l.length == 1;
- l.first() == 1;
- var l2 = Lambda.list(l);
- name(l2) == "List";
- l != l2;
- var e = new List();
- var e2 = Lambda.list(e);
- e != e2;
- e2.length == 0;
- // map
- var a = [1, 2, 3];
- var b = Lambda.map(a,function(i) return i * 2);
- b.length == 3;
- b.pop() == 2;
- b.pop() == 4;
- b.pop() == 6;
- // mapi
- var a = [1, 2, 3];
- var total = 0;
- function myMap(index, i) {
- total += index;
- return i * 2;
- }
- var b = Lambda.mapi(a, myMap);
- total == 3;
- b.length == 3;
- b.pop() == 2;
- b.pop() == 4;
- b.pop() == 6;
- // has
- Lambda.has([1,2,3],1) == true;
- Lambda.has([1,2,3],4) == false;
- Lambda.has([],null) == false;
- Lambda.has([null],null) == true;
- // exists
- Lambda.exists([1, 2, 3], function(i) return i == 2) == true;
- Lambda.exists([1, 2, 3], function(i) return i == 4) == false;
- Lambda.exists([], function(x) return true) == false;
- // foreach
- Lambda.foreach([2, 4, 6],function(i) return i % 2 == 0) == true;
- Lambda.foreach([2, 4, 7],function(i) return i % 2 == 0) == false;
- Lambda.foreach([], function(x) return false) == true;
- // iter
- var check = 0;
- var sum = 0;
- Lambda.iter([1,2,3],function(i) {
- if (check != i - 1) throw "no match";
- check = i;
- sum += i;
- });
- check == 3;
- sum == 6;
- Lambda.iter([],function(i) return throw "no call");
- // filter
- Lambda.array(Lambda.filter([1,2,3,4],function(i) return i < 3)) == [1,2];
- Lambda.array(Lambda.filter([1,2,3,4],function(i) return true)) == [1,2,3,4];
- Lambda.array(Lambda.filter([1,2,3,4],function(i) return false)) == [];
- Lambda.array(Lambda.filter([],function(i) return false)) == [];
- Lambda.array(Lambda.filter([],function(i) return true)) == [];
- Lambda.array(Lambda.filter([],null)) == [];
- // fold
- Lambda.fold(["b","c","d"],function(s,acc) return s + acc,"a") == "dcba";
- Lambda.fold([],function(s:String,acc) return s + acc,"a") == "a";
- Lambda.fold([],function(s:String,acc) return s + acc,null) == null;
- // count
- Lambda.count([1,2,3]) == 3;
- Lambda.count([1,2,3], function(x) return false) == 0;
- Lambda.count([1,2,3], function(x) return true) == 3;
- Lambda.count([1,2,3], function(x) return x % 2 == 1) == 2;
- Lambda.count([]) == 0;
- // empty
- Lambda.empty([]) == true;
- Lambda.empty([null]) == false;
- // indexOf
- Lambda.indexOf([1,2,3],1) == 0;
- Lambda.indexOf([1,2,3],2) == 1;
- Lambda.indexOf([1,2,3],3) == 2;
- Lambda.indexOf([1,2,3,3],3) == 2;
- Lambda.indexOf([1,2,3],4) == -1;
- Lambda.indexOf([],1) == -1;
- // concat
- Lambda.array(Lambda.concat([1,2,3],[3,4,5])) == [1,2,3,3,4,5];
- Lambda.array(Lambda.concat([1,2,3],[])) == [1,2,3];
- Lambda.array(Lambda.concat([],[1,2,3])) == [1,2,3];
- Lambda.array(Lambda.concat([],[])) == [];
|