JAL-1807 Bob's JalviewJS prototype first commit
[jalviewjs.git] / site / j2s / jssun / swing / BakedArrayList.js
1 Clazz.declarePackage ("jssun.swing");\r
2 Clazz.load (["java.util.ArrayList"], "jssun.swing.BakedArrayList", null, function () {\r
3 c$ = Clazz.decorateAsClass (function () {\r
4 this._hashCode = 0;\r
5 Clazz.instantialize (this, arguments);\r
6 }, jssun.swing, "BakedArrayList", java.util.ArrayList);\r
7 Clazz.makeConstructor (c$, \r
8 function (data) {\r
9 this.construct (data.size ());\r
10 for (var counter = 0, max = data.size (); counter < max; counter++) {\r
11 this.add (data.get (counter));\r
12 }\r
13 this.cacheHashCode ();\r
14 }, "java.util.List");\r
15 Clazz.defineMethod (c$, "cacheHashCode", \r
16 function () {\r
17 this._hashCode = 1;\r
18 for (var counter = this.size () - 1; counter >= 0; counter--) {\r
19 this._hashCode = 31 * this._hashCode + this.get (counter).hashCode ();\r
20 }\r
21 });\r
22 Clazz.overrideMethod (c$, "hashCode", \r
23 function () {\r
24 return this._hashCode;\r
25 });\r
26 Clazz.overrideMethod (c$, "equals", \r
27 function (o) {\r
28 var list = o;\r
29 var size = this.size ();\r
30 if (list.size () != size) {\r
31 return false;\r
32 }while (size-- > 0) {\r
33 if (!this.get (size).equals (list.get (size))) {\r
34 return false;\r
35 }}\r
36 return true;\r
37 }, "~O");\r
38 });\r