final class jdk.jfr.internal.consumer.StringParser$CharArrayParser extends jdk.jfr.internal.consumer.Parser
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: jdk.jfr.internal.consumer.StringParser$CharArrayParser
super_class: jdk.jfr.internal.consumer.Parser
{
private char[] buffer;
descriptor: [C
flags: (0x0002) ACC_PRIVATE
private int lastSize;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private java.lang.String lastString;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial jdk.jfr.internal.consumer.Parser.<init>:()V
1: aload 0
bipush 16
newarray 5
putfield jdk.jfr.internal.consumer.StringParser$CharArrayParser.buffer:[C
2: aload 0
iconst_m1
putfield jdk.jfr.internal.consumer.StringParser$CharArrayParser.lastSize:I
3: aload 0
aconst_null
putfield jdk.jfr.internal.consumer.StringParser$CharArrayParser.lastString:Ljava/lang/String;
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/jfr/internal/consumer/StringParser$CharArrayParser;
public java.lang.Object parse(jdk.jfr.internal.consumer.RecordingInput);
descriptor: (Ljdk/jfr/internal/consumer/RecordingInput;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=6, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual jdk.jfr.internal.consumer.RecordingInput.readInt:()I
istore 2
start local 2 1: aload 0
iload 2
invokevirtual jdk.jfr.internal.consumer.StringParser$CharArrayParser.ensureSize:(I)V
2: aload 0
getfield jdk.jfr.internal.consumer.StringParser$CharArrayParser.lastSize:I
iload 2
if_icmpne 14
3: iconst_1
istore 3
start local 3 4: iconst_0
istore 4
start local 4 5: goto 11
6: StackMap locals: int int int
StackMap stack:
aload 1
invokevirtual jdk.jfr.internal.consumer.RecordingInput.readChar:()C
istore 5
start local 5 7: aload 0
getfield jdk.jfr.internal.consumer.StringParser$CharArrayParser.buffer:[C
iload 4
caload
iload 5
if_icmpeq 10
8: iconst_0
istore 3
9: aload 0
getfield jdk.jfr.internal.consumer.StringParser$CharArrayParser.buffer:[C
iload 4
iload 5
castore
end local 5 10: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
11: iload 4
iload 2
if_icmplt 6
end local 4 12: iload 3
ifeq 19
13: aload 0
getfield jdk.jfr.internal.consumer.StringParser$CharArrayParser.lastString:Ljava/lang/String;
areturn
end local 3 14: StackMap locals:
StackMap stack:
iconst_0
istore 3
start local 3 15: goto 18
16: StackMap locals: int
StackMap stack:
aload 0
getfield jdk.jfr.internal.consumer.StringParser$CharArrayParser.buffer:[C
iload 3
aload 1
invokevirtual jdk.jfr.internal.consumer.RecordingInput.readChar:()C
castore
17: iinc 3 1
StackMap locals:
StackMap stack:
18: iload 3
iload 2
if_icmplt 16
end local 3 19: StackMap locals:
StackMap stack:
aload 0
new java.lang.String
dup
aload 0
getfield jdk.jfr.internal.consumer.StringParser$CharArrayParser.buffer:[C
iconst_0
iload 2
invokespecial java.lang.String.<init>:([CII)V
putfield jdk.jfr.internal.consumer.StringParser$CharArrayParser.lastString:Ljava/lang/String;
20: aload 0
iload 2
putfield jdk.jfr.internal.consumer.StringParser$CharArrayParser.lastSize:I
21: aload 0
getfield jdk.jfr.internal.consumer.StringParser$CharArrayParser.lastString:Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Ljdk/jfr/internal/consumer/StringParser$CharArrayParser;
0 22 1 input Ljdk/jfr/internal/consumer/RecordingInput;
1 22 2 size I
4 14 3 equalsLastString Z
5 12 4 i I
7 10 5 c C
15 19 3 i I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
input
public void skip(jdk.jfr.internal.consumer.RecordingInput);
descriptor: (Ljdk/jfr/internal/consumer/RecordingInput;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual jdk.jfr.internal.consumer.RecordingInput.readInt:()I
istore 2
start local 2 1: iconst_0
istore 3
start local 3 2: goto 5
3: StackMap locals: int int
StackMap stack:
aload 1
invokevirtual jdk.jfr.internal.consumer.RecordingInput.readChar:()C
pop
4: iinc 3 1
StackMap locals:
StackMap stack:
5: iload 3
iload 2
if_icmplt 3
end local 3 6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljdk/jfr/internal/consumer/StringParser$CharArrayParser;
0 7 1 input Ljdk/jfr/internal/consumer/RecordingInput;
1 7 2 size I
2 6 3 i I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
input
private void ensureSize(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.jfr.internal.consumer.StringParser$CharArrayParser.buffer:[C
arraylength
iload 1
if_icmpge 2
1: aload 0
iload 1
newarray 5
putfield jdk.jfr.internal.consumer.StringParser$CharArrayParser.buffer:[C
2: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/jfr/internal/consumer/StringParser$CharArrayParser;
0 3 1 size I
MethodParameters:
Name Flags
size
}
SourceFile: "StringParser.java"
NestHost: jdk.jfr.internal.consumer.StringParser
InnerClasses:
private final CharArrayParser = jdk.jfr.internal.consumer.StringParser$CharArrayParser of jdk.jfr.internal.consumer.StringParser