Merge branch 'master' of https://source.jalview.org/git/jalviewjs.git
[jalviewjs.git] / site / j2s / java / util / AbstractList.js
index a30d14c..8d74634 100644 (file)
-// BH 8/25/2014 1:10:59 AM  - removed indirect access/inner class business.\r
-\r
-Clazz.load(["java.util.AbstractCollection","$.Iterator","$.List","$.ListIterator","$.RandomAccess","$.NoSuchElementException"],"java.util.AbstractList",["java.lang.IllegalArgumentException","$.IllegalStateException","$.IndexOutOfBoundsException","$.UnsupportedOperationException","java.util.ConcurrentModificationException"],function(){\r
-c$=Clazz.decorateAsClass(function(){\r
-this.modCount=0;\r
-\r
-\r
-\r
-//if(!Clazz.isClassDefined("java.util.AbstractList.SimpleListIterator")){\r
-//java.util.AbstractList.$AbstractList$SimpleListIterator$();\r
-//}\r
-//if(!Clazz.isClassDefined("java.util.AbstractList.FullListIterator")){\r
-//java.util.AbstractList.$AbstractList$FullListIterator$();\r
-//}\r
-\r
-\r
-\r
-Clazz.instantialize(this,arguments);\r
-},java.util,"AbstractList",java.util.AbstractCollection,java.util.List);\r
-Clazz.defineMethod(c$,"add",\r
-function(location,object){\r
-throw new UnsupportedOperationException();\r
-},"~N,~O");\r
-Clazz.defineMethod(c$,"add",\r
-function(object){\r
-this.add(this.size(),object);\r
-return true;\r
-},"~O");\r
-Clazz.defineMethod(c$,"addAll",\r
-function(location,collection){\r
-var it=collection.iterator();\r
-while(it.hasNext()){\r
-this.add(location++,it.next());\r
-}\r
-return!collection.isEmpty();\r
-},"~N,java.util.Collection");\r
-Clazz.overrideMethod(c$,"clear",\r
-function(){\r
-this.removeRange(0,this.size());\r
-});\r
-Clazz.overrideMethod(c$,"equals",\r
-function(object){\r
-if(this===object){\r
-return true;\r
-}if(Clazz.instanceOf(object,java.util.List)){\r
-var list=object;\r
-if(list.size()!=this.size()){\r
-return false;\r
-}var it1=this.iterator();\r
-var it2=list.iterator();\r
-while(it1.hasNext()){\r
-var e1=it1.next();\r
-var e2=it2.next();\r
-if(!(e1==null?e2==null:e1.equals(e2))){\r
-return false;\r
-}}\r
-return true;\r
-}return false;\r
-},"~O");\r
-Clazz.overrideMethod(c$,"hashCode",\r
-function(){\r
-var result=1;\r
-var it=this.iterator();\r
-while(it.hasNext()){\r
-var object=it.next();\r
-result=(31*result)+(object==null?0:object.hashCode());\r
-}\r
-return result;\r
-});\r
-Clazz.overrideMethod(c$,"indexOf",\r
-function(object){\r
-var it=this.listIterator();\r
-if(object!=null){\r
-while(it.hasNext()){\r
-if(object.equals(it.next())){\r
-return it.previousIndex();\r
-}}\r
-}else{\r
-while(it.hasNext()){\r
-if(it.next()==null){\r
-return it.previousIndex();\r
-}}\r
-}return-1;\r
-},"~O");\r
-Clazz.overrideMethod(c$,"iterator",\r
-function(){\r
-return new java.util.AbstractListSimpleListIterator(this); // Clazz.innerTypeInstance(java.util.AbstractList.SimpleListIterator,this,null);\r
-});\r
-Clazz.overrideMethod(c$,"lastIndexOf",\r
-function(object){\r
-var it=this.listIterator(this.size());\r
-if(object!=null){\r
-while(it.hasPrevious()){\r
-if(object.equals(it.previous())){\r
-return it.nextIndex();\r
-}}\r
-}else{\r
-while(it.hasPrevious()){\r
-if(it.previous()==null){\r
-return it.nextIndex();\r
-}}\r
-}return-1;\r
-},"~O");\r
-//Clazz.defineMethod(c$,"listIterator",\r
-//function(){\r
-//return this.listIterator(0);\r
-//});\r
-Clazz.defineMethod(c$,"listIterator",\r
-function(location){\r
-location || (location = 0);\r
-return new java.util.AbstractListFullListIterator(this, location);//Clazz.innerTypeInstance(java.util.AbstractList.FullListIterator,this,null,location);\r
-},"~N");\r
-Clazz.defineMethod(c$,"remove",\r
-function(location){\r
-throw new UnsupportedOperationException();\r
-},"~N");\r
-Clazz.defineMethod(c$,"removeRange",\r
-function(start,end){\r
-var it=this.listIterator(start);\r
-for(var i=start;i<end;i++){\r
-it.next();\r
-it.remove();\r
-}\r
-},"~N,~N");\r
-Clazz.overrideMethod(c$,"set",\r
-function(location,object){\r
-throw new UnsupportedOperationException();\r
-},"~N,~O");\r
-Clazz.overrideMethod(c$,"subList",\r
-function(start,end){\r
-if(0<=start&&end<=this.size()){\r
-if(start<=end){\r
-if(Clazz.instanceOf(this,java.util.RandomAccess)){\r
-return new java.util.AbstractList.SubAbstractListRandomAccess(this,start,end);\r
-}return new java.util.AbstractList.SubAbstractList(this,start,end);\r
-}throw new IllegalArgumentException();\r
-}throw new IndexOutOfBoundsException();\r
-},"~N,~N");\r
-\r
-\r
-\r
-//c$.$AbstractList$SimpleListIterator$=function(){\r
-\r
-Clazz.pu$h(self.c$);\r
-\r
-c$=Clazz.decorateAsClass(function(){\r
-//Clazz.prepareCallback(this,arguments);\r
-this.pos=-1;\r
-this.expectedModCount=0;\r
-this.lastPosition=-1;\r
-Clazz.instantialize(this,arguments);\r
-},java.util,"AbstractListSimpleListIterator",null,java.util.Iterator);\r
-\r
-\r
-Clazz.makeConstructor(c$,\r
-function(a){\r
-this._list = a;\r
-this.expectedModCount=a.modCount;\r
-}, "java.util.AbstractList");\r
-\r
-Clazz.overrideMethod(c$,"hasNext",\r
-function(){\r
-return this.pos+1<this._list.size();\r
-});\r
-Clazz.overrideMethod(c$,"next",\r
-function(){\r
-if(this.expectedModCount==this._list.modCount){\r
-try{\r
-var a=this._list.get(this.pos+1);\r
-this.lastPosition=++this.pos;\r
-return a;\r
-}catch(e){\r
-if(Clazz.instanceOf(e,IndexOutOfBoundsException)){\r
-throw new java.util.NoSuchElementException();\r
-}else{\r
-throw e;\r
-}\r
-}\r
-}throw new java.util.ConcurrentModificationException();\r
-});\r
-Clazz.overrideMethod(c$,"remove",\r
-function(){\r
-if(this.expectedModCount==this._list.modCount){\r
-try{\r
-this._list.remove(this.lastPosition);\r
-}catch(e){\r
-if(Clazz.instanceOf(e,IndexOutOfBoundsException)){\r
-throw new IllegalStateException();\r
-}else{\r
-throw e;\r
-}\r
-}\r
-if(this._list.modCount!=this.expectedModCount){\r
-this.expectedModCount++;\r
-}if(this.pos==this.lastPosition){\r
-this.pos--;\r
-}this.lastPosition=-1;\r
-}else{\r
-throw new java.util.ConcurrentModificationException();\r
-}});\r
-\r
-c$=Clazz.p0p();\r
-//};\r
-\r
-\r
-//c$.$AbstractList$FullListIterator$=function(){\r
-Clazz.pu$h(self.c$);\r
-c$=Clazz.decorateAsClass(function(){\r
-//Clazz.prepareCallback(this,arguments);\r
-Clazz.instantialize(this,arguments);\r
-},java.util,"AbstractListFullListIterator",java.util.AbstractListSimpleListIterator,java.util.ListIterator);\r
-\r
-//,Clazz.innerTypeInstance(java.util.AbstractList.SimpleListIterator,this,null,Clazz.inheritArgs));\r
-\r
-Clazz.makeConstructor(c$,\r
-function(a,b){\r
-Clazz.superConstructor(this,java.util.AbstractListFullListIterator,[a]);\r
-if(0<=b&&b<=this._list.size()){\r
-this.pos=b-1;\r
-}else{\r
-throw new IndexOutOfBoundsException();\r
-}},"java.util.AbstractList,~N");\r
-Clazz.overrideMethod(c$,"add",\r
-function(a){\r
-if(this.expectedModCount==this._list.modCount){\r
-try{\r
-this._list.add(this.pos+1,a);\r
-}catch(e){\r
-if(Clazz.instanceOf(e,IndexOutOfBoundsException)){\r
-throw new java.util.NoSuchElementException();\r
-}else{\r
-throw e;\r
-}\r
-}\r
-this.pos++;\r
-this.lastPosition=-1;\r
-if(this._list.modCount!=this.expectedModCount){\r
-this.expectedModCount++;\r
-}}else{\r
-throw new java.util.ConcurrentModificationException();\r
-}},"~O");\r
-Clazz.overrideMethod(c$,"hasPrevious",\r
-function(){\r
-return this.pos>=0;\r
-});\r
-Clazz.overrideMethod(c$,"nextIndex",\r
-function(){\r
-return this.pos+1;\r
-});\r
-Clazz.overrideMethod(c$,"previous",\r
-function(){\r
-if(this.expectedModCount==this._list.modCount){\r
-try{\r
-var a=this._list.get(this.pos);\r
-this.lastPosition=this.pos;\r
-this.pos--;\r
-return a;\r
-}catch(e){\r
-if(Clazz.instanceOf(e,IndexOutOfBoundsException)){\r
-throw new java.util.NoSuchElementException();\r
-}else{\r
-throw e;\r
-}\r
-}\r
-}throw new java.util.ConcurrentModificationException();\r
-});\r
-Clazz.overrideMethod(c$,"previousIndex",\r
-function(){\r
-return this.pos;\r
-});\r
-Clazz.overrideMethod(c$,"set",\r
-function(a){\r
-if(this.expectedModCount==this._list.modCount){\r
-try{\r
-this._list.set(this.lastPosition,a);\r
-}catch(e){\r
-if(Clazz.instanceOf(e,IndexOutOfBoundsException)){\r
-throw new IllegalStateException();\r
-}else{\r
-throw e;\r
-}\r
-}\r
-}else{\r
-throw new java.util.ConcurrentModificationException();\r
-}},"~O");\r
-c$=Clazz.p0p();\r
-//};\r
-\r
-\r
-\r
-\r
-Clazz.pu$h(self.c$);\r
-c$=Clazz.declareType(java.util.AbstractList,"SubAbstractListRandomAccess",java.util.AbstractList.SubAbstractList,java.util.RandomAccess);\r
-c$=Clazz.p0p();\r
-\r
-\r
-\r
-\r
-Clazz.pu$h(self.c$);\r
-c$=Clazz.decorateAsClass(function(){\r
-this.fullList=null;\r
-this.offset=0;\r
-this.$size=0;\r
-Clazz.instantialize(this,arguments);\r
-},java.util.AbstractList,"SubAbstractList",java.util.AbstractList);\r
-Clazz.makeConstructor(c$,\r
-function(a,b,c){\r
-Clazz.superConstructor(this,java.util.AbstractList.SubAbstractList);\r
-this.fullList=a;\r
-this.modCount=this.fullList.modCount;\r
-this.offset=b;\r
-this.$size=c-b;\r
-},"java.util.AbstractList,~N,~N");\r
-Clazz.defineMethod(c$,"add",\r
-function(a,b){\r
-if(this.modCount==this.fullList.modCount){\r
-if(0<=a&&a<=this.$size){\r
-this.fullList.add(a+this.offset,b);\r
-this.$size++;\r
-this.modCount=this.fullList.modCount;\r
-}else{\r
-throw new IndexOutOfBoundsException();\r
-}}else{\r
-throw new java.util.ConcurrentModificationException();\r
-}},"~N,~O");\r
-Clazz.defineMethod(c$,"addAll",\r
-function(a,b){\r
-if(this.modCount==this.fullList.modCount){\r
-if(0<=a&&a<=this.$size){\r
-var c=this.fullList.addAll(a+this.offset,b);\r
-if(c){\r
-this.$size+=b.size();\r
-this.modCount=this.fullList.modCount;\r
-}return c;\r
-}throw new IndexOutOfBoundsException();\r
-}throw new java.util.ConcurrentModificationException();\r
-},"~N,java.util.Collection");\r
-Clazz.defineMethod(c$,"addAll",\r
-function(a){\r
-if(this.modCount==this.fullList.modCount){\r
-var b=this.fullList.addAll(this.offset+this.$size,a);\r
-if(b){\r
-this.$size+=a.size();\r
-this.modCount=this.fullList.modCount;\r
-}return b;\r
-}throw new java.util.ConcurrentModificationException();\r
-},"java.util.Collection");\r
-Clazz.defineMethod(c$,"get",\r
-function(a){\r
-if(this.modCount==this.fullList.modCount){\r
-if(0<=a&&a<this.$size){\r
-return this.fullList.get(a+this.offset);\r
-}throw new IndexOutOfBoundsException();\r
-}throw new java.util.ConcurrentModificationException();\r
-},"~N");\r
-Clazz.overrideMethod(c$,"iterator",\r
-function(){\r
-return this.listIterator(0);\r
-});\r
-Clazz.defineMethod(c$,"listIterator",\r
-function(a){\r
-if(this.modCount==this.fullList.modCount){\r
-if(0<=a&&a<=this.$size){\r
-return new java.util.AbstractList.SubAbstractList.SubAbstractListIterator(this.fullList.listIterator(a+this.offset),this,this.offset,this.$size);\r
-}throw new IndexOutOfBoundsException();\r
-}throw new java.util.ConcurrentModificationException();\r
-},"~N");\r
-Clazz.defineMethod(c$,"remove",\r
-function(a){\r
-if(this.modCount==this.fullList.modCount){\r
-if(0<=a&&a<this.$size){\r
-var b=this.fullList.remove(a+this.offset);\r
-this.$size--;\r
-this.modCount=this.fullList.modCount;\r
-return b;\r
-}throw new IndexOutOfBoundsException();\r
-}throw new java.util.ConcurrentModificationException();\r
-},"~N");\r
-Clazz.defineMethod(c$,"removeRange",\r
-function(a,b){\r
-if(a!=b){\r
-if(this.modCount==this.fullList.modCount){\r
-this.fullList.removeRange(a+this.offset,b+this.offset);\r
-this.$size-=b-a;\r
-this.modCount=this.fullList.modCount;\r
-}else{\r
-throw new java.util.ConcurrentModificationException();\r
-}}},"~N,~N");\r
-Clazz.defineMethod(c$,"set",\r
-function(a,b){\r
-if(this.modCount==this.fullList.modCount){\r
-if(0<=a&&a<this.$size){\r
-return this.fullList.set(a+this.offset,b);\r
-}throw new IndexOutOfBoundsException();\r
-}throw new java.util.ConcurrentModificationException();\r
-},"~N,~O");\r
-Clazz.overrideMethod(c$,"size",\r
-function(){\r
-return this.$size;\r
-});\r
-Clazz.defineMethod(c$,"sizeChanged",\r
-function(a){\r
-if(a){\r
-this.$size++;\r
-}else{\r
-this.$size--;\r
-}this.modCount=this.fullList.modCount;\r
-},"~B");\r
-Clazz.pu$h(self.c$);\r
-c$=Clazz.decorateAsClass(function(){\r
-this.subList=null;\r
-this.iterator=null;\r
-this.start=0;\r
-this.end=0;\r
-Clazz.instantialize(this,arguments);\r
-},java.util.AbstractList.SubAbstractList,"SubAbstractListIterator",null,java.util.ListIterator);\r
-Clazz.makeConstructor(c$,\r
-function(a,b,c,d){\r
-this.iterator=a;\r
-this.subList=b;\r
-this.start=c;\r
-this.end=this.start+d;\r
-},"java.util.ListIterator,java.util.AbstractList.SubAbstractList,~N,~N");\r
-Clazz.defineMethod(c$,"add",\r
-function(a){\r
-this.iterator.add(a);\r
-this.subList.sizeChanged(true);\r
-this.end++;\r
-},"~O");\r
-Clazz.overrideMethod(c$,"hasNext",\r
-function(){\r
-return this.iterator.nextIndex()<this.end;\r
-});\r
-Clazz.overrideMethod(c$,"hasPrevious",\r
-function(){\r
-return this.iterator.previousIndex()>=this.start;\r
-});\r
-Clazz.defineMethod(c$,"next",\r
-function(){\r
-if(this.iterator.nextIndex()<this.end){\r
-return this.iterator.next();\r
-}throw new java.util.NoSuchElementException();\r
-});\r
-Clazz.defineMethod(c$,"nextIndex",\r
-function(){\r
-return this.iterator.nextIndex()-this.start;\r
-});\r
-Clazz.defineMethod(c$,"previous",\r
-function(){\r
-if(this.iterator.previousIndex()>=this.start){\r
-return this.iterator.previous();\r
-}throw new java.util.NoSuchElementException();\r
-});\r
-Clazz.defineMethod(c$,"previousIndex",\r
-function(){\r
-var a=this.iterator.previousIndex();\r
-if(a>=this.start){\r
-return a-this.start;\r
-}return-1;\r
-});\r
-Clazz.defineMethod(c$,"remove",\r
-function(){\r
-this.iterator.remove();\r
-this.subList.sizeChanged(false);\r
-this.end--;\r
-});\r
-Clazz.defineMethod(c$,"set",\r
-function(a){\r
-this.iterator.set(a);\r
-},"~O");\r
-c$=Clazz.p0p();\r
-c$=Clazz.p0p();\r
-});\r
+// BH 8/25/2014 1:10:59 AM  - removed indirect access/inner class business.
+
+Clazz.load(["java.util.AbstractCollection","$.Iterator","$.List","$.ListIterator","$.RandomAccess","$.NoSuchElementException"],"java.util.AbstractList",["java.lang.IllegalArgumentException","$.IllegalStateException","$.IndexOutOfBoundsException","$.UnsupportedOperationException","java.util.ConcurrentModificationException"],function(){
+c$=Clazz.decorateAsClass(function(){
+this.modCount=0;
+
+
+
+//if(!Clazz.isClassDefined("java.util.AbstractList.SimpleListIterator")){
+//java.util.AbstractList.$AbstractList$SimpleListIterator$();
+//}
+//if(!Clazz.isClassDefined("java.util.AbstractList.FullListIterator")){
+//java.util.AbstractList.$AbstractList$FullListIterator$();
+//}
+
+
+
+Clazz.instantialize(this,arguments);
+},java.util,"AbstractList",java.util.AbstractCollection,java.util.List);
+Clazz.defineMethod(c$,"add",
+function(location,object){
+throw new UnsupportedOperationException();
+},"~N,~O");
+Clazz.defineMethod(c$,"add",
+function(object){
+this.add(this.size(),object);
+return true;
+},"~O");
+Clazz.defineMethod(c$,"addAll",
+function(location,collection){
+var it=collection.iterator();
+while(it.hasNext()){
+this.add(location++,it.next());
+}
+return!collection.isEmpty();
+},"~N,java.util.Collection");
+Clazz.overrideMethod(c$,"clear",
+function(){
+this.removeRange(0,this.size());
+});
+Clazz.overrideMethod(c$,"equals",
+function(object){
+if(this===object){
+return true;
+}if(Clazz.instanceOf(object,java.util.List)){
+var list=object;
+if(list.size()!=this.size()){
+return false;
+}var it1=this.iterator();
+var it2=list.iterator();
+while(it1.hasNext()){
+var e1=it1.next();
+var e2=it2.next();
+if(!(e1==null?e2==null:e1.equals(e2))){
+return false;
+}}
+return true;
+}return false;
+},"~O");
+Clazz.overrideMethod(c$,"hashCode",
+function(){
+var result=1;
+var it=this.iterator();
+while(it.hasNext()){
+var object=it.next();
+result=(31*result)+(object==null?0:object.hashCode());
+}
+return result;
+});
+Clazz.overrideMethod(c$,"indexOf",
+function(object){
+var it=this.listIterator();
+if(object!=null){
+while(it.hasNext()){
+if(object.equals(it.next())){
+return it.previousIndex();
+}}
+}else{
+while(it.hasNext()){
+if(it.next()==null){
+return it.previousIndex();
+}}
+}return-1;
+},"~O");
+Clazz.overrideMethod(c$,"iterator",
+function(){
+return new java.util.AbstractListSimpleListIterator(this); // Clazz.innerTypeInstance(java.util.AbstractList.SimpleListIterator,this,null);
+});
+Clazz.overrideMethod(c$,"lastIndexOf",
+function(object){
+var it=this.listIterator(this.size());
+if(object!=null){
+while(it.hasPrevious()){
+if(object.equals(it.previous())){
+return it.nextIndex();
+}}
+}else{
+while(it.hasPrevious()){
+if(it.previous()==null){
+return it.nextIndex();
+}}
+}return-1;
+},"~O");
+//Clazz.defineMethod(c$,"listIterator",
+//function(){
+//return this.listIterator(0);
+//});
+Clazz.defineMethod(c$,"listIterator",
+function(location){
+location || (location = 0);
+return new java.util.AbstractListFullListIterator(this, location);//Clazz.innerTypeInstance(java.util.AbstractList.FullListIterator,this,null,location);
+},"~N");
+Clazz.defineMethod(c$,"remove",
+function(location){
+throw new UnsupportedOperationException();
+},"~N");
+Clazz.defineMethod(c$,"removeRange",
+function(start,end){
+var it=this.listIterator(start);
+for(var i=start;i<end;i++){
+it.next();
+it.remove();
+}
+},"~N,~N");
+Clazz.overrideMethod(c$,"set",
+function(location,object){
+throw new UnsupportedOperationException();
+},"~N,~O");
+Clazz.overrideMethod(c$,"subList",
+function(start,end){
+if(0<=start&&end<=this.size()){
+if(start<=end){
+if(Clazz.instanceOf(this,java.util.RandomAccess)){
+return new java.util.AbstractList.SubAbstractListRandomAccess(this,start,end);
+}return new java.util.AbstractList.SubAbstractList(this,start,end);
+}throw new IllegalArgumentException();
+}throw new IndexOutOfBoundsException();
+},"~N,~N");
+
+
+
+//c$.$AbstractList$SimpleListIterator$=function(){
+
+Clazz.pu$h(self.c$);
+
+c$=Clazz.decorateAsClass(function(){
+//Clazz.prepareCallback(this,arguments);
+this.pos=-1;
+this.expectedModCount=0;
+this.lastPosition=-1;
+Clazz.instantialize(this,arguments);
+},java.util,"AbstractListSimpleListIterator",null,java.util.Iterator);
+
+
+Clazz.makeConstructor(c$,
+function(a){
+this._list = a;
+this.expectedModCount=a.modCount;
+}, "java.util.AbstractList");
+
+Clazz.overrideMethod(c$,"hasNext",
+function(){
+return this.pos+1<this._list.size();
+});
+Clazz.overrideMethod(c$,"next",
+function(){
+if(this.expectedModCount==this._list.modCount){
+try{
+var a=this._list.get(this.pos+1);
+this.lastPosition=++this.pos;
+return a;
+}catch(e){
+if(Clazz.instanceOf(e,IndexOutOfBoundsException)){
+throw new java.util.NoSuchElementException();
+}else{
+throw e;
+}
+}
+}throw new java.util.ConcurrentModificationException();
+});
+Clazz.overrideMethod(c$,"remove",
+function(){
+if(this.expectedModCount==this._list.modCount){
+try{
+this._list.remove(this.lastPosition);
+}catch(e){
+if(Clazz.instanceOf(e,IndexOutOfBoundsException)){
+throw new IllegalStateException();
+}else{
+throw e;
+}
+}
+if(this._list.modCount!=this.expectedModCount){
+this.expectedModCount++;
+}if(this.pos==this.lastPosition){
+this.pos--;
+}this.lastPosition=-1;
+}else{
+throw new java.util.ConcurrentModificationException();
+}});
+
+c$=Clazz.p0p();
+//};
+
+
+//c$.$AbstractList$FullListIterator$=function(){
+Clazz.pu$h(self.c$);
+c$=Clazz.decorateAsClass(function(){
+//Clazz.prepareCallback(this,arguments);
+Clazz.instantialize(this,arguments);
+},java.util,"AbstractListFullListIterator",java.util.AbstractListSimpleListIterator,java.util.ListIterator);
+
+//,Clazz.innerTypeInstance(java.util.AbstractList.SimpleListIterator,this,null,Clazz.inheritArgs));
+
+Clazz.makeConstructor(c$,
+function(a,b){
+Clazz.superConstructor(this,java.util.AbstractListFullListIterator,[a]);
+if(0<=b&&b<=this._list.size()){
+this.pos=b-1;
+}else{
+throw new IndexOutOfBoundsException();
+}},"java.util.AbstractList,~N");
+Clazz.overrideMethod(c$,"add",
+function(a){
+if(this.expectedModCount==this._list.modCount){
+try{
+this._list.add(this.pos+1,a);
+}catch(e){
+if(Clazz.instanceOf(e,IndexOutOfBoundsException)){
+throw new java.util.NoSuchElementException();
+}else{
+throw e;
+}
+}
+this.pos++;
+this.lastPosition=-1;
+if(this._list.modCount!=this.expectedModCount){
+this.expectedModCount++;
+}}else{
+throw new java.util.ConcurrentModificationException();
+}},"~O");
+Clazz.overrideMethod(c$,"hasPrevious",
+function(){
+return this.pos>=0;
+});
+Clazz.overrideMethod(c$,"nextIndex",
+function(){
+return this.pos+1;
+});
+Clazz.overrideMethod(c$,"previous",
+function(){
+if(this.expectedModCount==this._list.modCount){
+try{
+var a=this._list.get(this.pos);
+this.lastPosition=this.pos;
+this.pos--;
+return a;
+}catch(e){
+if(Clazz.instanceOf(e,IndexOutOfBoundsException)){
+throw new java.util.NoSuchElementException();
+}else{
+throw e;
+}
+}
+}throw new java.util.ConcurrentModificationException();
+});
+Clazz.overrideMethod(c$,"previousIndex",
+function(){
+return this.pos;
+});
+Clazz.overrideMethod(c$,"set",
+function(a){
+if(this.expectedModCount==this._list.modCount){
+try{
+this._list.set(this.lastPosition,a);
+}catch(e){
+if(Clazz.instanceOf(e,IndexOutOfBoundsException)){
+throw new IllegalStateException();
+}else{
+throw e;
+}
+}
+}else{
+throw new java.util.ConcurrentModificationException();
+}},"~O");
+c$=Clazz.p0p();
+//};
+
+
+
+
+Clazz.pu$h(self.c$);
+c$=Clazz.declareType(java.util.AbstractList,"SubAbstractListRandomAccess",java.util.AbstractList.SubAbstractList,java.util.RandomAccess);
+c$=Clazz.p0p();
+
+
+
+
+Clazz.pu$h(self.c$);
+c$=Clazz.decorateAsClass(function(){
+this.fullList=null;
+this.offset=0;
+this.$size=0;
+Clazz.instantialize(this,arguments);
+},java.util.AbstractList,"SubAbstractList",java.util.AbstractList);
+Clazz.makeConstructor(c$,
+function(a,b,c){
+Clazz.superConstructor(this,java.util.AbstractList.SubAbstractList);
+this.fullList=a;
+this.modCount=this.fullList.modCount;
+this.offset=b;
+this.$size=c-b;
+},"java.util.AbstractList,~N,~N");
+Clazz.defineMethod(c$,"add",
+function(a,b){
+if(this.modCount==this.fullList.modCount){
+if(0<=a&&a<=this.$size){
+this.fullList.add(a+this.offset,b);
+this.$size++;
+this.modCount=this.fullList.modCount;
+}else{
+throw new IndexOutOfBoundsException();
+}}else{
+throw new java.util.ConcurrentModificationException();
+}},"~N,~O");
+Clazz.defineMethod(c$,"addAll",
+function(a,b){
+if(this.modCount==this.fullList.modCount){
+if(0<=a&&a<=this.$size){
+var c=this.fullList.addAll(a+this.offset,b);
+if(c){
+this.$size+=b.size();
+this.modCount=this.fullList.modCount;
+}return c;
+}throw new IndexOutOfBoundsException();
+}throw new java.util.ConcurrentModificationException();
+},"~N,java.util.Collection");
+Clazz.defineMethod(c$,"addAll",
+function(a){
+if(this.modCount==this.fullList.modCount){
+var b=this.fullList.addAll(this.offset+this.$size,a);
+if(b){
+this.$size+=a.size();
+this.modCount=this.fullList.modCount;
+}return b;
+}throw new java.util.ConcurrentModificationException();
+},"java.util.Collection");
+Clazz.defineMethod(c$,"get",
+function(a){
+if(this.modCount==this.fullList.modCount){
+if(0<=a&&a<this.$size){
+return this.fullList.get(a+this.offset);
+}throw new IndexOutOfBoundsException();
+}throw new java.util.ConcurrentModificationException();
+},"~N");
+Clazz.overrideMethod(c$,"iterator",
+function(){
+return this.listIterator(0);
+});
+Clazz.defineMethod(c$,"listIterator",
+function(a){
+if(this.modCount==this.fullList.modCount){
+if(0<=a&&a<=this.$size){
+return new java.util.AbstractList.SubAbstractList.SubAbstractListIterator(this.fullList.listIterator(a+this.offset),this,this.offset,this.$size);
+}throw new IndexOutOfBoundsException();
+}throw new java.util.ConcurrentModificationException();
+},"~N");
+Clazz.defineMethod(c$,"remove",
+function(a){
+if(this.modCount==this.fullList.modCount){
+if(0<=a&&a<this.$size){
+var b=this.fullList.remove(a+this.offset);
+this.$size--;
+this.modCount=this.fullList.modCount;
+return b;
+}throw new IndexOutOfBoundsException();
+}throw new java.util.ConcurrentModificationException();
+},"~N");
+Clazz.defineMethod(c$,"removeRange",
+function(a,b){
+if(a!=b){
+if(this.modCount==this.fullList.modCount){
+this.fullList.removeRange(a+this.offset,b+this.offset);
+this.$size-=b-a;
+this.modCount=this.fullList.modCount;
+}else{
+throw new java.util.ConcurrentModificationException();
+}}},"~N,~N");
+Clazz.defineMethod(c$,"set",
+function(a,b){
+if(this.modCount==this.fullList.modCount){
+if(0<=a&&a<this.$size){
+return this.fullList.set(a+this.offset,b);
+}throw new IndexOutOfBoundsException();
+}throw new java.util.ConcurrentModificationException();
+},"~N,~O");
+Clazz.overrideMethod(c$,"size",
+function(){
+return this.$size;
+});
+Clazz.defineMethod(c$,"sizeChanged",
+function(a){
+if(a){
+this.$size++;
+}else{
+this.$size--;
+}this.modCount=this.fullList.modCount;
+},"~B");
+Clazz.pu$h(self.c$);
+c$=Clazz.decorateAsClass(function(){
+this.subList=null;
+this.iterator=null;
+this.start=0;
+this.end=0;
+Clazz.instantialize(this,arguments);
+},java.util.AbstractList.SubAbstractList,"SubAbstractListIterator",null,java.util.ListIterator);
+Clazz.makeConstructor(c$,
+function(a,b,c,d){
+this.iterator=a;
+this.subList=b;
+this.start=c;
+this.end=this.start+d;
+},"java.util.ListIterator,java.util.AbstractList.SubAbstractList,~N,~N");
+Clazz.defineMethod(c$,"add",
+function(a){
+this.iterator.add(a);
+this.subList.sizeChanged(true);
+this.end++;
+},"~O");
+Clazz.overrideMethod(c$,"hasNext",
+function(){
+return this.iterator.nextIndex()<this.end;
+});
+Clazz.overrideMethod(c$,"hasPrevious",
+function(){
+return this.iterator.previousIndex()>=this.start;
+});
+Clazz.defineMethod(c$,"next",
+function(){
+if(this.iterator.nextIndex()<this.end){
+return this.iterator.next();
+}throw new java.util.NoSuchElementException();
+});
+Clazz.defineMethod(c$,"nextIndex",
+function(){
+return this.iterator.nextIndex()-this.start;
+});
+Clazz.defineMethod(c$,"previous",
+function(){
+if(this.iterator.previousIndex()>=this.start){
+return this.iterator.previous();
+}throw new java.util.NoSuchElementException();
+});
+Clazz.defineMethod(c$,"previousIndex",
+function(){
+var a=this.iterator.previousIndex();
+if(a>=this.start){
+return a-this.start;
+}return-1;
+});
+Clazz.defineMethod(c$,"remove",
+function(){
+this.iterator.remove();
+this.subList.sizeChanged(false);
+this.end--;
+});
+Clazz.defineMethod(c$,"set",
+function(a){
+this.iterator.set(a);
+},"~O");
+c$=Clazz.p0p();
+c$=Clazz.p0p();
+});