final class com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator extends com.oracle.truffle.regex.tregex.string.AbstractStringIterator
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator
super_class: com.oracle.truffle.regex.tregex.string.AbstractStringIterator
{
private final byte[] str;
descriptor: [B
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
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 Lcom/oracle/truffle/regex/tregex/string/StringUTF8;
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 com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>(byte[]);
descriptor: ([B)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial com.oracle.truffle.regex.tregex.string.AbstractStringIterator.<init>:()V
1: aload 0
aload 1
putfield com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.str:[B
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/regex/tregex/string/StringUTF8$StringUTF8Iterator;
0 3 1 str [B
MethodParameters:
Name Flags
str
public boolean hasNext();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.i:I
aload 0
getfield com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.str:[B
arraylength
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 this Lcom/oracle/truffle/regex/tregex/string/StringUTF8$StringUTF8Iterator;
public int nextInt();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.str:[B
aload 0
dup
getfield com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.i:I
dup_x1
iconst_1
iadd
putfield com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.i:I
baload
istore 1
start local 1 1: iload 1
invokestatic java.lang.Byte.toUnsignedInt:(B)I
sipush 128
if_icmpge 3
2: iload 1
ireturn
3: StackMap locals: int
StackMap stack:
iload 1
bipush 24
ishl
iconst_m1
ixor
invokestatic java.lang.Integer.numberOfLeadingZeros:(I)I
istore 2
start local 2 4: iload 1
sipush 255
iload 2
iushr
iand
istore 3
start local 3 5: getstatic com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.$assertionsDisabled:Z
ifne 7
iconst_1
iload 2
if_icmpge 6
iload 2
iconst_5
if_icmplt 7
StackMap locals: int int
StackMap stack:
6: new java.lang.AssertionError
dup
iload 2
invokespecial java.lang.AssertionError.<init>:(I)V
athrow
7: StackMap locals:
StackMap stack:
iload 2
tableswitch { // 3 - 4
3: 11
4: 8
default: 14
}
8: StackMap locals:
StackMap stack:
getstatic com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.$assertionsDisabled:Z
ifne 10
aload 0
invokevirtual com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.hasNext:()Z
ifeq 9
aload 0
getfield com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.str:[B
aload 0
getfield com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.i:I
baload
sipush 192
iand
sipush 128
if_icmpeq 10
StackMap locals:
StackMap stack:
9: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
10: StackMap locals:
StackMap stack:
iload 3
bipush 6
ishl
aload 0
getfield com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.str:[B
aload 0
dup
getfield com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.i:I
dup_x1
iconst_1
iadd
putfield com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.i:I
baload
bipush 63
iand
ior
istore 3
11: StackMap locals:
StackMap stack:
getstatic com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.$assertionsDisabled:Z
ifne 13
aload 0
invokevirtual com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.hasNext:()Z
ifeq 12
aload 0
getfield com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.str:[B
aload 0
getfield com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.i:I
baload
sipush 192
iand
sipush 128
if_icmpeq 13
StackMap locals:
StackMap stack:
12: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
13: StackMap locals:
StackMap stack:
iload 3
bipush 6
ishl
aload 0
getfield com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.str:[B
aload 0
dup
getfield com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.i:I
dup_x1
iconst_1
iadd
putfield com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.i:I
baload
bipush 63
iand
ior
istore 3
14: StackMap locals:
StackMap stack:
getstatic com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.$assertionsDisabled:Z
ifne 16
aload 0
invokevirtual com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.hasNext:()Z
ifeq 15
aload 0
getfield com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.str:[B
aload 0
getfield com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.i:I
baload
sipush 192
iand
sipush 128
if_icmpeq 16
StackMap locals:
StackMap stack:
15: new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
16: StackMap locals:
StackMap stack:
iload 3
bipush 6
ishl
aload 0
getfield com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.str:[B
aload 0
dup
getfield com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.i:I
dup_x1
iconst_1
iadd
putfield com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator.i:I
baload
bipush 63
iand
ior
istore 3
17: iload 3
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lcom/oracle/truffle/regex/tregex/string/StringUTF8$StringUTF8Iterator;
1 18 1 b B
4 18 2 nBytes I
5 18 3 codepoint I
}
SourceFile: "StringUTF8.java"
NestHost: com.oracle.truffle.regex.tregex.string.StringUTF8
InnerClasses:
private final StringUTF8Iterator = com.oracle.truffle.regex.tregex.string.StringUTF8$StringUTF8Iterator of com.oracle.truffle.regex.tregex.string.StringUTF8