class freemarker.core.ListableRightUnboundedRangeModel$1 implements freemarker.template.TemplateModelIterator
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: freemarker.core.ListableRightUnboundedRangeModel$1
super_class: java.lang.Object
{
boolean needInc;
descriptor: Z
flags: (0x0000)
int nextType;
descriptor: I
flags: (0x0000)
int nextInt;
descriptor: I
flags: (0x0000)
long nextLong;
descriptor: J
flags: (0x0000)
java.math.BigInteger nextBigInteger;
descriptor: Ljava/math/BigInteger;
flags: (0x0000)
final freemarker.core.ListableRightUnboundedRangeModel this$0;
descriptor: Lfreemarker/core/ListableRightUnboundedRangeModel;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
void <init>(freemarker.core.ListableRightUnboundedRangeModel);
descriptor: (Lfreemarker/core/ListableRightUnboundedRangeModel;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 // freemarker.core.ListableRightUnboundedRangeModel$1 this
0: .line 46
aload 0 /* this */
aload 1
putfield freemarker.core.ListableRightUnboundedRangeModel$1.this$0:Lfreemarker/core/ListableRightUnboundedRangeModel;
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 48
aload 0 /* this */
iconst_1
putfield freemarker.core.ListableRightUnboundedRangeModel$1.nextType:I
2: .line 49
aload 0 /* this */
aload 1
invokevirtual freemarker.core.ListableRightUnboundedRangeModel.getBegining:()I
putfield freemarker.core.ListableRightUnboundedRangeModel$1.nextInt:I
3: .line 46
return
end local 0 // freemarker.core.ListableRightUnboundedRangeModel$1 this
LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lfreemarker/core/ListableRightUnboundedRangeModel$1;
MethodParameters:
Name Flags
this$0 final
public freemarker.template.TemplateModel next();
descriptor: ()Lfreemarker/template/TemplateModel;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 // freemarker.core.ListableRightUnboundedRangeModel$1 this
0: .line 54
aload 0 /* this */
getfield freemarker.core.ListableRightUnboundedRangeModel$1.needInc:Z
ifeq 16
1: .line 55
aload 0 /* this */
getfield freemarker.core.ListableRightUnboundedRangeModel$1.nextType:I
tableswitch { // 1 - 2
1: 2
2: 8
default: 15
}
2: .line 57
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield freemarker.core.ListableRightUnboundedRangeModel$1.nextInt:I
ldc 2147483647
if_icmpge 5
3: .line 58
aload 0 /* this */
dup
getfield freemarker.core.ListableRightUnboundedRangeModel$1.nextInt:I
iconst_1
iadd
putfield freemarker.core.ListableRightUnboundedRangeModel$1.nextInt:I
4: .line 59
goto 16
5: .line 60
StackMap locals:
StackMap stack:
aload 0 /* this */
iconst_2
putfield freemarker.core.ListableRightUnboundedRangeModel$1.nextType:I
6: .line 61
aload 0 /* this */
aload 0 /* this */
getfield freemarker.core.ListableRightUnboundedRangeModel$1.nextInt:I
i2l
lconst_1
ladd
putfield freemarker.core.ListableRightUnboundedRangeModel$1.nextLong:J
7: .line 63
goto 16
8: .line 66
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield freemarker.core.ListableRightUnboundedRangeModel$1.nextLong:J
ldc 9223372036854775807
lcmp
ifge 11
9: .line 67
aload 0 /* this */
dup
getfield freemarker.core.ListableRightUnboundedRangeModel$1.nextLong:J
lconst_1
ladd
putfield freemarker.core.ListableRightUnboundedRangeModel$1.nextLong:J
10: .line 68
goto 16
11: .line 69
StackMap locals:
StackMap stack:
aload 0 /* this */
iconst_3
putfield freemarker.core.ListableRightUnboundedRangeModel$1.nextType:I
12: .line 70
aload 0 /* this */
aload 0 /* this */
getfield freemarker.core.ListableRightUnboundedRangeModel$1.nextLong:J
invokestatic java.math.BigInteger.valueOf:(J)Ljava/math/BigInteger;
putfield freemarker.core.ListableRightUnboundedRangeModel$1.nextBigInteger:Ljava/math/BigInteger;
13: .line 71
aload 0 /* this */
aload 0 /* this */
getfield freemarker.core.ListableRightUnboundedRangeModel$1.nextBigInteger:Ljava/math/BigInteger;
getstatic java.math.BigInteger.ONE:Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.add:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
putfield freemarker.core.ListableRightUnboundedRangeModel$1.nextBigInteger:Ljava/math/BigInteger;
14: .line 73
goto 16
15: .line 76
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 0 /* this */
getfield freemarker.core.ListableRightUnboundedRangeModel$1.nextBigInteger:Ljava/math/BigInteger;
getstatic java.math.BigInteger.ONE:Ljava/math/BigInteger;
invokevirtual java.math.BigInteger.add:(Ljava/math/BigInteger;)Ljava/math/BigInteger;
putfield freemarker.core.ListableRightUnboundedRangeModel$1.nextBigInteger:Ljava/math/BigInteger;
16: .line 79
StackMap locals:
StackMap stack:
aload 0 /* this */
iconst_1
putfield freemarker.core.ListableRightUnboundedRangeModel$1.needInc:Z
17: .line 80
aload 0 /* this */
getfield freemarker.core.ListableRightUnboundedRangeModel$1.nextType:I
iconst_1
if_icmpne 18
new freemarker.template.SimpleNumber
dup
aload 0 /* this */
getfield freemarker.core.ListableRightUnboundedRangeModel$1.nextInt:I
invokespecial freemarker.template.SimpleNumber.<init>:(I)V
goto 20
18: .line 81
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield freemarker.core.ListableRightUnboundedRangeModel$1.nextType:I
iconst_2
if_icmpne 19
new freemarker.template.SimpleNumber
dup
aload 0 /* this */
getfield freemarker.core.ListableRightUnboundedRangeModel$1.nextLong:J
invokespecial freemarker.template.SimpleNumber.<init>:(J)V
goto 20
19: .line 82
StackMap locals:
StackMap stack:
new freemarker.template.SimpleNumber
dup
aload 0 /* this */
getfield freemarker.core.ListableRightUnboundedRangeModel$1.nextBigInteger:Ljava/math/BigInteger;
invokespecial freemarker.template.SimpleNumber.<init>:(Ljava/lang/Number;)V
20: .line 80
StackMap locals:
StackMap stack: freemarker.template.SimpleNumber
areturn
end local 0 // freemarker.core.ListableRightUnboundedRangeModel$1 this
LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lfreemarker/core/ListableRightUnboundedRangeModel$1;
Exceptions:
throws freemarker.template.TemplateModelException
public boolean hasNext();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // freemarker.core.ListableRightUnboundedRangeModel$1 this
0: .line 86
iconst_1
ireturn
end local 0 // freemarker.core.ListableRightUnboundedRangeModel$1 this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lfreemarker/core/ListableRightUnboundedRangeModel$1;
Exceptions:
throws freemarker.template.TemplateModelException
}
SourceFile: "ListableRightUnboundedRangeModel.java"
EnclosingMethod: freemarker.core.ListableRightUnboundedRangeModel.iterator:()Lfreemarker/template/TemplateModelIterator;
NestHost: freemarker.core.ListableRightUnboundedRangeModel
InnerClasses:
freemarker.core.ListableRightUnboundedRangeModel$1