class jdk.nashorn.internal.parser.Lexer$EditStringLexer extends jdk.nashorn.internal.parser.Lexer
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: jdk.nashorn.internal.parser.Lexer$EditStringLexer
super_class: jdk.nashorn.internal.parser.Lexer
{
final jdk.nashorn.internal.parser.TokenType stringType;
descriptor: Ljdk/nashorn/internal/parser/TokenType;
flags: (0x0010) ACC_FINAL
void <init>(jdk.nashorn.internal.parser.Lexer, jdk.nashorn.internal.parser.TokenType, jdk.nashorn.internal.parser.Lexer$State);
descriptor: (Ljdk/nashorn/internal/parser/Lexer;Ljdk/nashorn/internal/parser/TokenType;Ljdk/nashorn/internal/parser/Lexer$State;)V
flags: (0x0000)
Code:
stack=3, locals=4, args_size=4
start local 0 // jdk.nashorn.internal.parser.Lexer$EditStringLexer this
start local 1 // jdk.nashorn.internal.parser.Lexer lexer
start local 2 // jdk.nashorn.internal.parser.TokenType stringType
start local 3 // jdk.nashorn.internal.parser.Lexer$State stringState
0: .line 1393
aload 0 /* this */
aload 1 /* lexer */
aload 3 /* stringState */
invokespecial jdk.nashorn.internal.parser.Lexer.<init>:(Ljdk/nashorn/internal/parser/Lexer;Ljdk/nashorn/internal/parser/Lexer$State;)V
1: .line 1395
aload 0 /* this */
aload 2 /* stringType */
putfield jdk.nashorn.internal.parser.Lexer$EditStringLexer.stringType:Ljdk/nashorn/internal/parser/TokenType;
2: .line 1396
return
end local 3 // jdk.nashorn.internal.parser.Lexer$State stringState
end local 2 // jdk.nashorn.internal.parser.TokenType stringType
end local 1 // jdk.nashorn.internal.parser.Lexer lexer
end local 0 // jdk.nashorn.internal.parser.Lexer$EditStringLexer this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/nashorn/internal/parser/Lexer$EditStringLexer;
0 3 1 lexer Ljdk/nashorn/internal/parser/Lexer;
0 3 2 stringType Ljdk/nashorn/internal/parser/TokenType;
0 3 3 stringState Ljdk/nashorn/internal/parser/Lexer$State;
MethodParameters:
Name Flags
lexer final
stringType final
stringState final
public void lexify();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=1
start local 0 // jdk.nashorn.internal.parser.Lexer$EditStringLexer this
0: .line 1404
aload 0 /* this */
getfield jdk.nashorn.internal.parser.Lexer$EditStringLexer.position:I
istore 1 /* stringStart */
start local 1 // int stringStart
1: .line 1406
iconst_0
istore 2 /* primed */
start local 2 // boolean primed
2: .line 1410
StackMap locals: int int
StackMap stack:
aload 0 /* this */
invokevirtual jdk.nashorn.internal.parser.Lexer$EditStringLexer.atEOF:()Z
ifeq 4
3: .line 1411
goto 37
4: .line 1415
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield jdk.nashorn.internal.parser.Lexer$EditStringLexer.ch0:C
bipush 92
if_icmpne 7
aload 0 /* this */
getfield jdk.nashorn.internal.parser.Lexer$EditStringLexer.stringType:Ljdk/nashorn/internal/parser/TokenType;
getstatic jdk.nashorn.internal.parser.TokenType.ESCSTRING:Ljdk/nashorn/internal/parser/TokenType;
if_acmpne 7
5: .line 1416
aload 0 /* this */
iconst_2
invokevirtual jdk.nashorn.internal.parser.Lexer$EditStringLexer.skip:(I)V
6: .line 1418
goto 2
7: .line 1422
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield jdk.nashorn.internal.parser.Lexer$EditStringLexer.ch0:C
bipush 36
if_icmpne 35
aload 0 /* this */
getfield jdk.nashorn.internal.parser.Lexer$EditStringLexer.ch1:C
bipush 123
if_icmpne 35
8: .line 1423
iload 2 /* primed */
ifeq 9
iload 1 /* stringStart */
aload 0 /* this */
getfield jdk.nashorn.internal.parser.Lexer$EditStringLexer.position:I
if_icmpeq 13
9: .line 1424
StackMap locals:
StackMap stack:
iload 2 /* primed */
ifeq 11
10: .line 1425
aload 0 /* this */
getstatic jdk.nashorn.internal.parser.TokenType.ADD:Ljdk/nashorn/internal/parser/TokenType;
iload 1 /* stringStart */
iload 1 /* stringStart */
iconst_1
iadd
invokevirtual jdk.nashorn.internal.parser.Lexer$EditStringLexer.add:(Ljdk/nashorn/internal/parser/TokenType;II)V
11: .line 1428
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 0 /* this */
getfield jdk.nashorn.internal.parser.Lexer$EditStringLexer.stringType:Ljdk/nashorn/internal/parser/TokenType;
iload 1 /* stringStart */
aload 0 /* this */
getfield jdk.nashorn.internal.parser.Lexer$EditStringLexer.position:I
invokevirtual jdk.nashorn.internal.parser.Lexer$EditStringLexer.add:(Ljdk/nashorn/internal/parser/TokenType;II)V
12: .line 1429
iconst_1
istore 2 /* primed */
13: .line 1433
StackMap locals:
StackMap stack:
aload 0 /* this */
iconst_2
invokevirtual jdk.nashorn.internal.parser.Lexer$EditStringLexer.skip:(I)V
14: .line 1436
aload 0 /* this */
invokevirtual jdk.nashorn.internal.parser.Lexer$EditStringLexer.saveState:()Ljdk/nashorn/internal/parser/Lexer$State;
astore 3 /* expressionState */
start local 3 // jdk.nashorn.internal.parser.Lexer$State expressionState
15: .line 1439
iconst_1
istore 4 /* braceCount */
start local 4 // int braceCount
16: .line 1442
goto 23
17: .line 1444
StackMap locals: jdk.nashorn.internal.parser.Lexer$State int
StackMap stack:
aload 0 /* this */
getfield jdk.nashorn.internal.parser.Lexer$EditStringLexer.ch0:C
bipush 125
if_icmpne 20
18: .line 1446
iinc 4 /* braceCount */ -1
iload 4 /* braceCount */
ifne 22
19: .line 1447
goto 24
20: .line 1449
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield jdk.nashorn.internal.parser.Lexer$EditStringLexer.ch0:C
bipush 123
if_icmpne 22
21: .line 1451
iinc 4 /* braceCount */ 1
22: .line 1455
StackMap locals:
StackMap stack:
aload 0 /* this */
iconst_1
invokevirtual jdk.nashorn.internal.parser.Lexer$EditStringLexer.skip:(I)V
23: .line 1442
StackMap locals:
StackMap stack:
aload 0 /* this */
invokevirtual jdk.nashorn.internal.parser.Lexer$EditStringLexer.atEOF:()Z
ifeq 17
24: .line 1459
StackMap locals:
StackMap stack:
iload 4 /* braceCount */
ifeq 26
25: .line 1460
aload 0 /* this */
ldc "edit.string.missing.brace"
iconst_0
anewarray java.lang.String
invokestatic jdk.nashorn.internal.parser.Lexer.message:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
getstatic jdk.nashorn.internal.parser.TokenType.LBRACE:Ljdk/nashorn/internal/parser/TokenType;
aload 3 /* expressionState */
getfield jdk.nashorn.internal.parser.Lexer$State.position:I
iconst_1
isub
iconst_1
invokevirtual jdk.nashorn.internal.parser.Lexer$EditStringLexer.error:(Ljava/lang/String;Ljdk/nashorn/internal/parser/TokenType;II)V
26: .line 1464
StackMap locals:
StackMap stack:
aload 3 /* expressionState */
aload 0 /* this */
getfield jdk.nashorn.internal.parser.Lexer$EditStringLexer.position:I
invokevirtual jdk.nashorn.internal.parser.Lexer$State.setLimit:(I)V
27: .line 1466
aload 0 /* this */
iconst_1
invokevirtual jdk.nashorn.internal.parser.Lexer$EditStringLexer.skip:(I)V
28: .line 1469
aload 0 /* this */
getfield jdk.nashorn.internal.parser.Lexer$EditStringLexer.position:I
istore 1 /* stringStart */
29: .line 1472
aload 0 /* this */
getstatic jdk.nashorn.internal.parser.TokenType.ADD:Ljdk/nashorn/internal/parser/TokenType;
aload 3 /* expressionState */
getfield jdk.nashorn.internal.parser.Lexer$State.position:I
aload 3 /* expressionState */
getfield jdk.nashorn.internal.parser.Lexer$State.position:I
iconst_1
iadd
invokevirtual jdk.nashorn.internal.parser.Lexer$EditStringLexer.add:(Ljdk/nashorn/internal/parser/TokenType;II)V
30: .line 1473
aload 0 /* this */
getstatic jdk.nashorn.internal.parser.TokenType.LPAREN:Ljdk/nashorn/internal/parser/TokenType;
aload 3 /* expressionState */
getfield jdk.nashorn.internal.parser.Lexer$State.position:I
aload 3 /* expressionState */
getfield jdk.nashorn.internal.parser.Lexer$State.position:I
iconst_1
iadd
invokevirtual jdk.nashorn.internal.parser.Lexer$EditStringLexer.add:(Ljdk/nashorn/internal/parser/TokenType;II)V
31: .line 1476
new jdk.nashorn.internal.parser.Lexer
dup
aload 0 /* this */
aload 3 /* expressionState */
invokespecial jdk.nashorn.internal.parser.Lexer.<init>:(Ljdk/nashorn/internal/parser/Lexer;Ljdk/nashorn/internal/parser/Lexer$State;)V
astore 5 /* lexer */
start local 5 // jdk.nashorn.internal.parser.Lexer lexer
32: .line 1477
aload 5 /* lexer */
invokevirtual jdk.nashorn.internal.parser.Lexer.lexify:()V
33: .line 1480
aload 0 /* this */
getstatic jdk.nashorn.internal.parser.TokenType.RPAREN:Ljdk/nashorn/internal/parser/TokenType;
aload 0 /* this */
getfield jdk.nashorn.internal.parser.Lexer$EditStringLexer.position:I
iconst_1
isub
aload 0 /* this */
getfield jdk.nashorn.internal.parser.Lexer$EditStringLexer.position:I
invokevirtual jdk.nashorn.internal.parser.Lexer$EditStringLexer.add:(Ljdk/nashorn/internal/parser/TokenType;II)V
34: .line 1482
goto 2
end local 5 // jdk.nashorn.internal.parser.Lexer lexer
end local 4 // int braceCount
end local 3 // jdk.nashorn.internal.parser.Lexer$State expressionState
35: .line 1486
StackMap locals:
StackMap stack:
aload 0 /* this */
iconst_1
invokevirtual jdk.nashorn.internal.parser.Lexer$EditStringLexer.skip:(I)V
36: .line 1408
goto 2
37: .line 1490
StackMap locals:
StackMap stack:
iload 1 /* stringStart */
aload 0 /* this */
getfield jdk.nashorn.internal.parser.Lexer$EditStringLexer.limit:I
if_icmpeq 41
38: .line 1492
iload 2 /* primed */
ifeq 40
39: .line 1493
aload 0 /* this */
getstatic jdk.nashorn.internal.parser.TokenType.ADD:Ljdk/nashorn/internal/parser/TokenType;
iload 1 /* stringStart */
iconst_1
invokevirtual jdk.nashorn.internal.parser.Lexer$EditStringLexer.add:(Ljdk/nashorn/internal/parser/TokenType;II)V
40: .line 1496
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 0 /* this */
getfield jdk.nashorn.internal.parser.Lexer$EditStringLexer.stringType:Ljdk/nashorn/internal/parser/TokenType;
iload 1 /* stringStart */
aload 0 /* this */
getfield jdk.nashorn.internal.parser.Lexer$EditStringLexer.limit:I
invokevirtual jdk.nashorn.internal.parser.Lexer$EditStringLexer.add:(Ljdk/nashorn/internal/parser/TokenType;II)V
41: .line 1498
StackMap locals:
StackMap stack:
return
end local 2 // boolean primed
end local 1 // int stringStart
end local 0 // jdk.nashorn.internal.parser.Lexer$EditStringLexer this
LocalVariableTable:
Start End Slot Name Signature
0 42 0 this Ljdk/nashorn/internal/parser/Lexer$EditStringLexer;
1 42 1 stringStart I
2 42 2 primed Z
15 35 3 expressionState Ljdk/nashorn/internal/parser/Lexer$State;
16 35 4 braceCount I
32 35 5 lexer Ljdk/nashorn/internal/parser/Lexer;
}
SourceFile: "Lexer.java"
NestHost: jdk.nashorn.internal.parser.Lexer
InnerClasses:
private EditStringLexer = jdk.nashorn.internal.parser.Lexer$EditStringLexer of jdk.nashorn.internal.parser.Lexer
State = jdk.nashorn.internal.parser.Lexer$State of jdk.nashorn.internal.parser.Lexer