Mercurial > projects > dwt2
diff base/src/java/util/HashSet.d @ 27:1bf55a6eb092
Renamed java tree to base
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Sat, 21 Mar 2009 11:33:57 +0100 |
parents | java/src/java/util/HashSet.d@9b96950f2c3c |
children | af948d4bbf8c |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/base/src/java/util/HashSet.d Sat Mar 21 11:33:57 2009 +0100 @@ -0,0 +1,178 @@ +module java.util.HashSet; + +import java.lang.all; +import java.util.Set; +import java.util.Collection; +import java.util.Iterator; + +version(Tango){ + static import tango.util.container.HashSet; +} else { // Phobos +} + +class HashSet : Set { + version(Tango){ + alias tango.util.container.HashSet.HashSet!(Object) SetType; + private SetType set; + } else { // Phobos + } + + public this(){ + version(Tango){ + set = new SetType(); + } else { // Phobos + implMissing( __FILE__, __LINE__ ); + } + } + public this(Collection c){ + implMissing( __FILE__, __LINE__ ); + } + public this(int initialCapacity){ + implMissing( __FILE__, __LINE__ ); + } + public this(int initialCapacity, float loadFactor){ + implMissing( __FILE__, __LINE__ ); + } + public bool add(Object o){ + version(Tango){ + return set.add(o); + } else { // Phobos + implMissing( __FILE__, __LINE__ ); + return false; + } + } + public bool add(String o){ + return add(stringcast(o)); + } + public bool addAll(Collection c){ + implMissing( __FILE__, __LINE__ ); + return false; + } + public void clear(){ + version(Tango){ + set.clear(); + } else { // Phobos + implMissing( __FILE__, __LINE__ ); + } + } + public bool contains(Object o){ + version(Tango){ + return set.contains(o); + } else { // Phobos + implMissing( __FILE__, __LINE__ ); + return false; + } + } + public bool contains(String o){ + return contains(stringcast(o)); + } + public bool containsAll(Collection c){ + implMissing( __FILE__, __LINE__ ); + return false; + } + public override equals_t opEquals(Object o){ + implMissing( __FILE__, __LINE__ ); + return 0; + } + public override hash_t toHash(){ + implMissing( __FILE__, __LINE__ ); + return 0; + } + public bool isEmpty(){ + version(Tango){ + return set.isEmpty(); + } else { // Phobos + implMissing( __FILE__, __LINE__ ); + return false; + } + } + version(Tango){ + class LocalIterator : Iterator { + SetType.Iterator iter; + Object nextElem; + this( SetType.Iterator iter){ + this.iter = iter; + } + public bool hasNext(){ + return iter.next(nextElem); + } + public Object next(){ + return nextElem; + } + public void remove(){ + iter.remove(); + } + } + } else { // Phobos + } + public Iterator iterator(){ + version(Tango){ + return new LocalIterator(set.iterator()); + } else { // Phobos + implMissing( __FILE__, __LINE__ ); + return null; + } + } + public bool remove(Object o){ + version(Tango){ + return set.remove(o); + } else { // Phobos + implMissing( __FILE__, __LINE__ ); + return false; + } + } + public bool remove(String key){ + return remove(stringcast(key)); + } + public bool removeAll(Collection c){ + implMissing( __FILE__, __LINE__ ); + return false; + } + public bool retainAll(Collection c){ + implMissing( __FILE__, __LINE__ ); + return false; + } + public int size(){ + version(Tango){ + return set.size(); + } else { // Phobos + implMissing( __FILE__, __LINE__ ); + return 0; + } + } + public Object[] toArray(){ + version(Tango){ + Object[] res; + res.length = size(); + int idx = 0; + foreach( o; set ){ + res[idx] = o; + idx++; + } + return res; + } else { // Phobos + implMissing( __FILE__, __LINE__ ); + return null; + } + } + public Object[] toArray(Object[] a){ + implMissing( __FILE__, __LINE__ ); + return null; + } + public override String toString(){ + implMissing( __FILE__, __LINE__ ); + return null; + } + + // only for D + public int opApply (int delegate(ref Object value) dg){ + version(Tango){ + return set.opApply(dg); + } else { // Phobos + implMissing( __FILE__, __LINE__ ); + return 0; + } + } + +} +