public final class jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment
super_class: java.lang.Object
{
private static final int SCANENV_MEMNODES_SIZE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 8
int option;
descriptor: I
flags: (0x0000)
final int caseFoldFlag;
descriptor: I
flags: (0x0010) ACC_FINAL
public final jdk.nashorn.internal.runtime.regexp.joni.Syntax syntax;
descriptor: Ljdk/nashorn/internal/runtime/regexp/joni/Syntax;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
int captureHistory;
descriptor: I
flags: (0x0000)
int btMemStart;
descriptor: I
flags: (0x0000)
int btMemEnd;
descriptor: I
flags: (0x0000)
int backrefedMem;
descriptor: I
flags: (0x0000)
public final jdk.nashorn.internal.runtime.regexp.joni.Regex reg;
descriptor: Ljdk/nashorn/internal/runtime/regexp/joni/Regex;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public int numMem;
descriptor: I
flags: (0x0001) ACC_PUBLIC
public jdk.nashorn.internal.runtime.regexp.joni.ast.Node[] memNodes;
descriptor: [Ljdk/nashorn/internal/runtime/regexp/joni/ast/Node;
flags: (0x0001) ACC_PUBLIC
public void <init>(jdk.nashorn.internal.runtime.regexp.joni.Regex, jdk.nashorn.internal.runtime.regexp.joni.Syntax);
descriptor: (Ljdk/nashorn/internal/runtime/regexp/joni/Regex;Ljdk/nashorn/internal/runtime/regexp/joni/Syntax;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.reg:Ljdk/nashorn/internal/runtime/regexp/joni/Regex;
2: aload 0
aload 1
getfield jdk.nashorn.internal.runtime.regexp.joni.Regex.options:I
putfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.option:I
3: aload 0
aload 1
getfield jdk.nashorn.internal.runtime.regexp.joni.Regex.caseFoldFlag:I
putfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.caseFoldFlag:I
4: aload 0
aload 2
putfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.syntax:Ljdk/nashorn/internal/runtime/regexp/joni/Syntax;
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljdk/nashorn/internal/runtime/regexp/joni/ScanEnvironment;
0 6 1 regex Ljdk/nashorn/internal/runtime/regexp/joni/Regex;
0 6 2 syntax Ljdk/nashorn/internal/runtime/regexp/joni/Syntax;
MethodParameters:
Name Flags
regex final
syntax final
public void clear();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokestatic jdk.nashorn.internal.runtime.regexp.joni.BitStatus.bsClear:()I
putfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.captureHistory:I
1: aload 0
invokestatic jdk.nashorn.internal.runtime.regexp.joni.BitStatus.bsClear:()I
putfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.btMemStart:I
2: aload 0
invokestatic jdk.nashorn.internal.runtime.regexp.joni.BitStatus.bsClear:()I
putfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.btMemEnd:I
3: aload 0
invokestatic jdk.nashorn.internal.runtime.regexp.joni.BitStatus.bsClear:()I
putfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.backrefedMem:I
4: aload 0
iconst_0
putfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.numMem:I
5: aload 0
aconst_null
putfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.memNodes:[Ljdk/nashorn/internal/runtime/regexp/joni/ast/Node;
6: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljdk/nashorn/internal/runtime/regexp/joni/ScanEnvironment;
public int addMemEntry();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.numMem:I
ldc 32768
if_icmplt 2
1: new jdk.nashorn.internal.runtime.regexp.joni.exception.InternalException
dup
ldc "too many capture groups"
invokespecial jdk.nashorn.internal.runtime.regexp.joni.exception.InternalException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
dup
getfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.numMem:I
dup_x1
iconst_1
iadd
putfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.numMem:I
ifne 5
3: aload 0
bipush 8
anewarray jdk.nashorn.internal.runtime.regexp.joni.ast.Node
putfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.memNodes:[Ljdk/nashorn/internal/runtime/regexp/joni/ast/Node;
4: goto 9
StackMap locals:
StackMap stack:
5: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.numMem:I
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.memNodes:[Ljdk/nashorn/internal/runtime/regexp/joni/ast/Node;
arraylength
if_icmplt 9
6: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.memNodes:[Ljdk/nashorn/internal/runtime/regexp/joni/ast/Node;
arraylength
iconst_1
ishl
anewarray jdk.nashorn.internal.runtime.regexp.joni.ast.Node
astore 1
start local 1 7: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.memNodes:[Ljdk/nashorn/internal/runtime/regexp/joni/ast/Node;
iconst_0
aload 1
iconst_0
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.memNodes:[Ljdk/nashorn/internal/runtime/regexp/joni/ast/Node;
arraylength
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
8: aload 0
aload 1
putfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.memNodes:[Ljdk/nashorn/internal/runtime/regexp/joni/ast/Node;
end local 1 9: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.numMem:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljdk/nashorn/internal/runtime/regexp/joni/ScanEnvironment;
7 9 1 tmp [Ljdk/nashorn/internal/runtime/regexp/joni/ast/Node;
public void setMemNode(int, jdk.nashorn.internal.runtime.regexp.joni.ast.Node);
descriptor: (ILjdk/nashorn/internal/runtime/regexp/joni/ast/Node;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.numMem:I
iload 1
if_icmplt 3
1: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.memNodes:[Ljdk/nashorn/internal/runtime/regexp/joni/ast/Node;
iload 1
aload 2
aastore
2: goto 4
3: StackMap locals:
StackMap stack:
new jdk.nashorn.internal.runtime.regexp.joni.exception.InternalException
dup
ldc "internal parser error (bug)"
invokespecial jdk.nashorn.internal.runtime.regexp.joni.exception.InternalException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/nashorn/internal/runtime/regexp/joni/ScanEnvironment;
0 5 1 num I
0 5 2 node Ljdk/nashorn/internal/runtime/regexp/joni/ast/Node;
MethodParameters:
Name Flags
num final
node final
public int convertBackslashValue(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.syntax:Ljdk/nashorn/internal/runtime/regexp/joni/Syntax;
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.Syntax.opEscControlChars:()Z
ifeq 11
1: iload 1
lookupswitch { // 8
97: 6
98: 7
101: 8
102: 5
110: 2
114: 4
116: 3
118: 9
default: 11
}
2: StackMap locals:
StackMap stack:
bipush 10
ireturn
3: StackMap locals:
StackMap stack:
bipush 9
ireturn
4: StackMap locals:
StackMap stack:
bipush 13
ireturn
5: StackMap locals:
StackMap stack:
bipush 12
ireturn
6: StackMap locals:
StackMap stack:
bipush 7
ireturn
7: StackMap locals:
StackMap stack:
bipush 8
ireturn
8: StackMap locals:
StackMap stack:
bipush 27
ireturn
9: StackMap locals:
StackMap stack:
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.syntax:Ljdk/nashorn/internal/runtime/regexp/joni/Syntax;
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.Syntax.op2EscVVtab:()Z
ifeq 11
10: bipush 11
ireturn
11: StackMap locals:
StackMap stack:
iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Ljdk/nashorn/internal/runtime/regexp/joni/ScanEnvironment;
0 12 1 c I
MethodParameters:
Name Flags
c final
void ccEscWarn(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0000)
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.syntax:Ljdk/nashorn/internal/runtime/regexp/joni/Syntax;
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.Syntax.warnCCOpNotEscaped:()Z
ifeq 2
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.syntax:Ljdk/nashorn/internal/runtime/regexp/joni/Syntax;
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.Syntax.backSlashEscapeInCC:()Z
ifeq 2
1: aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.ScanEnvironment.reg:Ljdk/nashorn/internal/runtime/regexp/joni/Regex;
getfield jdk.nashorn.internal.runtime.regexp.joni.Regex.warnings:Ljdk/nashorn/internal/runtime/regexp/joni/WarnCallback;
new java.lang.StringBuilder
dup
ldc "character class has '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "' without escape"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface jdk.nashorn.internal.runtime.regexp.joni.WarnCallback.warn:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/nashorn/internal/runtime/regexp/joni/ScanEnvironment;
0 3 1 s Ljava/lang/String;
MethodParameters:
Name Flags
s final
}
SourceFile: "ScanEnvironment.java"