JAL-1807 Bob's JalviewJS prototype first commit
[jalviewjs.git] / site / j2s / java / util / Stack.js
1 Clazz.load(["java.util.Vector"],"java.util.Stack",["java.util.EmptyStackException"],function(){\r
2 c$=Clazz.declareType(java.util,"Stack",java.util.Vector);\r
3 Clazz.defineMethod(c$,"empty",\r
4 function(){\r
5 return this.elementCount==0;\r
6 });\r
7 Clazz.defineMethod(c$,"peek",\r
8 function(){\r
9 try{\r
10 return this.elementData[this.elementCount-1];\r
11 }catch(e){\r
12 if(Clazz.instanceOf(e,IndexOutOfBoundsException)){\r
13 throw new java.util.EmptyStackException();\r
14 }else{\r
15 throw e;\r
16 }\r
17 }\r
18 });\r
19 Clazz.defineMethod(c$,"pop",\r
20 function(){\r
21 try{\r
22 var index=this.elementCount-1;\r
23 var obj=this.elementData[index];\r
24 this.removeElementAt(index);\r
25 return obj;\r
26 }catch(e){\r
27 if(Clazz.instanceOf(e,IndexOutOfBoundsException)){\r
28 throw new java.util.EmptyStackException();\r
29 }else{\r
30 throw e;\r
31 }\r
32 }\r
33 });\r
34 Clazz.defineMethod(c$,"push",\r
35 function(object){\r
36 this.addElement(object);\r
37 return object;\r
38 },"~O");\r
39 Clazz.defineMethod(c$,"search",\r
40 function(o){\r
41 var index=this.lastIndexOf(o);\r
42 if(index>=0)return(this.elementCount-index);\r
43 return-1;\r
44 },"~O");\r
45 });\r