abstract class jdk.nashorn.internal.runtime.regexp.joni.Compiler implements jdk.nashorn.internal.runtime.regexp.joni.exception.ErrorMessages
minor version: 0
major version: 59
flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
this_class: jdk.nashorn.internal.runtime.regexp.joni.Compiler
super_class: java.lang.Object
{
protected final jdk.nashorn.internal.runtime.regexp.joni.Analyser analyser;
descriptor: Ljdk/nashorn/internal/runtime/regexp/joni/Analyser;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final jdk.nashorn.internal.runtime.regexp.joni.Regex regex;
descriptor: Ljdk/nashorn/internal/runtime/regexp/joni/Regex;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected void <init>(jdk.nashorn.internal.runtime.regexp.joni.Analyser);
descriptor: (Ljdk/nashorn/internal/runtime/regexp/joni/Analyser;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield jdk.nashorn.internal.runtime.regexp.joni.Compiler.analyser:Ljdk/nashorn/internal/runtime/regexp/joni/Analyser;
2: aload 0
aload 1
getfield jdk.nashorn.internal.runtime.regexp.joni.Analyser.regex:Ljdk/nashorn/internal/runtime/regexp/joni/Regex;
putfield jdk.nashorn.internal.runtime.regexp.joni.Compiler.regex:Ljdk/nashorn/internal/runtime/regexp/joni/Regex;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/nashorn/internal/runtime/regexp/joni/Compiler;
0 4 1 analyser Ljdk/nashorn/internal/runtime/regexp/joni/Analyser;
MethodParameters:
Name Flags
analyser final
final void compile();
descriptor: ()V
flags: (0x0010) ACC_FINAL
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.Compiler.prepare:()V
1: aload 0
aload 0
getfield jdk.nashorn.internal.runtime.regexp.joni.Compiler.analyser:Ljdk/nashorn/internal/runtime/regexp/joni/Analyser;
getfield jdk.nashorn.internal.runtime.regexp.joni.Analyser.root:Ljdk/nashorn/internal/runtime/regexp/joni/ast/Node;
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.Compiler.compileTree:(Ljdk/nashorn/internal/runtime/regexp/joni/ast/Node;)V
2: aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.Compiler.finish:()V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/nashorn/internal/runtime/regexp/joni/Compiler;
protected abstract void prepare();
descriptor: ()V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
protected abstract void finish();
descriptor: ()V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
protected abstract void compileAltNode(jdk.nashorn.internal.runtime.regexp.joni.ast.ConsAltNode);
descriptor: (Ljdk/nashorn/internal/runtime/regexp/joni/ast/ConsAltNode;)V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
node
private void compileStringRawNode(jdk.nashorn.internal.runtime.regexp.joni.ast.StringNode);
descriptor: (Ljdk/nashorn/internal/runtime/regexp/joni/ast/StringNode;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.ast.StringNode.length:()I
ifgt 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
aload 1
getfield jdk.nashorn.internal.runtime.regexp.joni.ast.StringNode.chars:[C
aload 1
getfield jdk.nashorn.internal.runtime.regexp.joni.ast.StringNode.p:I
aload 1
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.ast.StringNode.length:()I
iconst_0
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.Compiler.addCompileString:([CIIZ)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/nashorn/internal/runtime/regexp/joni/Compiler;
0 4 1 sn Ljdk/nashorn/internal/runtime/regexp/joni/ast/StringNode;
MethodParameters:
Name Flags
sn final
private void compileStringNode(jdk.nashorn.internal.runtime.regexp.joni.ast.StringNode);
descriptor: (Ljdk/nashorn/internal/runtime/regexp/joni/ast/StringNode;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=9, args_size=2
start local 0 start local 1 0: aload 1
astore 2
start local 2 1: aload 2
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.ast.StringNode.length:()I
ifgt 3
2: return
3: StackMap locals: jdk.nashorn.internal.runtime.regexp.joni.ast.StringNode
StackMap stack:
aload 2
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.ast.StringNode.isAmbig:()Z
istore 3
start local 3 4: aload 2
getfield jdk.nashorn.internal.runtime.regexp.joni.ast.StringNode.p:I
dup
istore 5
start local 5 5: istore 4
start local 4 6: aload 2
getfield jdk.nashorn.internal.runtime.regexp.joni.ast.StringNode.end:I
istore 6
start local 6 7: aload 2
getfield jdk.nashorn.internal.runtime.regexp.joni.ast.StringNode.chars:[C
astore 7
start local 7 8: iinc 4 1
9: iconst_1
istore 8
start local 8 10: goto 13
11: StackMap locals: jdk.nashorn.internal.runtime.regexp.joni.Compiler jdk.nashorn.internal.runtime.regexp.joni.ast.StringNode jdk.nashorn.internal.runtime.regexp.joni.ast.StringNode int int int int char[] int
StackMap stack:
iinc 8 1
12: iinc 4 1
13: StackMap locals:
StackMap stack:
iload 4
iload 6
if_icmplt 11
14: aload 0
aload 7
iload 5
iload 8
iload 3
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.Compiler.addCompileString:([CIIZ)V
15: return
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Ljdk/nashorn/internal/runtime/regexp/joni/Compiler;
0 16 1 node Ljdk/nashorn/internal/runtime/regexp/joni/ast/StringNode;
1 16 2 sn Ljdk/nashorn/internal/runtime/regexp/joni/ast/StringNode;
4 16 3 ambig Z
6 16 4 p I
5 16 5 prev I
7 16 6 end I
8 16 7 chars [C
10 16 8 slen I
MethodParameters:
Name Flags
node final
protected abstract void addCompileString(char[], int, int, boolean);
descriptor: ([CIIZ)V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
chars
p
strLength
ignoreCase
protected abstract void compileCClassNode(jdk.nashorn.internal.runtime.regexp.joni.ast.CClassNode);
descriptor: (Ljdk/nashorn/internal/runtime/regexp/joni/ast/CClassNode;)V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
node
protected abstract void compileAnyCharNode();
descriptor: ()V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
protected abstract void compileBackrefNode(jdk.nashorn.internal.runtime.regexp.joni.ast.BackRefNode);
descriptor: (Ljdk/nashorn/internal/runtime/regexp/joni/ast/BackRefNode;)V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
node
protected abstract void compileNonCECQuantifierNode(jdk.nashorn.internal.runtime.regexp.joni.ast.QuantifierNode);
descriptor: (Ljdk/nashorn/internal/runtime/regexp/joni/ast/QuantifierNode;)V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
node
protected abstract void compileOptionNode(jdk.nashorn.internal.runtime.regexp.joni.ast.EncloseNode);
descriptor: (Ljdk/nashorn/internal/runtime/regexp/joni/ast/EncloseNode;)V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
node
protected abstract void compileEncloseNode(jdk.nashorn.internal.runtime.regexp.joni.ast.EncloseNode);
descriptor: (Ljdk/nashorn/internal/runtime/regexp/joni/ast/EncloseNode;)V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
node
protected abstract void compileAnchorNode(jdk.nashorn.internal.runtime.regexp.joni.ast.AnchorNode);
descriptor: (Ljdk/nashorn/internal/runtime/regexp/joni/ast/AnchorNode;)V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
node
protected final void compileTree(jdk.nashorn.internal.runtime.regexp.joni.ast.Node);
descriptor: (Ljdk/nashorn/internal/runtime/regexp/joni/ast/Node;)V
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.ast.Node.getType:()I
tableswitch { // 0 - 9
0: 7
1: 13
2: 29
3: 15
4: 17
5: 19
6: 21
7: 27
8: 1
9: 5
default: 29
}
1: StackMap locals:
StackMap stack:
aload 1
checkcast jdk.nashorn.internal.runtime.regexp.joni.ast.ConsAltNode
astore 2
start local 2 2: StackMap locals: jdk.nashorn.internal.runtime.regexp.joni.ast.ConsAltNode
StackMap stack:
aload 0
aload 2
getfield jdk.nashorn.internal.runtime.regexp.joni.ast.ConsAltNode.car:Ljdk/nashorn/internal/runtime/regexp/joni/ast/Node;
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.Compiler.compileTree:(Ljdk/nashorn/internal/runtime/regexp/joni/ast/Node;)V
3: aload 2
getfield jdk.nashorn.internal.runtime.regexp.joni.ast.ConsAltNode.cdr:Ljdk/nashorn/internal/runtime/regexp/joni/ast/ConsAltNode;
dup
astore 2
ifnonnull 2
4: goto 30
end local 2 5: StackMap locals:
StackMap stack:
aload 0
aload 1
checkcast jdk.nashorn.internal.runtime.regexp.joni.ast.ConsAltNode
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.Compiler.compileAltNode:(Ljdk/nashorn/internal/runtime/regexp/joni/ast/ConsAltNode;)V
6: goto 30
7: StackMap locals:
StackMap stack:
aload 1
checkcast jdk.nashorn.internal.runtime.regexp.joni.ast.StringNode
astore 3
start local 3 8: aload 3
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.ast.StringNode.isRaw:()Z
ifeq 11
9: aload 0
aload 3
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.Compiler.compileStringRawNode:(Ljdk/nashorn/internal/runtime/regexp/joni/ast/StringNode;)V
10: goto 30
11: StackMap locals: jdk.nashorn.internal.runtime.regexp.joni.Compiler jdk.nashorn.internal.runtime.regexp.joni.ast.Node top jdk.nashorn.internal.runtime.regexp.joni.ast.StringNode
StackMap stack:
aload 0
aload 3
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.Compiler.compileStringNode:(Ljdk/nashorn/internal/runtime/regexp/joni/ast/StringNode;)V
12: goto 30
end local 3 13: StackMap locals: jdk.nashorn.internal.runtime.regexp.joni.Compiler jdk.nashorn.internal.runtime.regexp.joni.ast.Node
StackMap stack:
aload 0
aload 1
checkcast jdk.nashorn.internal.runtime.regexp.joni.ast.CClassNode
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.Compiler.compileCClassNode:(Ljdk/nashorn/internal/runtime/regexp/joni/ast/CClassNode;)V
14: goto 30
15: StackMap locals:
StackMap stack:
aload 0
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.Compiler.compileAnyCharNode:()V
16: goto 30
17: StackMap locals:
StackMap stack:
aload 0
aload 1
checkcast jdk.nashorn.internal.runtime.regexp.joni.ast.BackRefNode
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.Compiler.compileBackrefNode:(Ljdk/nashorn/internal/runtime/regexp/joni/ast/BackRefNode;)V
18: goto 30
19: StackMap locals:
StackMap stack:
aload 0
aload 1
checkcast jdk.nashorn.internal.runtime.regexp.joni.ast.QuantifierNode
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.Compiler.compileNonCECQuantifierNode:(Ljdk/nashorn/internal/runtime/regexp/joni/ast/QuantifierNode;)V
20: goto 30
21: StackMap locals:
StackMap stack:
aload 1
checkcast jdk.nashorn.internal.runtime.regexp.joni.ast.EncloseNode
astore 4
start local 4 22: aload 4
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.ast.EncloseNode.isOption:()Z
ifeq 25
23: aload 0
aload 4
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.Compiler.compileOptionNode:(Ljdk/nashorn/internal/runtime/regexp/joni/ast/EncloseNode;)V
24: goto 30
25: StackMap locals: jdk.nashorn.internal.runtime.regexp.joni.Compiler jdk.nashorn.internal.runtime.regexp.joni.ast.Node top top jdk.nashorn.internal.runtime.regexp.joni.ast.EncloseNode
StackMap stack:
aload 0
aload 4
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.Compiler.compileEncloseNode:(Ljdk/nashorn/internal/runtime/regexp/joni/ast/EncloseNode;)V
26: goto 30
end local 4 27: StackMap locals: jdk.nashorn.internal.runtime.regexp.joni.Compiler jdk.nashorn.internal.runtime.regexp.joni.ast.Node
StackMap stack:
aload 0
aload 1
checkcast jdk.nashorn.internal.runtime.regexp.joni.ast.AnchorNode
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.Compiler.compileAnchorNode:(Ljdk/nashorn/internal/runtime/regexp/joni/ast/AnchorNode;)V
28: goto 30
29: StackMap locals:
StackMap stack:
aload 0
ldc "internal parser error (bug)"
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.Compiler.newInternalException:(Ljava/lang/String;)V
30: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 this Ljdk/nashorn/internal/runtime/regexp/joni/Compiler;
0 31 1 node Ljdk/nashorn/internal/runtime/regexp/joni/ast/Node;
2 5 2 lin Ljdk/nashorn/internal/runtime/regexp/joni/ast/ConsAltNode;
8 13 3 sn Ljdk/nashorn/internal/runtime/regexp/joni/ast/StringNode;
22 27 4 enode Ljdk/nashorn/internal/runtime/regexp/joni/ast/EncloseNode;
MethodParameters:
Name Flags
node final
protected final void compileTreeNTimes(jdk.nashorn.internal.runtime.regexp.joni.ast.Node, int);
descriptor: (Ljdk/nashorn/internal/runtime/regexp/joni/ast/Node;I)V
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
istore 3
start local 3 1: goto 4
2: StackMap locals: int
StackMap stack:
aload 0
aload 1
invokevirtual jdk.nashorn.internal.runtime.regexp.joni.Compiler.compileTree:(Ljdk/nashorn/internal/runtime/regexp/joni/ast/Node;)V
3: iinc 3 1
StackMap locals:
StackMap stack:
4: iload 3
iload 2
if_icmplt 2
end local 3 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/Compiler;
0 6 1 node Ljdk/nashorn/internal/runtime/regexp/joni/ast/Node;
0 6 2 n I
1 5 3 i I
MethodParameters:
Name Flags
node final
n final
protected void newSyntaxException(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: new jdk.nashorn.internal.runtime.regexp.joni.exception.SyntaxException
dup
aload 1
invokespecial jdk.nashorn.internal.runtime.regexp.joni.exception.SyntaxException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/regexp/joni/Compiler;
0 1 1 message Ljava/lang/String;
MethodParameters:
Name Flags
message final
protected void newInternalException(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: new jdk.nashorn.internal.runtime.regexp.joni.exception.InternalException
dup
aload 1
invokespecial jdk.nashorn.internal.runtime.regexp.joni.exception.InternalException.<init>:(Ljava/lang/String;)V
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/runtime/regexp/joni/Compiler;
0 1 1 message Ljava/lang/String;
MethodParameters:
Name Flags
message final
}
SourceFile: "Compiler.java"