public abstract class org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct
super_class: java.lang.Object
{
byte[] reference;
descriptor: [B
flags: (0x0000)
int[] constantPoolOffsets;
descriptor: [I
flags: (0x0000)
int structOffset;
descriptor: I
flags: (0x0000)
public void <init>(byte[], int[], int);
descriptor: ([B[II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=4
start local 0 // org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct this
start local 1 // byte[] classFileBytes
start local 2 // int[] offsets
start local 3 // int offset
0: .line 20
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 21
aload 0 /* this */
aload 1 /* classFileBytes */
putfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.reference:[B
2: .line 22
aload 0 /* this */
aload 2 /* offsets */
putfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.constantPoolOffsets:[I
3: .line 23
aload 0 /* this */
iload 3 /* offset */
putfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.structOffset:I
4: .line 24
return
end local 3 // int offset
end local 2 // int[] offsets
end local 1 // byte[] classFileBytes
end local 0 // org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/eclipse/jdt/internal/compiler/classfmt/ClassFileStruct;
0 5 1 classFileBytes [B
0 5 2 offsets [I
0 5 3 offset I
MethodParameters:
Name Flags
classFileBytes
offsets
offset
public double doubleAt(int);
descriptor: (I)D
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct this
start local 1 // int relativeOffset
0: .line 26
aload 0 /* this */
iload 1 /* relativeOffset */
invokevirtual org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.i8At:(I)J
invokestatic java.lang.Double.longBitsToDouble:(J)D
dreturn
end local 1 // int relativeOffset
end local 0 // org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jdt/internal/compiler/classfmt/ClassFileStruct;
0 1 1 relativeOffset I
MethodParameters:
Name Flags
relativeOffset
public float floatAt(int);
descriptor: (I)F
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct this
start local 1 // int relativeOffset
0: .line 29
aload 0 /* this */
iload 1 /* relativeOffset */
invokevirtual org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.i4At:(I)I
invokestatic java.lang.Float.intBitsToFloat:(I)F
freturn
end local 1 // int relativeOffset
end local 0 // org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jdt/internal/compiler/classfmt/ClassFileStruct;
0 1 1 relativeOffset I
MethodParameters:
Name Flags
relativeOffset
public int i4At(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 // org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct this
start local 1 // int relativeOffset
0: .line 32
iload 1 /* relativeOffset */
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.structOffset:I
iadd
istore 2 /* position */
start local 2 // int position
1: .line 33
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.reference:[B
iload 2 /* position */
iinc 2 /* position */ 1
baload
sipush 255
iand
bipush 24
ishl
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.reference:[B
iload 2 /* position */
iinc 2 /* position */ 1
baload
sipush 255
iand
bipush 16
ishl
ior
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.reference:[B
iload 2 /* position */
iinc 2 /* position */ 1
baload
sipush 255
iand
bipush 8
ishl
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.reference:[B
iload 2 /* position */
baload
sipush 255
iand
iadd
ior
ireturn
end local 2 // int position
end local 1 // int relativeOffset
end local 0 // org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jdt/internal/compiler/classfmt/ClassFileStruct;
0 2 1 relativeOffset I
1 2 2 position I
MethodParameters:
Name Flags
relativeOffset
public long i8At(int);
descriptor: (I)J
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 // org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct this
start local 1 // int relativeOffset
0: .line 36
iload 1 /* relativeOffset */
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.structOffset:I
iadd
istore 2 /* position */
start local 2 // int position
1: .line 37
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.reference:[B
iload 2 /* position */
iinc 2 /* position */ 1
baload
sipush 255
iand
i2l
bipush 56
lshl
2: .line 38
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.reference:[B
iload 2 /* position */
iinc 2 /* position */ 1
baload
sipush 255
iand
i2l
bipush 48
lshl
3: .line 37
lor
4: .line 39
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.reference:[B
iload 2 /* position */
iinc 2 /* position */ 1
baload
sipush 255
iand
i2l
bipush 40
lshl
5: .line 37
lor
6: .line 40
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.reference:[B
iload 2 /* position */
iinc 2 /* position */ 1
baload
sipush 255
iand
i2l
bipush 32
lshl
7: .line 37
lor
8: .line 41
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.reference:[B
iload 2 /* position */
iinc 2 /* position */ 1
baload
sipush 255
iand
i2l
bipush 24
lshl
9: .line 37
lor
10: .line 42
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.reference:[B
iload 2 /* position */
iinc 2 /* position */ 1
baload
sipush 255
iand
i2l
bipush 16
lshl
11: .line 37
lor
12: .line 43
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.reference:[B
iload 2 /* position */
iinc 2 /* position */ 1
baload
sipush 255
iand
i2l
bipush 8
lshl
13: .line 37
lor
14: .line 44
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.reference:[B
iload 2 /* position */
iinc 2 /* position */ 1
baload
sipush 255
iand
i2l
15: .line 37
lor
lreturn
end local 2 // int position
end local 1 // int relativeOffset
end local 0 // org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct this
LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/eclipse/jdt/internal/compiler/classfmt/ClassFileStruct;
0 16 1 relativeOffset I
1 16 2 position I
MethodParameters:
Name Flags
relativeOffset
protected void reset();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=1, args_size=1
start local 0 // org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct this
0: .line 47
aload 0 /* this */
aconst_null
putfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.reference:[B
1: .line 48
aload 0 /* this */
aconst_null
putfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.constantPoolOffsets:[I
2: .line 49
return
end local 0 // org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/eclipse/jdt/internal/compiler/classfmt/ClassFileStruct;
public int u1At(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 // org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct this
start local 1 // int relativeOffset
0: .line 51
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.reference:[B
iload 1 /* relativeOffset */
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.structOffset:I
iadd
baload
sipush 255
iand
ireturn
end local 1 // int relativeOffset
end local 0 // org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/eclipse/jdt/internal/compiler/classfmt/ClassFileStruct;
0 1 1 relativeOffset I
MethodParameters:
Name Flags
relativeOffset
public int u2At(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 // org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct this
start local 1 // int relativeOffset
0: .line 54
iload 1 /* relativeOffset */
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.structOffset:I
iadd
istore 2 /* position */
start local 2 // int position
1: .line 55
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.reference:[B
iload 2 /* position */
iinc 2 /* position */ 1
baload
sipush 255
iand
bipush 8
ishl
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.reference:[B
iload 2 /* position */
baload
sipush 255
iand
ior
ireturn
end local 2 // int position
end local 1 // int relativeOffset
end local 0 // org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jdt/internal/compiler/classfmt/ClassFileStruct;
0 2 1 relativeOffset I
1 2 2 position I
MethodParameters:
Name Flags
relativeOffset
public long u4At(int);
descriptor: (I)J
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 // org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct this
start local 1 // int relativeOffset
0: .line 58
iload 1 /* relativeOffset */
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.structOffset:I
iadd
istore 2 /* position */
start local 2 // int position
1: .line 59
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.reference:[B
iload 2 /* position */
iinc 2 /* position */ 1
baload
i2l
ldc 255
land
bipush 24
lshl
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.reference:[B
iload 2 /* position */
iinc 2 /* position */ 1
baload
sipush 255
iand
bipush 16
ishl
i2l
lor
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.reference:[B
iload 2 /* position */
iinc 2 /* position */ 1
baload
sipush 255
iand
bipush 8
ishl
i2l
lor
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.reference:[B
iload 2 /* position */
baload
sipush 255
iand
i2l
lor
lreturn
end local 2 // int position
end local 1 // int relativeOffset
end local 0 // org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/eclipse/jdt/internal/compiler/classfmt/ClassFileStruct;
0 2 1 relativeOffset I
1 2 2 position I
MethodParameters:
Name Flags
relativeOffset
public char[] utf8At(int, int);
descriptor: (II)[C
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=3
start local 0 // org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct this
start local 1 // int relativeOffset
start local 2 // int bytesAvailable
0: .line 62
iload 2 /* bytesAvailable */
istore 3 /* length */
start local 3 // int length
1: .line 63
iload 2 /* bytesAvailable */
newarray 5
astore 4 /* outputBuf */
start local 4 // char[] outputBuf
2: .line 64
iconst_0
istore 5 /* outputPos */
start local 5 // int outputPos
3: .line 65
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.structOffset:I
iload 1 /* relativeOffset */
iadd
istore 6 /* readOffset */
start local 6 // int readOffset
4: .line 67
goto 15
5: .line 68
StackMap locals: org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct int int int char[] int int
StackMap stack:
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.reference:[B
iload 6 /* readOffset */
iinc 6 /* readOffset */ 1
baload
sipush 255
iand
istore 7 /* x */
start local 7 // int x
6: .line 69
iinc 3 /* length */ -1
7: .line 70
sipush 128
iload 7 /* x */
iand
ifeq 14
8: .line 71
iload 7 /* x */
bipush 32
iand
ifeq 12
9: .line 72
iinc 3 /* length */ -2
10: .line 73
iload 7 /* x */
bipush 15
iand
bipush 12
ishl
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.reference:[B
iload 6 /* readOffset */
iinc 6 /* readOffset */ 1
baload
bipush 63
iand
bipush 6
ishl
ior
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.reference:[B
iload 6 /* readOffset */
iinc 6 /* readOffset */ 1
baload
bipush 63
iand
ior
istore 7 /* x */
11: .line 74
goto 14
12: .line 75
StackMap locals: int
StackMap stack:
iinc 3 /* length */ -1
13: .line 76
iload 7 /* x */
bipush 31
iand
bipush 6
ishl
aload 0 /* this */
getfield org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct.reference:[B
iload 6 /* readOffset */
iinc 6 /* readOffset */ 1
baload
bipush 63
iand
ior
istore 7 /* x */
14: .line 79
StackMap locals:
StackMap stack:
aload 4 /* outputBuf */
iload 5 /* outputPos */
iinc 5 /* outputPos */ 1
iload 7 /* x */
i2c
castore
end local 7 // int x
15: .line 67
StackMap locals:
StackMap stack:
iload 3 /* length */
ifne 5
16: .line 82
iload 5 /* outputPos */
iload 2 /* bytesAvailable */
if_icmpeq 18
17: .line 83
aload 4 /* outputBuf */
iconst_0
iload 5 /* outputPos */
newarray 5
dup
astore 4 /* outputBuf */
iconst_0
iload 5 /* outputPos */
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
18: .line 85
StackMap locals:
StackMap stack:
aload 4 /* outputBuf */
areturn
end local 6 // int readOffset
end local 5 // int outputPos
end local 4 // char[] outputBuf
end local 3 // int length
end local 2 // int bytesAvailable
end local 1 // int relativeOffset
end local 0 // org.eclipse.jdt.internal.compiler.classfmt.ClassFileStruct this
LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/eclipse/jdt/internal/compiler/classfmt/ClassFileStruct;
0 19 1 relativeOffset I
0 19 2 bytesAvailable I
1 19 3 length I
2 19 4 outputBuf [C
3 19 5 outputPos I
4 19 6 readOffset I
6 15 7 x I
MethodParameters:
Name Flags
relativeOffset
bytesAvailable
}
SourceFile: "ClassFileStruct.java"