public final class jflex.chars.Interval implements java.lang.Iterable<java.lang.Integer>
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: jflex.chars.Interval
super_class: java.lang.Object
{
public int start;
descriptor: I
flags: (0x0001) ACC_PUBLIC
public int end;
descriptor: I
flags: (0x0001) ACC_PUBLIC
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Ljflex/chars/Interval;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic jflex.chars.Interval.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(int, int);
descriptor: (II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iload 1
putfield jflex.chars.Interval.start:I
2: aload 0
iload 2
putfield jflex.chars.Interval.end:I
3: getstatic jflex.chars.Interval.$assertionsDisabled:Z
ifne 4
aload 0
invokevirtual jflex.chars.Interval.invariants:()Z
ifne 4
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
4: StackMap locals: jflex.chars.Interval int int
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljflex/chars/Interval;
0 5 1 start I
0 5 2 end I
MethodParameters:
Name Flags
start
end
public boolean contains(int);
descriptor: (I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jflex.chars.Interval.start:I
iload 1
if_icmpgt 1
aload 0
getfield jflex.chars.Interval.end:I
iload 1
if_icmplt 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljflex/chars/Interval;
0 2 1 point I
MethodParameters:
Name Flags
point
public boolean contains(jflex.chars.Interval);
descriptor: (Ljflex/chars/Interval;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jflex.chars.Interval.start:I
aload 1
getfield jflex.chars.Interval.start:I
if_icmpgt 1
aload 0
getfield jflex.chars.Interval.end:I
aload 1
getfield jflex.chars.Interval.end:I
if_icmplt 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljflex/chars/Interval;
0 2 1 other Ljflex/chars/Interval;
MethodParameters:
Name Flags
other
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
aload 0
if_acmpne 1
iconst_1
ireturn
1: StackMap locals:
StackMap stack:
aload 1
instanceof jflex.chars.Interval
ifne 2
iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 1
checkcast jflex.chars.Interval
astore 2
start local 2 3: aload 2
getfield jflex.chars.Interval.start:I
aload 0
getfield jflex.chars.Interval.start:I
if_icmpne 4
aload 2
getfield jflex.chars.Interval.end:I
aload 0
getfield jflex.chars.Interval.end:I
if_icmpne 4
iconst_1
ireturn
StackMap locals: jflex.chars.Interval
StackMap stack:
4: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljflex/chars/Interval;
0 5 1 o Ljava/lang/Object;
3 5 2 other Ljflex/chars/Interval;
MethodParameters:
Name Flags
o
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: iconst_1
istore 1
start local 1 1: iload 1
ldc 1000003
imul
istore 1
2: iload 1
aload 0
getfield jflex.chars.Interval.start:I
ixor
istore 1
3: iload 1
ldc 1000003
imul
istore 1
4: iload 1
aload 0
getfield jflex.chars.Interval.end:I
ixor
istore 1
5: iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljflex/chars/Interval;
1 6 1 h I
private static boolean isPrintable(int);
descriptor: (I)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: bipush 31
iload 0
if_icmpge 1
iload 0
bipush 127
if_icmpge 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 c I
MethodParameters:
Name Flags
c
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
astore 1
start local 1 1: aload 0
getfield jflex.chars.Interval.start:I
invokestatic jflex.chars.Interval.isPrintable:(I)Z
ifeq 2
aload 1
ldc "'"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield jflex.chars.Interval.start:I
i2c
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
ldc "'"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
goto 3
2: StackMap locals: java.lang.StringBuilder
StackMap stack:
aload 1
aload 0
getfield jflex.chars.Interval.start:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
3: StackMap locals:
StackMap stack:
aload 0
getfield jflex.chars.Interval.start:I
aload 0
getfield jflex.chars.Interval.end:I
if_icmpeq 7
4: aload 1
ldc "-"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
5: aload 0
getfield jflex.chars.Interval.end:I
invokestatic jflex.chars.Interval.isPrintable:(I)Z
ifeq 6
aload 1
ldc "'"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield jflex.chars.Interval.end:I
i2c
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
ldc "'"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
goto 7
6: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield jflex.chars.Interval.end:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
7: StackMap locals:
StackMap stack:
aload 1
ldc "]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
8: aload 1
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljflex/chars/Interval;
1 9 1 result Ljava/lang/StringBuilder;
public static jflex.chars.Interval ofCharacter(int);
descriptor: (I)Ljflex/chars/Interval;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: new jflex.chars.Interval
dup
iload 0
iload 0
invokespecial jflex.chars.Interval.<init>:(II)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 c I
MethodParameters:
Name Flags
c
public static jflex.chars.Interval copyOf(jflex.chars.Interval);
descriptor: (Ljflex/chars/Interval;)Ljflex/chars/Interval;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: new jflex.chars.Interval
dup
aload 0
getfield jflex.chars.Interval.start:I
aload 0
getfield jflex.chars.Interval.end:I
invokespecial jflex.chars.Interval.<init>:(II)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 interval Ljflex/chars/Interval;
MethodParameters:
Name Flags
interval
public int size();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield jflex.chars.Interval.end:I
aload 0
getfield jflex.chars.Interval.start:I
isub
iconst_1
iadd
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljflex/chars/Interval;
public boolean invariants();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield jflex.chars.Interval.start:I
aload 0
getfield jflex.chars.Interval.end:I
if_icmpgt 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljflex/chars/Interval;
public jflex.chars.Interval$IntervalIterator iterator();
descriptor: ()Ljflex/chars/Interval$IntervalIterator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new jflex.chars.Interval$IntervalIterator
dup
aload 0
invokespecial jflex.chars.Interval$IntervalIterator.<init>:(Ljflex/chars/Interval;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljflex/chars/Interval;
public java.util.Iterator iterator();
descriptor: ()Ljava/util/Iterator;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual jflex.chars.Interval.iterator:()Ljflex/chars/Interval$IntervalIterator;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Ljava/lang/Object;Ljava/lang/Iterable<Ljava/lang/Integer;>;
SourceFile: "Interval.java"
NestMembers:
jflex.chars.Interval$IntervalIterator
InnerClasses:
public IntervalIterator = jflex.chars.Interval$IntervalIterator of jflex.chars.Interval