public class ch.qos.logback.core.encoder.ByteArrayUtil
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: ch.qos.logback.core.encoder.ByteArrayUtil
super_class: java.lang.Object
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // ch.qos.logback.core.encoder.ByteArrayUtil this
0: .line 18
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // ch.qos.logback.core.encoder.ByteArrayUtil this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lch/qos/logback/core/encoder/ByteArrayUtil;
static void writeInt(byte[], int, int);
descriptor: ([BII)V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=5, args_size=3
start local 0 // byte[] byteArray
start local 1 // int offset
start local 2 // int i
0: .line 22
iconst_0
istore 3 /* j */
start local 3 // int j
1: goto 5
2: .line 23
StackMap locals: int
StackMap stack:
bipush 24
iload 3 /* j */
bipush 8
imul
isub
istore 4 /* shift */
start local 4 // int shift
3: .line 24
aload 0 /* byteArray */
iload 1 /* offset */
iload 3 /* j */
iadd
iload 2 /* i */
iload 4 /* shift */
iushr
i2b
bastore
end local 4 // int shift
4: .line 22
iinc 3 /* j */ 1
StackMap locals:
StackMap stack:
5: iload 3 /* j */
iconst_4
if_icmplt 2
end local 3 // int j
6: .line 26
return
end local 2 // int i
end local 1 // int offset
end local 0 // byte[] byteArray
LocalVariableTable:
Start End Slot Name Signature
0 7 0 byteArray [B
0 7 1 offset I
0 7 2 i I
1 6 3 j I
3 4 4 shift I
MethodParameters:
Name Flags
byteArray
offset
i
static void writeInt(java.io.ByteArrayOutputStream, int);
descriptor: (Ljava/io/ByteArrayOutputStream;I)V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=4, args_size=2
start local 0 // java.io.ByteArrayOutputStream baos
start local 1 // int i
0: .line 29
iconst_0
istore 2 /* j */
start local 2 // int j
1: goto 5
2: .line 30
StackMap locals: int
StackMap stack:
bipush 24
iload 2 /* j */
bipush 8
imul
isub
istore 3 /* shift */
start local 3 // int shift
3: .line 31
aload 0 /* baos */
iload 1 /* i */
iload 3 /* shift */
iushr
i2b
invokevirtual java.io.ByteArrayOutputStream.write:(I)V
end local 3 // int shift
4: .line 29
iinc 2 /* j */ 1
StackMap locals:
StackMap stack:
5: iload 2 /* j */
iconst_4
if_icmplt 2
end local 2 // int j
6: .line 33
return
end local 1 // int i
end local 0 // java.io.ByteArrayOutputStream baos
LocalVariableTable:
Start End Slot Name Signature
0 7 0 baos Ljava/io/ByteArrayOutputStream;
0 7 1 i I
1 6 2 j I
3 4 3 shift I
MethodParameters:
Name Flags
baos
i
static int readInt(byte[], int);
descriptor: ([BI)I
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=5, args_size=2
start local 0 // byte[] byteArray
start local 1 // int offset
0: .line 37
iconst_0
istore 2 /* i */
start local 2 // int i
1: .line 38
iconst_0
istore 3 /* j */
start local 3 // int j
2: goto 6
3: .line 39
StackMap locals: int int
StackMap stack:
bipush 24
iload 3 /* j */
bipush 8
imul
isub
istore 4 /* shift */
start local 4 // int shift
4: .line 40
iload 2 /* i */
aload 0 /* byteArray */
iload 1 /* offset */
iload 3 /* j */
iadd
baload
sipush 255
iand
iload 4 /* shift */
ishl
iadd
istore 2 /* i */
end local 4 // int shift
5: .line 38
iinc 3 /* j */ 1
StackMap locals:
StackMap stack:
6: iload 3 /* j */
iconst_4
if_icmplt 3
end local 3 // int j
7: .line 42
iload 2 /* i */
ireturn
end local 2 // int i
end local 1 // int offset
end local 0 // byte[] byteArray
LocalVariableTable:
Start End Slot Name Signature
0 8 0 byteArray [B
0 8 1 offset I
1 8 2 i I
2 7 3 j I
4 5 4 shift I
MethodParameters:
Name Flags
byteArray
offset
public static java.lang.String toHexString(byte[]);
descriptor: ([B)Ljava/lang/String;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=7, args_size=1
start local 0 // byte[] ba
0: .line 46
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 1 /* sbuf */
start local 1 // java.lang.StringBuilder sbuf
1: .line 47
aload 0 /* ba */
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 8
StackMap locals: byte[] java.lang.StringBuilder top int int byte[]
StackMap stack:
2: aload 5
iload 3
baload
istore 2 /* b */
start local 2 // byte b
3: .line 48
iload 2 /* b */
sipush 255
iand
invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
astore 6 /* s */
start local 6 // java.lang.String s
4: .line 49
aload 6 /* s */
invokevirtual java.lang.String.length:()I
iconst_1
if_icmpne 6
5: .line 50
aload 1 /* sbuf */
bipush 48
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
6: .line 52
StackMap locals: byte[] java.lang.StringBuilder int int int byte[] java.lang.String
StackMap stack:
aload 1 /* sbuf */
aload 6 /* s */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 6 // java.lang.String s
end local 2 // byte b
7: .line 47
iinc 3 1
StackMap locals: byte[] java.lang.StringBuilder top int int byte[]
StackMap stack:
8: iload 3
iload 4
if_icmplt 2
9: .line 54
aload 1 /* sbuf */
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 // java.lang.StringBuilder sbuf
end local 0 // byte[] ba
LocalVariableTable:
Start End Slot Name Signature
0 10 0 ba [B
1 10 1 sbuf Ljava/lang/StringBuilder;
3 7 2 b B
4 7 6 s Ljava/lang/String;
MethodParameters:
Name Flags
ba
public static byte[] hexStringToByteArray(java.lang.String);
descriptor: (Ljava/lang/String;)[B
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=7, args_size=1
start local 0 // java.lang.String s
0: .line 58
aload 0 /* s */
invokevirtual java.lang.String.length:()I
istore 1 /* len */
start local 1 // int len
1: .line 59
iload 1 /* len */
iconst_2
idiv
newarray 8
astore 2 /* ba */
start local 2 // byte[] ba
2: .line 61
iconst_0
istore 3 /* i */
start local 3 // int i
3: goto 9
4: .line 62
StackMap locals: int byte[] int
StackMap stack:
iload 3 /* i */
iconst_2
imul
istore 4 /* j */
start local 4 // int j
5: .line 63
aload 0 /* s */
iload 4 /* j */
iload 4 /* j */
iconst_2
iadd
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
bipush 16
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;I)I
istore 5 /* t */
start local 5 // int t
6: .line 64
iload 5 /* t */
sipush 255
iand
i2b
istore 6 /* b */
start local 6 // byte b
7: .line 65
aload 2 /* ba */
iload 3 /* i */
iload 6 /* b */
bastore
end local 6 // byte b
end local 5 // int t
end local 4 // int j
8: .line 61
iinc 3 /* i */ 1
StackMap locals:
StackMap stack:
9: iload 3 /* i */
aload 2 /* ba */
arraylength
if_icmplt 4
end local 3 // int i
10: .line 67
aload 2 /* ba */
areturn
end local 2 // byte[] ba
end local 1 // int len
end local 0 // java.lang.String s
LocalVariableTable:
Start End Slot Name Signature
0 11 0 s Ljava/lang/String;
1 11 1 len I
2 11 2 ba [B
3 10 3 i I
5 8 4 j I
6 8 5 t I
7 8 6 b B
MethodParameters:
Name Flags
s
}
SourceFile: "ByteArrayUtil.java"