final class jdk.nashorn.internal.runtime.regexp.RegExpScanner extends jdk.nashorn.internal.parser.Scanner
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: jdk.nashorn.internal.runtime.regexp.RegExpScanner
super_class: jdk.nashorn.internal.parser.Scanner
{
private final java.lang.StringBuilder sb;
descriptor: Ljava/lang/StringBuilder;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.Map<java.lang.Character, java.lang.Integer> expected;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/Character;Ljava/lang/Integer;>;
private final java.util.List<jdk.nashorn.internal.runtime.regexp.RegExpScanner$Capture> caps;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Ljdk/nashorn/internal/runtime/regexp/RegExpScanner$Capture;>;
private final java.util.LinkedList<java.lang.Integer> forwardReferences;
descriptor: Ljava/util/LinkedList;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/LinkedList<Ljava/lang/Integer;>;
private int negLookaheadLevel;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int negLookaheadGroup;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private boolean inCharClass;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean inNegativeClass;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private static final java.lang.String NON_IDENT_ESCAPES;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "$^*+(){}[]|\\.?-"
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 Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
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 jdk.nashorn.internal.runtime.regexp.RegExpScanner.$assertionsDisabled:Z
3: return
LocalVariableTable:
Start End Slot Name Signature
private void <init>(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial jdk.nashorn.internal.parser.Scanner.<init>:(Ljava/lang/String;)V
1: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.expected:Ljava/util/Map;
2: aload 0
new java.util.LinkedList
dup
invokespecial java.util.LinkedList.<init>:()V
putfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.caps:Ljava/util/List;
3: aload 0
new java.util.LinkedList
dup
invokespecial java.util.LinkedList.<init>:()V
putfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.forwardReferences:Ljava/util/LinkedList;
4: aload 0
iconst_0
putfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.inCharClass:Z
5: aload 0
iconst_0
putfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.inNegativeClass:Z
6: aload 0
new java.lang.StringBuilder
dup
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.limit:I
invokespecial java.lang.StringBuilder.<init>:(I)V
putfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
7: aload 0
iconst_0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.reset:(I)V
8: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.expected:Ljava/util/Map;
bipush 93
invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
iconst_0
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
9: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.expected:Ljava/util/Map;
bipush 125
invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
iconst_0
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
10: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
0 11 1 string Ljava/lang/String;
MethodParameters:
Name Flags
string final
private void processForwardReferences();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.forwardReferences:Ljava/util/LinkedList;
invokevirtual java.util.LinkedList.descendingIterator:()Ljava/util/Iterator;
astore 1
start local 1 1: goto 8
2: StackMap locals: java.util.Iterator
StackMap stack:
aload 1
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
istore 2
start local 2 3: aload 1
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
istore 3
start local 3 4: iload 3
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.caps:Ljava/util/List;
invokeinterface java.util.List.size:()I
if_icmple 8
5: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 4
start local 4 6: iload 3
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
aload 4
invokestatic jdk.nashorn.internal.runtime.regexp.RegExpScanner.octalOrLiteral:(Ljava/lang/String;Ljava/lang/StringBuilder;)V
7: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
iload 2
aload 4
invokevirtual java.lang.StringBuilder.insert:(ILjava/lang/CharSequence;)Ljava/lang/StringBuilder;
pop
end local 4 end local 3 end local 2 8: StackMap locals:
StackMap stack:
aload 1
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
9: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.forwardReferences:Ljava/util/LinkedList;
invokevirtual java.util.LinkedList.clear:()V
10: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
1 11 1 iterator Ljava/util/Iterator<Ljava/lang/Integer;>;
3 8 2 pos I
4 8 3 num I
6 8 4 buffer Ljava/lang/StringBuilder;
public static jdk.nashorn.internal.runtime.regexp.RegExpScanner scan(java.lang.String);
descriptor: (Ljava/lang/String;)Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=3, args_size=1
start local 0 0: new jdk.nashorn.internal.runtime.regexp.RegExpScanner
dup
aload 0
invokespecial jdk.nashorn.internal.runtime.regexp.RegExpScanner.<init>:(Ljava/lang/String;)V
astore 1
start local 1 1: aload 1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.disjunction:()V
2: goto 5
StackMap locals: java.lang.String jdk.nashorn.internal.runtime.regexp.RegExpScanner
StackMap stack: java.lang.Exception
3: astore 2
start local 2 4: new java.util.regex.PatternSyntaxException
dup
aload 2
invokevirtual java.lang.Exception.getMessage:()Ljava/lang/String;
aload 0
aload 1
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.position:I
invokespecial java.util.regex.PatternSyntaxException.<init>:(Ljava/lang/String;Ljava/lang/String;I)V
athrow
end local 2 5: StackMap locals:
StackMap stack:
aload 1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.processForwardReferences:()V
6: aload 1
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.position:I
aload 0
invokevirtual java.lang.String.length:()I
if_icmpeq 9
7: aload 1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.getStringBuilder:()Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 2
start local 2 8: new java.util.regex.PatternSyntaxException
dup
aload 0
aload 2
aload 2
invokevirtual java.lang.String.length:()I
iconst_1
iadd
invokespecial java.util.regex.PatternSyntaxException.<init>:(Ljava/lang/String;Ljava/lang/String;I)V
athrow
end local 2 9: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 string Ljava/lang/String;
1 10 1 scanner Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
4 5 2 e Ljava/lang/Exception;
8 9 2 p Ljava/lang/String;
Exception table:
from to target type
1 2 3 Class java.lang.Exception
MethodParameters:
Name Flags
string final
final java.lang.StringBuilder getStringBuilder();
descriptor: ()Ljava/lang/StringBuilder;
flags: (0x0010) ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
java.lang.String getJavaPattern();
descriptor: ()Ljava/lang/String;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
jdk.nashorn.internal.runtime.BitVector getGroupsInNegativeLookahead();
descriptor: ()Ljdk/nashorn/internal/runtime/BitVector;
flags: (0x0000)
Code:
stack=4, locals=4, args_size=1
start local 0 0: aconst_null
astore 1
start local 1 1: iconst_0
istore 2
start local 2 2: goto 9
3: StackMap locals: jdk.nashorn.internal.runtime.BitVector int
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.caps:Ljava/util/List;
iload 2
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast jdk.nashorn.internal.runtime.regexp.RegExpScanner$Capture
astore 3
start local 3 4: aload 3
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner$Capture.negLookaheadLevel:I
ifle 8
5: aload 1
ifnonnull 7
6: new jdk.nashorn.internal.runtime.BitVector
dup
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.caps:Ljava/util/List;
invokeinterface java.util.List.size:()I
iconst_1
iadd
i2l
invokespecial jdk.nashorn.internal.runtime.BitVector.<init>:(J)V
astore 1
7: StackMap locals: jdk.nashorn.internal.runtime.regexp.RegExpScanner$Capture
StackMap stack:
aload 1
iload 2
iconst_1
iadd
i2l
invokevirtual jdk.nashorn.internal.runtime.BitVector.set:(J)V
end local 3 8: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
9: iload 2
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.caps:Ljava/util/List;
invokeinterface java.util.List.size:()I
if_icmplt 3
end local 2 10: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
1 11 1 vec Ljdk/nashorn/internal/runtime/BitVector;
2 10 2 i I
4 8 3 cap Ljdk/nashorn/internal/runtime/regexp/RegExpScanner$Capture;
private boolean commit(int);
descriptor: (I)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: iload 1
tableswitch { // 1 - 3
1: 1
2: 4
3: 8
default: 13
}
1: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
2: aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.skip:(I)V
3: goto 14
4: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
5: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch1:C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
6: aload 0
iconst_2
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.skip:(I)V
7: goto 14
8: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
9: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch1:C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
10: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch2:C
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
11: aload 0
iconst_3
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.skip:(I)V
12: goto 14
13: StackMap locals:
StackMap stack:
getstatic jdk.nashorn.internal.runtime.regexp.RegExpScanner.$assertionsDisabled:Z
ifne 14
new java.lang.AssertionError
dup
ldc "Should not reach here"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
14: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
0 15 1 n I
MethodParameters:
Name Flags
n final
private void restart(int, int);
descriptor: (II)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.reset:(I)V
1: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
iload 2
invokevirtual java.lang.StringBuilder.setLength:(I)V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
0 3 1 startIn I
0 3 2 startOut I
MethodParameters:
Name Flags
startIn final
startOut final
private void push(char);
descriptor: (C)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.expected:Ljava/util/Map;
iload 1
invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.expected:Ljava/util/Map;
iload 1
invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
iconst_1
iadd
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
0 2 1 ch C
MethodParameters:
Name Flags
ch final
private void pop(char);
descriptor: (C)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.expected:Ljava/util/Map;
iload 1
invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
iconst_0
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.expected:Ljava/util/Map;
iload 1
invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
iconst_1
isub
invokestatic java.lang.Math.min:(II)I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
0 2 1 ch C
MethodParameters:
Name Flags
ch final
private void disjunction();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.alternative:()V
1: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 124
if_icmpne 4
2: aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
pop
3: goto 0
4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
private void alternative();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.term:()Z
ifne 0
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
private boolean term();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.position:I
istore 1
start local 1 1: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.length:()I
istore 2
start local 2 2: aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.assertion:()Z
ifeq 4
3: iconst_1
ireturn
4: StackMap locals: int int
StackMap stack:
aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.atom:()Z
ifeq 7
5: aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.quantifier:()Z
pop
6: iconst_1
ireturn
7: StackMap locals:
StackMap stack:
aload 0
iload 1
iload 2
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.restart:(II)V
8: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
1 9 1 startIn I
2 9 2 startOut I
private boolean assertion();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.position:I
istore 1
start local 1 1: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.length:()I
istore 2
start local 2 2: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
lookupswitch { // 4
36: 3
40: 6
92: 4
94: 3
default: 23
}
3: StackMap locals: int int
StackMap stack:
aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
ireturn
4: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch1:C
bipush 98
if_icmpeq 5
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch1:C
bipush 66
if_icmpne 23
5: StackMap locals:
StackMap stack:
aload 0
iconst_2
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
ireturn
6: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch1:C
bipush 63
if_icmpeq 8
7: goto 23
8: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch2:C
bipush 61
if_icmpeq 10
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch2:C
bipush 33
if_icmpeq 10
9: goto 23
10: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch2:C
bipush 33
if_icmpne 11
iconst_1
goto 12
StackMap locals:
StackMap stack:
11: iconst_0
StackMap locals:
StackMap stack: int
12: istore 3
start local 3 13: aload 0
iconst_3
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
pop
14: iload 3
ifeq 18
15: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.negLookaheadLevel:I
ifne 17
16: aload 0
dup
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.negLookaheadGroup:I
iconst_1
iadd
putfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.negLookaheadGroup:I
17: StackMap locals: int
StackMap stack:
aload 0
dup
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.negLookaheadLevel:I
iconst_1
iadd
putfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.negLookaheadLevel:I
18: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.disjunction:()V
19: iload 3
ifeq 21
20: aload 0
dup
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.negLookaheadLevel:I
iconst_1
isub
putfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.negLookaheadLevel:I
21: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 41
if_icmpne 23
22: aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
ireturn
end local 3 23: StackMap locals:
StackMap stack:
aload 0
iload 1
iload 2
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.restart:(II)V
24: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
1 25 1 startIn I
2 25 2 startOut I
13 23 3 isNegativeLookahead Z
private boolean quantifier();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.quantifierPrefix:()Z
ifeq 4
1: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 63
if_icmpne 3
2: aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
pop
3: StackMap locals:
StackMap stack:
iconst_1
ireturn
4: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
private boolean quantifierPrefix();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.position:I
istore 1
start local 1 1: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.length:()I
istore 2
start local 2 2: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
lookupswitch { // 4
42: 3
43: 3
63: 3
123: 4
default: 18
}
3: StackMap locals: int int
StackMap stack:
aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
ireturn
4: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
pop
5: aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.decimalDigits:()Z
ifne 7
6: goto 18
7: StackMap locals:
StackMap stack:
aload 0
bipush 125
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.push:(C)V
8: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 44
if_icmpne 11
9: aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
pop
10: aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.decimalDigits:()Z
pop
11: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 125
if_icmpne 15
12: aload 0
bipush 125
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.pop:(C)V
13: aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
pop
14: goto 17
15: StackMap locals:
StackMap stack:
aload 0
iload 1
iload 2
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.restart:(II)V
16: iconst_0
ireturn
17: StackMap locals:
StackMap stack:
iconst_1
ireturn
18: StackMap locals:
StackMap stack:
aload 0
iload 1
iload 2
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.restart:(II)V
19: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
1 20 1 startIn I
2 20 2 startOut I
private boolean atom();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=3, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.position:I
istore 1
start local 1 1: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.length:()I
istore 2
start local 2 2: aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.patternCharacter:()Z
ifeq 4
3: iconst_1
ireturn
4: StackMap locals: int int
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 46
if_icmpne 6
5: aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
ireturn
6: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 92
if_icmpne 10
7: aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
pop
8: aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.atomEscape:()Z
ifeq 10
9: iconst_1
ireturn
10: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.characterClass:()Z
ifeq 12
11: iconst_1
ireturn
12: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 40
if_icmpne 22
13: aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
pop
14: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 63
if_icmpne 17
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch1:C
bipush 58
if_icmpne 17
15: aload 0
iconst_2
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
pop
16: goto 18
17: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.caps:Ljava/util/List;
new jdk.nashorn.internal.runtime.regexp.RegExpScanner$Capture
dup
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.negLookaheadGroup:I
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.negLookaheadLevel:I
invokespecial jdk.nashorn.internal.runtime.regexp.RegExpScanner$Capture.<init>:(II)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
18: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.disjunction:()V
19: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 41
if_icmpne 22
20: aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
pop
21: iconst_1
ireturn
22: StackMap locals:
StackMap stack:
aload 0
iload 1
iload 2
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.restart:(II)V
23: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
1 24 1 startIn I
2 24 2 startOut I
private boolean patternCharacter();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.atEOF:()Z
ifeq 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
lookupswitch { // 14
36: 3
40: 3
41: 3
42: 3
43: 3
46: 3
63: 3
91: 3
92: 3
93: 4
94: 3
123: 7
124: 3
125: 4
default: 11
}
3: StackMap locals:
StackMap stack:
iconst_0
ireturn
4: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.expected:Ljava/util/Map;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
invokestatic java.lang.Character.valueOf:(C)Ljava/lang/Character;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
istore 1
start local 1 5: iload 1
ifeq 7
6: iconst_0
ireturn
end local 1 7: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.quantifierPrefix:()Z
ifne 10
8: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
bipush 92
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
9: aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
ireturn
10: StackMap locals:
StackMap stack:
iconst_0
ireturn
11: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
5 7 1 n I
private boolean atomEscape();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.decimalEscape:()Z
ifne 1
aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.characterClassEscape:()Z
ifne 1
aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.characterEscape:()Z
ifne 1
aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.identityEscape:()Z
ifne 1
iconst_0
ireturn
StackMap locals:
StackMap stack:
1: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
private boolean characterEscape();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.position:I
istore 1
start local 1 1: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.length:()I
istore 2
start local 2 2: aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.controlEscape:()Z
ifeq 4
3: iconst_1
ireturn
4: StackMap locals: int int
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 99
if_icmpne 9
5: aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
pop
6: aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.controlLetter:()Z
ifeq 8
7: iconst_1
ireturn
8: StackMap locals:
StackMap stack:
aload 0
iload 1
iload 2
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.restart:(II)V
9: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.hexEscapeSequence:()Z
ifne 10
aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.unicodeEscapeSequence:()Z
ifeq 11
10: StackMap locals:
StackMap stack:
iconst_1
ireturn
11: StackMap locals:
StackMap stack:
aload 0
iload 1
iload 2
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.restart:(II)V
12: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
1 13 1 startIn I
2 13 2 startOut I
private boolean scanEscapeSequence(char, int);
descriptor: (CI)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.position:I
istore 3
start local 3 1: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.length:()I
istore 4
start local 4 2: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
iload 1
if_icmpeq 4
3: iconst_0
ireturn
4: StackMap locals: int int
StackMap stack:
aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
pop
5: iconst_0
istore 5
start local 5 6: goto 15
7: StackMap locals: int
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
invokestatic java.lang.Character.toLowerCase:(C)C
istore 6
start local 6 8: iload 6
bipush 97
if_icmplt 9
iload 6
bipush 102
if_icmple 10
StackMap locals: int
StackMap stack:
9: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
invokestatic jdk.nashorn.internal.runtime.regexp.RegExpScanner.isDecimalDigit:(C)Z
ifeq 12
10: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
pop
11: goto 14
12: StackMap locals:
StackMap stack:
aload 0
iload 3
iload 4
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.restart:(II)V
13: iconst_0
ireturn
end local 6 14: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
15: iload 5
iload 2
if_icmplt 7
end local 5 16: iconst_1
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
0 17 1 leader C
0 17 2 length I
1 17 3 startIn I
2 17 4 startOut I
6 16 5 i I
8 14 6 ch0l C
MethodParameters:
Name Flags
leader final
length final
private boolean hexEscapeSequence();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
bipush 120
iconst_2
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.scanEscapeSequence:(CI)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
private boolean unicodeEscapeSequence();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
bipush 117
iconst_4
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.scanEscapeSequence:(CI)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
private boolean controlEscape();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
lookupswitch { // 5
102: 1
110: 1
114: 1
116: 1
118: 1
default: 2
}
1: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
private boolean controlLetter();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 65
if_icmplt 1
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 90
if_icmple 3
StackMap locals:
StackMap stack:
1: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 97
if_icmplt 2
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 122
if_icmple 3
2: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.inCharClass:Z
ifeq 7
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
invokestatic jdk.nashorn.internal.runtime.regexp.RegExpScanner.isDecimalDigit:(C)Z
ifne 3
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 95
if_icmpne 7
3: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.length:()I
iconst_1
isub
invokevirtual java.lang.StringBuilder.setLength:(I)V
4: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 32
irem
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokestatic jdk.nashorn.internal.runtime.regexp.RegExpScanner.unicode:(ILjava/lang/StringBuilder;)V
5: aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.skip:(I)V
6: iconst_1
ireturn
7: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
private boolean identityEscape();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.atEOF:()Z
ifeq 2
1: new java.lang.RuntimeException
dup
ldc "\\ at end of pattern"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 99
if_icmpne 5
3: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
bipush 92
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
4: goto 7
StackMap locals:
StackMap stack:
5: ldc "$^*+(){}[]|\\.?-"
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
invokevirtual java.lang.String.indexOf:(I)I
iconst_m1
if_icmpne 7
6: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.length:()I
iconst_1
isub
invokevirtual java.lang.StringBuilder.setLength:(I)V
7: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
private boolean decimalEscape();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.position:I
istore 1
start local 1 1: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.length:()I
istore 2
start local 2 2: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 48
if_icmpne 6
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch1:C
invokestatic jdk.nashorn.internal.runtime.regexp.RegExpScanner.isOctalDigit:(C)Z
ifne 6
3: aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.skip:(I)V
4: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
ldc "\u0000"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
5: iconst_1
ireturn
6: StackMap locals: int int
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
invokestatic jdk.nashorn.internal.runtime.regexp.RegExpScanner.isDecimalDigit:(C)Z
ifeq 38
7: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 48
if_icmpne 18
8: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.inCharClass:Z
ifeq 16
9: iconst_0
istore 3
start local 3 10: goto 13
11: StackMap locals: int
StackMap stack:
iload 3
bipush 8
imul
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
iadd
bipush 48
isub
istore 3
12: aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.skip:(I)V
13: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
invokestatic jdk.nashorn.internal.runtime.regexp.RegExpScanner.isOctalDigit:(C)Z
ifne 11
14: iload 3
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokestatic jdk.nashorn.internal.runtime.regexp.RegExpScanner.unicode:(ILjava/lang/StringBuilder;)V
end local 3 15: goto 37
16: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.decimalDigits:()Z
pop
17: goto 37
18: StackMap locals:
StackMap stack:
iconst_0
istore 3
start local 3 19: goto 22
20: StackMap locals: int
StackMap stack:
iload 3
bipush 10
imul
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
iadd
bipush 48
isub
istore 3
21: aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.skip:(I)V
22: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
invokestatic jdk.nashorn.internal.runtime.regexp.RegExpScanner.isDecimalDigit:(C)Z
ifne 20
23: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.inCharClass:Z
ifeq 27
24: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.length:()I
iconst_1
isub
invokevirtual java.lang.StringBuilder.setLength:(I)V
25: iload 3
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokestatic jdk.nashorn.internal.runtime.regexp.RegExpScanner.octalOrLiteral:(Ljava/lang/String;Ljava/lang/StringBuilder;)V
26: goto 37
StackMap locals:
StackMap stack:
27: iload 3
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.caps:Ljava/util/List;
invokeinterface java.util.List.size:()I
if_icmpgt 34
28: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.caps:Ljava/util/List;
iload 3
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast jdk.nashorn.internal.runtime.regexp.RegExpScanner$Capture
astore 4
start local 4 29: aload 4
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.negLookaheadGroup:I
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.negLookaheadLevel:I
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner$Capture.canBeReferencedFrom:(II)Z
ifne 32
30: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.length:()I
iconst_1
isub
invokevirtual java.lang.StringBuilder.setLength:(I)V
31: goto 37
32: StackMap locals: jdk.nashorn.internal.runtime.regexp.RegExpScanner$Capture
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
iload 3
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
pop
end local 4 33: goto 37
34: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.length:()I
iconst_1
isub
invokevirtual java.lang.StringBuilder.setLength:(I)V
35: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.forwardReferences:Ljava/util/LinkedList;
iload 3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.LinkedList.add:(Ljava/lang/Object;)Z
pop
36: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.forwardReferences:Ljava/util/LinkedList;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.length:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual java.util.LinkedList.add:(Ljava/lang/Object;)Z
pop
end local 3 37: StackMap locals:
StackMap stack:
iconst_1
ireturn
38: StackMap locals:
StackMap stack:
aload 0
iload 1
iload 2
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.restart:(II)V
39: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 40 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
1 40 1 startIn I
2 40 2 startOut I
10 15 3 octalValue I
19 37 3 decimalValue I
29 33 4 capture Ljdk/nashorn/internal/runtime/regexp/RegExpScanner$Capture;
private boolean characterClassEscape();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
lookupswitch { // 6
68: 18
83: 10
87: 18
100: 18
115: 1
119: 18
default: 19
}
1: StackMap locals:
StackMap stack:
invokestatic jdk.nashorn.internal.runtime.regexp.RegExpFactory.usesJavaUtilRegex:()Z
ifeq 9
2: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.length:()I
iconst_1
isub
invokevirtual java.lang.StringBuilder.setLength:(I)V
3: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.inCharClass:Z
ifeq 6
4: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokestatic jdk.nashorn.internal.parser.Lexer.getWhitespaceRegExp:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
5: goto 7
6: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
bipush 91
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokestatic jdk.nashorn.internal.parser.Lexer.getWhitespaceRegExp:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 93
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
7: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.skip:(I)V
8: iconst_1
ireturn
9: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
ireturn
10: StackMap locals:
StackMap stack:
invokestatic jdk.nashorn.internal.runtime.regexp.RegExpFactory.usesJavaUtilRegex:()Z
ifeq 17
11: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.length:()I
iconst_1
isub
invokevirtual java.lang.StringBuilder.setLength:(I)V
12: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.inNegativeClass:Z
ifeq 13
ldc "&&["
goto 14
StackMap locals:
StackMap stack: java.lang.StringBuilder
13: ldc "[^"
StackMap locals: jdk.nashorn.internal.runtime.regexp.RegExpScanner
StackMap stack: java.lang.StringBuilder java.lang.String
14: invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokestatic jdk.nashorn.internal.parser.Lexer.getWhitespaceRegExp:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 93
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
15: aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.skip:(I)V
16: iconst_1
ireturn
17: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
ireturn
18: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
ireturn
19: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
private boolean characterClass();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.position:I
istore 1
start local 1 1: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.length:()I
istore 2
start local 2 2: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 91
if_icmpne 28
3: aload 0
iconst_1
putfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.inCharClass:Z
4: aload 0
bipush 93
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.push:(C)V
5: aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
pop
6: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 94
if_icmpne 9
7: aload 0
iconst_1
putfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.inNegativeClass:Z
8: aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
pop
9: StackMap locals: int int
StackMap stack:
aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.classRanges:()Z
ifeq 26
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 93
if_icmpne 26
10: aload 0
bipush 93
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.pop:(C)V
11: aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
pop
12: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.position:I
iload 1
iconst_2
iadd
if_icmpne 16
13: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.length:()I
iconst_1
isub
invokevirtual java.lang.StringBuilder.setLength:(I)V
14: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
ldc "^\\s\\S]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
15: goto 19
StackMap locals:
StackMap stack:
16: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.position:I
iload 1
iconst_3
iadd
if_icmpne 19
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.inNegativeClass:Z
ifeq 19
17: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.length:()I
iconst_2
isub
invokevirtual java.lang.StringBuilder.setLength:(I)V
18: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
ldc "\\s\\S]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
19: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.inCharClass:Z
20: aload 0
iconst_0
putfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.inNegativeClass:Z
21: iconst_1
ireturn
22: StackMap locals:
StackMap stack: java.lang.Throwable
astore 3
23: aload 0
iconst_0
putfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.inCharClass:Z
24: aload 0
iconst_0
putfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.inNegativeClass:Z
25: aload 3
athrow
26: StackMap locals:
StackMap stack:
aload 0
iconst_0
putfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.inCharClass:Z
27: aload 0
iconst_0
putfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.inNegativeClass:Z
28: StackMap locals:
StackMap stack:
aload 0
iload 1
iload 2
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.restart:(II)V
29: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
1 30 1 startIn I
2 30 2 startOut I
Exception table:
from to target type
3 19 22 any
private boolean classRanges();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.nonemptyClassRanges:()Z
pop
1: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
private boolean nonemptyClassRanges();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.position:I
istore 1
start local 1 1: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.length:()I
istore 2
start local 2 2: aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.classAtom:()Z
ifeq 9
3: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 45
if_icmpne 7
4: aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
pop
5: aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.classAtom:()Z
ifeq 7
aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.classRanges:()Z
ifeq 7
6: iconst_1
ireturn
7: StackMap locals: int int
StackMap stack:
aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.nonemptyClassRangesNoDash:()Z
pop
8: iconst_1
ireturn
9: StackMap locals:
StackMap stack:
aload 0
iload 1
iload 2
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.restart:(II)V
10: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
1 11 1 startIn I
2 11 2 startOut I
private boolean nonemptyClassRangesNoDash();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.position:I
istore 1
start local 1 1: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.length:()I
istore 2
start local 2 2: aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.classAtomNoDash:()Z
ifeq 9
3: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 45
if_icmpne 7
4: aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
pop
5: aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.classAtom:()Z
ifeq 7
aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.classRanges:()Z
ifeq 7
6: iconst_1
ireturn
7: StackMap locals: int int
StackMap stack:
aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.nonemptyClassRangesNoDash:()Z
pop
8: iconst_1
ireturn
9: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.classAtom:()Z
ifeq 11
10: iconst_1
ireturn
11: StackMap locals:
StackMap stack:
aload 0
iload 1
iload 2
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.restart:(II)V
12: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
1 13 1 startIn I
2 13 2 startOut I
private boolean classAtom();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 45
if_icmpne 2
1: aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
ireturn
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.classAtomNoDash:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
private boolean classAtomNoDash();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.atEOF:()Z
ifeq 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.position:I
istore 1
start local 1 3: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.length:()I
istore 2
start local 2 4: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
lookupswitch { // 4
45: 5
91: 6
92: 8
93: 5
default: 13
}
5: StackMap locals: int int
StackMap stack:
iconst_0
ireturn
6: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
bipush 92
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
7: aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
ireturn
8: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
pop
9: aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.classEscape:()Z
ifeq 11
10: iconst_1
ireturn
11: StackMap locals:
StackMap stack:
aload 0
iload 1
iload 2
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.restart:(II)V
12: iconst_0
ireturn
13: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
3 14 1 startIn I
4 14 2 startOut I
private boolean classEscape();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.decimalEscape:()Z
ifeq 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
bipush 98
if_icmpne 7
3: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.length:()I
iconst_1
isub
invokevirtual java.lang.StringBuilder.setLength:(I)V
4: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.sb:Ljava/lang/StringBuilder;
bipush 8
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
5: aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.skip:(I)V
6: iconst_1
ireturn
7: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.characterEscape:()Z
ifne 8
aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.characterClassEscape:()Z
ifne 8
aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.identityEscape:()Z
ifne 8
iconst_0
ireturn
StackMap locals:
StackMap stack:
8: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
private boolean decimalDigits();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
invokestatic jdk.nashorn.internal.runtime.regexp.RegExpScanner.isDecimalDigit:(C)Z
ifne 3
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
iconst_1
invokevirtual jdk.nashorn.internal.runtime.regexp.RegExpScanner.commit:(I)Z
pop
3: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.RegExpScanner.ch0:C
invokestatic jdk.nashorn.internal.runtime.regexp.RegExpScanner.isDecimalDigit:(C)Z
ifne 2
4: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/nashorn/internal/runtime/regexp/RegExpScanner;
private static void unicode(int, java.lang.StringBuilder);
descriptor: (ILjava/lang/StringBuilder;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: iload 0
invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
astore 2
start local 2 1: aload 1
bipush 117
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
2: iconst_0
istore 3
start local 3 3: goto 6
4: StackMap locals: java.lang.String int
StackMap stack:
aload 1
bipush 48
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
5: iinc 3 1
StackMap locals:
StackMap stack:
6: iload 3
iconst_4
aload 2
invokevirtual java.lang.String.length:()I
isub
if_icmplt 4
end local 3 7: aload 1
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
8: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 value I
0 9 1 buffer Ljava/lang/StringBuilder;
1 9 2 hex Ljava/lang/String;
3 7 3 i I
MethodParameters:
Name Flags
value final
buffer final
private static void octalOrLiteral(java.lang.String, java.lang.StringBuilder);
descriptor: (Ljava/lang/String;Ljava/lang/StringBuilder;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=6, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual java.lang.String.length:()I
istore 2
start local 2 1: iconst_0
istore 3
start local 3 2: iconst_0
istore 4
start local 4 3: goto 8
4: StackMap locals: int int int
StackMap stack:
aload 0
iload 4
invokevirtual java.lang.String.charAt:(I)C
istore 5
start local 5 5: iload 5
invokestatic jdk.nashorn.internal.runtime.regexp.RegExpScanner.isOctalDigit:(C)Z
ifeq 9
6: iload 3
bipush 8
imul
iload 5
iadd
bipush 48
isub
istore 3
7: iinc 4 1
end local 5 8: StackMap locals:
StackMap stack:
iload 4
iload 2
if_icmpge 9
iload 3
bipush 32
if_icmplt 4
9: StackMap locals:
StackMap stack:
iload 3
ifle 14
10: aload 1
bipush 92
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
11: iload 3
aload 1
invokestatic jdk.nashorn.internal.runtime.regexp.RegExpScanner.unicode:(ILjava/lang/StringBuilder;)V
12: aload 1
aload 0
iload 4
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
13: goto 15
14: StackMap locals:
StackMap stack:
aload 1
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
15: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 numberLiteral Ljava/lang/String;
0 16 1 buffer Ljava/lang/StringBuilder;
1 16 2 length I
2 16 3 octalValue I
3 16 4 pos I
5 8 5 ch C
MethodParameters:
Name Flags
numberLiteral final
buffer final
private static boolean isOctalDigit(char);
descriptor: (C)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: iload 0
bipush 48
if_icmplt 1
iload 0
bipush 55
if_icmpgt 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 ch C
MethodParameters:
Name Flags
ch final
private static boolean isDecimalDigit(char);
descriptor: (C)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: iload 0
bipush 48
if_icmplt 1
iload 0
bipush 57
if_icmpgt 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 ch C
MethodParameters:
Name Flags
ch final
}
SourceFile: "RegExpScanner.java"
NestMembers:
jdk.nashorn.internal.runtime.regexp.RegExpScanner$Capture
InnerClasses:
private Capture = jdk.nashorn.internal.runtime.regexp.RegExpScanner$Capture of jdk.nashorn.internal.runtime.regexp.RegExpScanner