[Nice-commit] Nice/stdlib/nice/lang array.nice,1.33,1.34 collections.nice,1.61,1.62 strings.nice,1.1
Brought to you by:
bonniot
From: Arjan B. <ar...@us...> - 2004-03-20 11:36:11
|
Update of /cvsroot/nice/Nice/stdlib/nice/lang In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18964/F:/nice/stdlib/nice/lang Modified Files: array.nice collections.nice strings.nice Log Message: Minor update to stdlib (made some overrides explicit, more precise type for filter). Index: collections.nice =================================================================== RCS file: /cvsroot/nice/Nice/stdlib/nice/lang/collections.nice,v retrieving revision 1.61 retrieving revision 1.62 diff -C2 -d -r1.61 -r1.62 *** collections.nice 27 Feb 2004 15:29:52 -0000 1.61 --- collections.nice 20 Mar 2004 11:26:13 -0000 1.62 *************** *** 32,38 **** <Collection C, T, U> C<U> map(C<T> coll, T->U func); ! //<Collection C, T, U | T <: U> C<U> filter(C<T>, T->boolean); ! //temporaly using a non polymorpic return because of type inference ! <Collection C, T> C<T> filter(C<T>, T->boolean); /** Return a collection containing all the elements for which converter --- 32,36 ---- <Collection C, T, U> C<U> map(C<T> coll, T->U func); ! <Collection C, T, U | T <: U> C<U> filter(C<T>, T->boolean); /** Return a collection containing all the elements for which converter *************** *** 136,142 **** } ! <C,T> filter(coll, test) { ! C<T> res = coll.similarEmptyCollection(); for (T elem : coll) if (test(elem)) --- 134,140 ---- } ! <C,T,U> filter(coll, test) { ! C<U> res = coll.similarEmptyCollection(); for (T elem : coll) if (test(elem)) Index: array.nice =================================================================== RCS file: /cvsroot/nice/Nice/stdlib/nice/lang/array.nice,v retrieving revision 1.33 retrieving revision 1.34 diff -C2 -d -r1.33 -r1.34 *** array.nice 1 Mar 2004 17:16:13 -0000 1.33 --- array.nice 20 Mar 2004 11:26:13 -0000 1.34 *************** *** 91,100 **** <C,T,U> map(a@Array, func) = fill(new U[a.length], int i => func(a[i])); ! <C,T> filter(a@Array, test) { int l = a.length; int found = 0; ! T[] res = cast(new T[l]); a.foreach(T elem => --- 91,100 ---- <C,T,U> map(a@Array, func) = fill(new U[a.length], int i => func(a[i])); ! <C,T,U> filter(a@Array, test) { int l = a.length; int found = 0; ! U[] res = cast(new U[l]); a.foreach(T elem => *************** *** 110,114 **** } */ ! <T> ?T search(!T[] a, (!T)->boolean test) { for (int i = 0; i < a.length; i++) --- 110,114 ---- } */ ! /*<T> ?T search(!T[] a, (!T)->boolean test) { for (int i = 0; i < a.length; i++) *************** *** 117,120 **** --- 117,121 ---- return null; } + */ /** *************** *** 169,172 **** } ! <T, T1, T2 | T1 <: T, T2 <: T> T[] `+`(T1[] a1, T2[] a2) = concat(a1,a2); --- 170,173 ---- } ! override <T, T1, T2 | T1 <: T, T2 <: T> T[] `+`(T1[] a1, T2[] a2) = concat(a1,a2); Index: strings.nice =================================================================== RCS file: /cvsroot/nice/Nice/stdlib/nice/lang/strings.nice,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** strings.nice 27 Feb 2004 17:39:30 -0000 1.15 --- strings.nice 20 Mar 2004 11:26:13 -0000 1.16 *************** *** 28,32 **** <T> String `+`(String s, T o) = s.concat(String.valueOf(o)); <!T> String `+`(T o, String s) = o.toString().concat(s); ! String `+`(String s1, String s2) = s1.concat(s2); int indexOf(String, char) = native int String.indexOf(int); --- 28,32 ---- <T> String `+`(String s, T o) = s.concat(String.valueOf(o)); <!T> String `+`(T o, String s) = o.toString().concat(s); ! override String `+`(String s1, String s2) = s1.concat(s2); int indexOf(String, char) = native int String.indexOf(int); |