1 // BH 8/25/2014 1:10:59 AM - removed indirect access/inner class business.
\r
3 Clazz.load(["java.util.AbstractCollection","$.Iterator","$.List","$.ListIterator","$.RandomAccess","$.NoSuchElementException"],"java.util.AbstractList",["java.lang.IllegalArgumentException","$.IllegalStateException","$.IndexOutOfBoundsException","$.UnsupportedOperationException","java.util.ConcurrentModificationException"],function(){
\r
4 c$=Clazz.decorateAsClass(function(){
\r
9 //if(!Clazz.isClassDefined("java.util.AbstractList.SimpleListIterator")){
\r
10 //java.util.AbstractList.$AbstractList$SimpleListIterator$();
\r
12 //if(!Clazz.isClassDefined("java.util.AbstractList.FullListIterator")){
\r
13 //java.util.AbstractList.$AbstractList$FullListIterator$();
\r
18 Clazz.instantialize(this,arguments);
\r
19 },java.util,"AbstractList",java.util.AbstractCollection,java.util.List);
\r
20 Clazz.defineMethod(c$,"add",
\r
21 function(location,object){
\r
22 throw new UnsupportedOperationException();
\r
24 Clazz.defineMethod(c$,"add",
\r
26 this.add(this.size(),object);
\r
29 Clazz.defineMethod(c$,"addAll",
\r
30 function(location,collection){
\r
31 var it=collection.iterator();
\r
32 while(it.hasNext()){
\r
33 this.add(location++,it.next());
\r
35 return!collection.isEmpty();
\r
36 },"~N,java.util.Collection");
\r
37 Clazz.overrideMethod(c$,"clear",
\r
39 this.removeRange(0,this.size());
\r
41 Clazz.overrideMethod(c$,"equals",
\r
45 }if(Clazz.instanceOf(object,java.util.List)){
\r
47 if(list.size()!=this.size()){
\r
49 }var it1=this.iterator();
\r
50 var it2=list.iterator();
\r
51 while(it1.hasNext()){
\r
54 if(!(e1==null?e2==null:e1.equals(e2))){
\r
60 Clazz.overrideMethod(c$,"hashCode",
\r
63 var it=this.iterator();
\r
64 while(it.hasNext()){
\r
65 var object=it.next();
\r
66 result=(31*result)+(object==null?0:object.hashCode());
\r
70 Clazz.overrideMethod(c$,"indexOf",
\r
72 var it=this.listIterator();
\r
74 while(it.hasNext()){
\r
75 if(object.equals(it.next())){
\r
76 return it.previousIndex();
\r
79 while(it.hasNext()){
\r
80 if(it.next()==null){
\r
81 return it.previousIndex();
\r
85 Clazz.overrideMethod(c$,"iterator",
\r
87 return new java.util.AbstractListSimpleListIterator(this); // Clazz.innerTypeInstance(java.util.AbstractList.SimpleListIterator,this,null);
\r
89 Clazz.overrideMethod(c$,"lastIndexOf",
\r
91 var it=this.listIterator(this.size());
\r
93 while(it.hasPrevious()){
\r
94 if(object.equals(it.previous())){
\r
95 return it.nextIndex();
\r
98 while(it.hasPrevious()){
\r
99 if(it.previous()==null){
\r
100 return it.nextIndex();
\r
104 //Clazz.defineMethod(c$,"listIterator",
\r
106 //return this.listIterator(0);
\r
108 Clazz.defineMethod(c$,"listIterator",
\r
109 function(location){
\r
110 location || (location = 0);
\r
111 return new java.util.AbstractListFullListIterator(this, location);//Clazz.innerTypeInstance(java.util.AbstractList.FullListIterator,this,null,location);
\r
113 Clazz.defineMethod(c$,"remove",
\r
114 function(location){
\r
115 throw new UnsupportedOperationException();
\r
117 Clazz.defineMethod(c$,"removeRange",
\r
118 function(start,end){
\r
119 var it=this.listIterator(start);
\r
120 for(var i=start;i<end;i++){
\r
125 Clazz.overrideMethod(c$,"set",
\r
126 function(location,object){
\r
127 throw new UnsupportedOperationException();
\r
129 Clazz.overrideMethod(c$,"subList",
\r
130 function(start,end){
\r
131 if(0<=start&&end<=this.size()){
\r
133 if(Clazz.instanceOf(this,java.util.RandomAccess)){
\r
134 return new java.util.AbstractList.SubAbstractListRandomAccess(this,start,end);
\r
135 }return new java.util.AbstractList.SubAbstractList(this,start,end);
\r
136 }throw new IllegalArgumentException();
\r
137 }throw new IndexOutOfBoundsException();
\r
142 //c$.$AbstractList$SimpleListIterator$=function(){
\r
144 Clazz.pu$h(self.c$);
\r
146 c$=Clazz.decorateAsClass(function(){
\r
147 //Clazz.prepareCallback(this,arguments);
\r
149 this.expectedModCount=0;
\r
150 this.lastPosition=-1;
\r
151 Clazz.instantialize(this,arguments);
\r
152 },java.util,"AbstractListSimpleListIterator",null,java.util.Iterator);
\r
155 Clazz.makeConstructor(c$,
\r
158 this.expectedModCount=a.modCount;
\r
159 }, "java.util.AbstractList");
\r
161 Clazz.overrideMethod(c$,"hasNext",
\r
163 return this.pos+1<this._list.size();
\r
165 Clazz.overrideMethod(c$,"next",
\r
167 if(this.expectedModCount==this._list.modCount){
\r
169 var a=this._list.get(this.pos+1);
\r
170 this.lastPosition=++this.pos;
\r
173 if(Clazz.instanceOf(e,IndexOutOfBoundsException)){
\r
174 throw new java.util.NoSuchElementException();
\r
179 }throw new java.util.ConcurrentModificationException();
\r
181 Clazz.overrideMethod(c$,"remove",
\r
183 if(this.expectedModCount==this._list.modCount){
\r
185 this._list.remove(this.lastPosition);
\r
187 if(Clazz.instanceOf(e,IndexOutOfBoundsException)){
\r
188 throw new IllegalStateException();
\r
193 if(this._list.modCount!=this.expectedModCount){
\r
194 this.expectedModCount++;
\r
195 }if(this.pos==this.lastPosition){
\r
197 }this.lastPosition=-1;
\r
199 throw new java.util.ConcurrentModificationException();
\r
206 //c$.$AbstractList$FullListIterator$=function(){
\r
207 Clazz.pu$h(self.c$);
\r
208 c$=Clazz.decorateAsClass(function(){
\r
209 //Clazz.prepareCallback(this,arguments);
\r
210 Clazz.instantialize(this,arguments);
\r
211 },java.util,"AbstractListFullListIterator",java.util.AbstractListSimpleListIterator,java.util.ListIterator);
\r
213 //,Clazz.innerTypeInstance(java.util.AbstractList.SimpleListIterator,this,null,Clazz.inheritArgs));
\r
215 Clazz.makeConstructor(c$,
\r
217 Clazz.superConstructor(this,java.util.AbstractListFullListIterator,[a]);
\r
218 if(0<=b&&b<=this._list.size()){
\r
221 throw new IndexOutOfBoundsException();
\r
222 }},"java.util.AbstractList,~N");
\r
223 Clazz.overrideMethod(c$,"add",
\r
225 if(this.expectedModCount==this._list.modCount){
\r
227 this._list.add(this.pos+1,a);
\r
229 if(Clazz.instanceOf(e,IndexOutOfBoundsException)){
\r
230 throw new java.util.NoSuchElementException();
\r
236 this.lastPosition=-1;
\r
237 if(this._list.modCount!=this.expectedModCount){
\r
238 this.expectedModCount++;
\r
240 throw new java.util.ConcurrentModificationException();
\r
242 Clazz.overrideMethod(c$,"hasPrevious",
\r
244 return this.pos>=0;
\r
246 Clazz.overrideMethod(c$,"nextIndex",
\r
250 Clazz.overrideMethod(c$,"previous",
\r
252 if(this.expectedModCount==this._list.modCount){
\r
254 var a=this._list.get(this.pos);
\r
255 this.lastPosition=this.pos;
\r
259 if(Clazz.instanceOf(e,IndexOutOfBoundsException)){
\r
260 throw new java.util.NoSuchElementException();
\r
265 }throw new java.util.ConcurrentModificationException();
\r
267 Clazz.overrideMethod(c$,"previousIndex",
\r
271 Clazz.overrideMethod(c$,"set",
\r
273 if(this.expectedModCount==this._list.modCount){
\r
275 this._list.set(this.lastPosition,a);
\r
277 if(Clazz.instanceOf(e,IndexOutOfBoundsException)){
\r
278 throw new IllegalStateException();
\r
284 throw new java.util.ConcurrentModificationException();
\r
292 Clazz.pu$h(self.c$);
\r
293 c$=Clazz.declareType(java.util.AbstractList,"SubAbstractListRandomAccess",java.util.AbstractList.SubAbstractList,java.util.RandomAccess);
\r
299 Clazz.pu$h(self.c$);
\r
300 c$=Clazz.decorateAsClass(function(){
\r
301 this.fullList=null;
\r
304 Clazz.instantialize(this,arguments);
\r
305 },java.util.AbstractList,"SubAbstractList",java.util.AbstractList);
\r
306 Clazz.makeConstructor(c$,
\r
308 Clazz.superConstructor(this,java.util.AbstractList.SubAbstractList);
\r
310 this.modCount=this.fullList.modCount;
\r
313 },"java.util.AbstractList,~N,~N");
\r
314 Clazz.defineMethod(c$,"add",
\r
316 if(this.modCount==this.fullList.modCount){
\r
317 if(0<=a&&a<=this.$size){
\r
318 this.fullList.add(a+this.offset,b);
\r
320 this.modCount=this.fullList.modCount;
\r
322 throw new IndexOutOfBoundsException();
\r
324 throw new java.util.ConcurrentModificationException();
\r
326 Clazz.defineMethod(c$,"addAll",
\r
328 if(this.modCount==this.fullList.modCount){
\r
329 if(0<=a&&a<=this.$size){
\r
330 var c=this.fullList.addAll(a+this.offset,b);
\r
332 this.$size+=b.size();
\r
333 this.modCount=this.fullList.modCount;
\r
335 }throw new IndexOutOfBoundsException();
\r
336 }throw new java.util.ConcurrentModificationException();
\r
337 },"~N,java.util.Collection");
\r
338 Clazz.defineMethod(c$,"addAll",
\r
340 if(this.modCount==this.fullList.modCount){
\r
341 var b=this.fullList.addAll(this.offset+this.$size,a);
\r
343 this.$size+=a.size();
\r
344 this.modCount=this.fullList.modCount;
\r
346 }throw new java.util.ConcurrentModificationException();
\r
347 },"java.util.Collection");
\r
348 Clazz.defineMethod(c$,"get",
\r
350 if(this.modCount==this.fullList.modCount){
\r
351 if(0<=a&&a<this.$size){
\r
352 return this.fullList.get(a+this.offset);
\r
353 }throw new IndexOutOfBoundsException();
\r
354 }throw new java.util.ConcurrentModificationException();
\r
356 Clazz.overrideMethod(c$,"iterator",
\r
358 return this.listIterator(0);
\r
360 Clazz.defineMethod(c$,"listIterator",
\r
362 if(this.modCount==this.fullList.modCount){
\r
363 if(0<=a&&a<=this.$size){
\r
364 return new java.util.AbstractList.SubAbstractList.SubAbstractListIterator(this.fullList.listIterator(a+this.offset),this,this.offset,this.$size);
\r
365 }throw new IndexOutOfBoundsException();
\r
366 }throw new java.util.ConcurrentModificationException();
\r
368 Clazz.defineMethod(c$,"remove",
\r
370 if(this.modCount==this.fullList.modCount){
\r
371 if(0<=a&&a<this.$size){
\r
372 var b=this.fullList.remove(a+this.offset);
\r
374 this.modCount=this.fullList.modCount;
\r
376 }throw new IndexOutOfBoundsException();
\r
377 }throw new java.util.ConcurrentModificationException();
\r
379 Clazz.defineMethod(c$,"removeRange",
\r
382 if(this.modCount==this.fullList.modCount){
\r
383 this.fullList.removeRange(a+this.offset,b+this.offset);
\r
385 this.modCount=this.fullList.modCount;
\r
387 throw new java.util.ConcurrentModificationException();
\r
389 Clazz.defineMethod(c$,"set",
\r
391 if(this.modCount==this.fullList.modCount){
\r
392 if(0<=a&&a<this.$size){
\r
393 return this.fullList.set(a+this.offset,b);
\r
394 }throw new IndexOutOfBoundsException();
\r
395 }throw new java.util.ConcurrentModificationException();
\r
397 Clazz.overrideMethod(c$,"size",
\r
401 Clazz.defineMethod(c$,"sizeChanged",
\r
407 }this.modCount=this.fullList.modCount;
\r
409 Clazz.pu$h(self.c$);
\r
410 c$=Clazz.decorateAsClass(function(){
\r
412 this.iterator=null;
\r
415 Clazz.instantialize(this,arguments);
\r
416 },java.util.AbstractList.SubAbstractList,"SubAbstractListIterator",null,java.util.ListIterator);
\r
417 Clazz.makeConstructor(c$,
\r
422 this.end=this.start+d;
\r
423 },"java.util.ListIterator,java.util.AbstractList.SubAbstractList,~N,~N");
\r
424 Clazz.defineMethod(c$,"add",
\r
426 this.iterator.add(a);
\r
427 this.subList.sizeChanged(true);
\r
430 Clazz.overrideMethod(c$,"hasNext",
\r
432 return this.iterator.nextIndex()<this.end;
\r
434 Clazz.overrideMethod(c$,"hasPrevious",
\r
436 return this.iterator.previousIndex()>=this.start;
\r
438 Clazz.defineMethod(c$,"next",
\r
440 if(this.iterator.nextIndex()<this.end){
\r
441 return this.iterator.next();
\r
442 }throw new java.util.NoSuchElementException();
\r
444 Clazz.defineMethod(c$,"nextIndex",
\r
446 return this.iterator.nextIndex()-this.start;
\r
448 Clazz.defineMethod(c$,"previous",
\r
450 if(this.iterator.previousIndex()>=this.start){
\r
451 return this.iterator.previous();
\r
452 }throw new java.util.NoSuchElementException();
\r
454 Clazz.defineMethod(c$,"previousIndex",
\r
456 var a=this.iterator.previousIndex();
\r
458 return a-this.start;
\r
461 Clazz.defineMethod(c$,"remove",
\r
463 this.iterator.remove();
\r
464 this.subList.sizeChanged(false);
\r
467 Clazz.defineMethod(c$,"set",
\r
469 this.iterator.set(a);
\r