Mercurial > projects > dwt2
view java/src/java/util/HashSet.d @ 10:eb8ff453285d
Added java.util collection classes.
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Fri, 13 Mar 2009 16:57:07 +0100 |
parents | |
children | 9b96950f2c3c |
line wrap: on
line source
module java.util.HashSet; import java.lang.all; import java.util.Set; import java.util.Collection; import java.util.Iterator; static import tango.util.container.HashSet; class HashSet : Set { alias tango.util.container.HashSet.HashSet!(Object) SetType; private SetType set; public this(){ set = new SetType(); } 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){ return set.add(o); } public bool add(String o){ return add(stringcast(o)); } public bool addAll(Collection c){ implMissing( __FILE__, __LINE__ ); return false; } public void clear(){ set.clear(); } public bool contains(Object o){ return set.contains(o); } public bool contains(String o){ return contains(stringcast(o)); } public bool containsAll(Collection c){ implMissing( __FILE__, __LINE__ ); return false; } public override int opEquals(Object o){ implMissing( __FILE__, __LINE__ ); return 0; } public override hash_t toHash(){ implMissing( __FILE__, __LINE__ ); return 0; } public bool isEmpty(){ return set.isEmpty(); } 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(); } } public Iterator iterator(){ return new LocalIterator(set.iterator()); } public bool remove(Object o){ return set.remove(o); } 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(){ return set.size(); } public Object[] toArray(){ Object[] res; res.length = size(); int idx = 0; foreach( o; set ){ res[idx] = o; idx++; } return res; } 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){ return set.opApply(dg); } }