File size: 2,134 Bytes
233f6d4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
Clazz.load(["java.util.AbstractSet","$.Set"],"java.util.HashSet",["java.util.HashMap"],function(){
c$=Clazz.decorateAsClass(function(){
this.backingMap=null;
Clazz.instantialize(this,arguments);
},java.util,"HashSet",java.util.AbstractSet,[java.util.Set,Cloneable,java.io.Serializable]);
Clazz.makeConstructor(c$,
function(){
this.construct(new java.util.HashMap());
});
Clazz.makeConstructor(c$,
function(capacity){
this.construct(new java.util.HashMap(capacity));
},"~N");
Clazz.makeConstructor(c$,
function(capacity,loadFactor){
this.construct(new java.util.HashMap(capacity,loadFactor));
},"~N,~N");
Clazz.makeConstructor(c$,
function(collection){
this.construct(new java.util.HashMap(collection.size()<6?11:collection.size()*2));
for(var e,$e=collection.iterator();$e.hasNext()&&((e=$e.next())||true);){
this.add(e);
}
},"java.util.Collection");
Clazz.makeConstructor(c$,
function(backingMap){
Clazz.superConstructor(this,java.util.HashSet,[]);
this.backingMap=backingMap;
},"java.util.HashMap");
Clazz.overrideMethod(c$,"add",
function(object){
return this.backingMap.put(object,this)==null;
},"~O");
Clazz.overrideMethod(c$,"clear",
function(){
this.backingMap.clear();
});
Clazz.defineMethod(c$,"clone",
function(){
try{
var clone=Clazz.superCall(this,java.util.HashSet,"clone",[]);
clone.backingMap=this.backingMap.clone();
return clone;
}catch(e){
if(Clazz.instanceOf(e,CloneNotSupportedException)){
return null;
}else{
throw e;
}
}
});
Clazz.overrideMethod(c$,"contains",
function(object){
return this.backingMap.containsKey(object);
},"~O");
Clazz.overrideMethod(c$,"isEmpty",
function(){
return this.backingMap.isEmpty();
});
Clazz.defineMethod(c$,"iterator",
function(){
return this.backingMap.keySet().iterator();
});
Clazz.overrideMethod(c$,"remove",
function(object){
return this.backingMap.remove(object)!=null;
},"~O");
Clazz.overrideMethod(c$,"size",
function(){
return this.backingMap.size();
});
Clazz.defineMethod(c$,"createBackingMap",
function(capacity,loadFactor){
return new java.util.HashMap(capacity,loadFactor);
},"~N,~N");
});