Mercurial > projects > dwt2
diff java/src/java/util/TreeSet.d @ 21:9b96950f2c3c
the 'java' tree compiles on both D1-Tango and D2-Phobos
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Thu, 19 Mar 2009 20:38:55 +0100 |
parents | eb8ff453285d |
children |
line wrap: on
line diff
--- a/java/src/java/util/TreeSet.d Wed Mar 18 12:10:17 2009 +0100 +++ b/java/src/java/util/TreeSet.d Thu Mar 19 20:38:55 2009 +0100 @@ -6,15 +6,25 @@ import java.util.Collection; import java.util.Iterator; -static import tango.util.container.SortedMap; +version(Tango){ + static import tango.util.container.SortedMap; +} else { // Phobos +} class TreeSet : AbstractSet, SortedSet { - alias tango.util.container.SortedMap.SortedMap!(Object,int) SetType; - private SetType set; + version(Tango){ + alias tango.util.container.SortedMap.SortedMap!(Object,int) SetType; + private SetType set; + } else { // Phobos + } public this(){ - set = new SetType(); + version(Tango){ + set = new SetType(); + } else { // Phobos + implMissing( __FILE__, __LINE__ ); + } } public this(Collection c){ implMissing( __FILE__, __LINE__ ); @@ -27,39 +37,73 @@ } public bool add(Object o){ - return set.add(o, 0); + version(Tango){ + return set.add(o, 0); + } else { // Phobos + implMissing( __FILE__, __LINE__ ); + return false; + } } public bool add(String o){ - return add(stringcast(o)); + version(Tango){ + return add(stringcast(o)); + } else { // Phobos + implMissing( __FILE__, __LINE__ ); + return false; + } } public bool addAll(Collection c){ - foreach( o; c ){ - add(o); + version(Tango){ + foreach( o; c ){ + add(o); + } + return true; + } else { // Phobos + implMissing( __FILE__, __LINE__ ); + return false; } - return true; } public void clear(){ - set.clear(); + version(Tango){ + set.clear(); + } else { // Phobos + implMissing( __FILE__, __LINE__ ); + } } public bool contains(Object o){ - return set.containsKey(o); + version(Tango){ + return set.containsKey(o); + } else { // Phobos + implMissing( __FILE__, __LINE__ ); + return false; + } } public bool contains(String o){ - return contains(stringcast(o)); + version(Tango){ + return contains(stringcast(o)); + } else { // Phobos + implMissing( __FILE__, __LINE__ ); + return false; + } } public bool containsAll(Collection c){ - foreach( o; c ){ - if( !contains(o) ){ - return false; + version(Tango){ + foreach( o; c ){ + if( !contains(o) ){ + return false; + } } + return true; + } else { // Phobos + implMissing( __FILE__, __LINE__ ); + return false; } - return true; } public Comparator comparator(){ implMissing( __FILE__, __LINE__ ); return null; } - public override int opEquals(Object o){ + public override equals_t opEquals(Object o){ implMissing( __FILE__, __LINE__ ); return 0; } @@ -76,7 +120,12 @@ return null; } public bool isEmpty(){ - return set.isEmpty(); + version(Tango){ + return set.isEmpty(); + } else { // Phobos + implMissing( __FILE__, __LINE__ ); + return false; + } } public Iterator iterator(){ implMissing( __FILE__, __LINE__ ); @@ -87,10 +136,16 @@ return null; } public bool remove(Object o){ + implMissing( __FILE__, __LINE__ ); return false; } public bool remove(String key){ - return remove(stringcast(key)); + version(Tango){ + return remove(stringcast(key)); + } else { // Phobos + implMissing( __FILE__, __LINE__ ); + return false; + } } public bool removeAll(Collection c){ implMissing( __FILE__, __LINE__ ); @@ -101,7 +156,12 @@ return false; } public int size(){ - return set.size(); + version(Tango){ + return set.size(); + } else { // Phobos + implMissing( __FILE__, __LINE__ ); + return 0; + } } public SortedSet subSet(Object fromElement, Object toElement){ implMissing( __FILE__, __LINE__ ); @@ -127,10 +187,15 @@ // only for D public int opApply (int delegate(ref Object value) dg){ - int localDg( ref Object key, ref int value ){ - return dg( key ); + version(Tango){ + int localDg( ref Object key, ref int value ){ + return dg( key ); + } + return set.opApply(&localDg); + } else { // Phobos + implMissing( __FILE__, __LINE__ ); + return 0; } - return set.opApply(&localDg); } }