try to fix some minor dropdown bugs
[potlatch2.git] / org / idmedia / as3commons / util / HashSet.as
1 package org.idmedia.as3commons.util
2 {   
3         /**
4          * This class was added by Derek Wischusen on 10/15/2007.
5          * @author wischusen
6          * 
7          */     
8         public class HashSet extends AbstractSet
9         {
10                 private var map : HashMap;
11             private static var PRESENT : Object = new Object();
12
13                 public function HashSet(coll : Map = null) : void
14                 {
15                         map = new HashMap();
16                         
17                         if (coll)
18                                 map.putAll(coll)
19                 }
20                 
21                 override public function iterator() :Iterator
22                 {
23                 return map.keySet().iterator();
24             }
25
26             override public function size() : int
27             {
28                 return map.size();
29             }
30                 
31             override public function isEmpty() : Boolean 
32             {
33                 return map.isEmpty();
34             }
35                 
36             override public function contains(o : *) : Boolean
37             {
38                 return map.containsKey(o);
39             }
40                 
41             override public function add(e : *) : Boolean 
42             {
43                 return (map.put(e, PRESENT) == null);
44             }
45                 
46             override public function remove(o : * = null) : Boolean 
47             {
48                 return (map.remove(o) == PRESENT);
49             }
50                 
51             override public function clear() : void 
52             {
53                 map.clear();
54             }
55
56                 
57                         
58         }
59 }