public final class com.oracle.js.parser.ir.TernaryNode extends com.oracle.js.parser.ir.Expression
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.oracle.js.parser.ir.TernaryNode
super_class: com.oracle.js.parser.ir.Expression
{
private final com.oracle.js.parser.ir.Expression test;
descriptor: Lcom/oracle/js/parser/ir/Expression;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.oracle.js.parser.ir.JoinPredecessorExpression trueExpr;
descriptor: Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.oracle.js.parser.ir.JoinPredecessorExpression falseExpr;
descriptor: Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(long, com.oracle.js.parser.ir.Expression, com.oracle.js.parser.ir.JoinPredecessorExpression, com.oracle.js.parser.ir.JoinPredecessorExpression);
descriptor: (JLcom/oracle/js/parser/ir/Expression;Lcom/oracle/js/parser/ir/JoinPredecessorExpression;Lcom/oracle/js/parser/ir/JoinPredecessorExpression;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=5
start local 0 start local 1 start local 3 start local 4 start local 5 0: aload 0
lload 1
aload 3
invokevirtual com.oracle.js.parser.ir.Expression.getStart:()I
aload 5
invokevirtual com.oracle.js.parser.ir.JoinPredecessorExpression.getFinish:()I
invokespecial com.oracle.js.parser.ir.Expression.<init>:(JII)V
1: aload 0
aload 3
putfield com.oracle.js.parser.ir.TernaryNode.test:Lcom/oracle/js/parser/ir/Expression;
2: aload 0
aload 4
putfield com.oracle.js.parser.ir.TernaryNode.trueExpr:Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
3: aload 0
aload 5
putfield com.oracle.js.parser.ir.TernaryNode.falseExpr:Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
4: return
end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/js/parser/ir/TernaryNode;
0 5 1 token J
0 5 3 test Lcom/oracle/js/parser/ir/Expression;
0 5 4 trueExpr Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
0 5 5 falseExpr Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
MethodParameters:
Name Flags
token final
test final
trueExpr final
falseExpr final
private void <init>(com.oracle.js.parser.ir.TernaryNode, com.oracle.js.parser.ir.Expression, com.oracle.js.parser.ir.JoinPredecessorExpression, com.oracle.js.parser.ir.JoinPredecessorExpression);
descriptor: (Lcom/oracle/js/parser/ir/TernaryNode;Lcom/oracle/js/parser/ir/Expression;Lcom/oracle/js/parser/ir/JoinPredecessorExpression;Lcom/oracle/js/parser/ir/JoinPredecessorExpression;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
invokespecial com.oracle.js.parser.ir.Expression.<init>:(Lcom/oracle/js/parser/ir/Expression;)V
1: aload 0
aload 2
putfield com.oracle.js.parser.ir.TernaryNode.test:Lcom/oracle/js/parser/ir/Expression;
2: aload 0
aload 3
putfield com.oracle.js.parser.ir.TernaryNode.trueExpr:Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
3: aload 0
aload 4
putfield com.oracle.js.parser.ir.TernaryNode.falseExpr:Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
4: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/js/parser/ir/TernaryNode;
0 5 1 ternaryNode Lcom/oracle/js/parser/ir/TernaryNode;
0 5 2 test Lcom/oracle/js/parser/ir/Expression;
0 5 3 trueExpr Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
0 5 4 falseExpr Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
MethodParameters:
Name Flags
ternaryNode final
test final
trueExpr final
falseExpr final
public com.oracle.js.parser.ir.Node accept(com.oracle.js.parser.ir.visitor.NodeVisitor<? extends com.oracle.js.parser.ir.LexicalContext>);
descriptor: (Lcom/oracle/js/parser/ir/visitor/NodeVisitor;)Lcom/oracle/js/parser/ir/Node;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokevirtual com.oracle.js.parser.ir.visitor.NodeVisitor.enterTernaryNode:(Lcom/oracle/js/parser/ir/TernaryNode;)Z
ifeq 5
1: aload 0
invokevirtual com.oracle.js.parser.ir.TernaryNode.getTest:()Lcom/oracle/js/parser/ir/Expression;
aload 1
invokevirtual com.oracle.js.parser.ir.Expression.accept:(Lcom/oracle/js/parser/ir/visitor/NodeVisitor;)Lcom/oracle/js/parser/ir/Node;
checkcast com.oracle.js.parser.ir.Expression
astore 2
start local 2 2: aload 0
getfield com.oracle.js.parser.ir.TernaryNode.trueExpr:Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
aload 1
invokevirtual com.oracle.js.parser.ir.JoinPredecessorExpression.accept:(Lcom/oracle/js/parser/ir/visitor/NodeVisitor;)Lcom/oracle/js/parser/ir/Node;
checkcast com.oracle.js.parser.ir.JoinPredecessorExpression
astore 3
start local 3 3: aload 0
getfield com.oracle.js.parser.ir.TernaryNode.falseExpr:Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
aload 1
invokevirtual com.oracle.js.parser.ir.JoinPredecessorExpression.accept:(Lcom/oracle/js/parser/ir/visitor/NodeVisitor;)Lcom/oracle/js/parser/ir/Node;
checkcast com.oracle.js.parser.ir.JoinPredecessorExpression
astore 4
start local 4 4: aload 1
aload 0
aload 2
invokevirtual com.oracle.js.parser.ir.TernaryNode.setTest:(Lcom/oracle/js/parser/ir/Expression;)Lcom/oracle/js/parser/ir/TernaryNode;
aload 3
invokevirtual com.oracle.js.parser.ir.TernaryNode.setTrueExpression:(Lcom/oracle/js/parser/ir/JoinPredecessorExpression;)Lcom/oracle/js/parser/ir/TernaryNode;
aload 4
invokevirtual com.oracle.js.parser.ir.TernaryNode.setFalseExpression:(Lcom/oracle/js/parser/ir/JoinPredecessorExpression;)Lcom/oracle/js/parser/ir/TernaryNode;
invokevirtual com.oracle.js.parser.ir.visitor.NodeVisitor.leaveTernaryNode:(Lcom/oracle/js/parser/ir/TernaryNode;)Lcom/oracle/js/parser/ir/Node;
areturn
end local 4 end local 3 end local 2 5: StackMap locals:
StackMap stack:
aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/oracle/js/parser/ir/TernaryNode;
0 6 1 visitor Lcom/oracle/js/parser/ir/visitor/NodeVisitor<+Lcom/oracle/js/parser/ir/LexicalContext;>;
2 5 2 newTest Lcom/oracle/js/parser/ir/Expression;
3 5 3 newTrueExpr Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
4 5 4 newFalseExpr Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
Signature: (Lcom/oracle/js/parser/ir/visitor/NodeVisitor<+Lcom/oracle/js/parser/ir/LexicalContext;>;)Lcom/oracle/js/parser/ir/Node;
MethodParameters:
Name Flags
visitor final
public <R> R accept(com.oracle.js.parser.ir.visitor.TranslatorNodeVisitor<? extends com.oracle.js.parser.ir.LexicalContext, R>);
descriptor: (Lcom/oracle/js/parser/ir/visitor/TranslatorNodeVisitor;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokevirtual com.oracle.js.parser.ir.visitor.TranslatorNodeVisitor.enterTernaryNode:(Lcom/oracle/js/parser/ir/TernaryNode;)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/js/parser/ir/TernaryNode;
0 1 1 visitor Lcom/oracle/js/parser/ir/visitor/TranslatorNodeVisitor<+Lcom/oracle/js/parser/ir/LexicalContext;TR;>;
Signature: <R:Ljava/lang/Object;>(Lcom/oracle/js/parser/ir/visitor/TranslatorNodeVisitor<+Lcom/oracle/js/parser/ir/LexicalContext;TR;>;)TR;
MethodParameters:
Name Flags
visitor
public void toString(java.lang.StringBuilder, boolean);
descriptor: (Ljava/lang/StringBuilder;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual com.oracle.js.parser.ir.TernaryNode.tokenType:()Lcom/oracle/js/parser/TokenType;
astore 3
start local 3 1: aload 3
aload 0
invokevirtual com.oracle.js.parser.ir.TernaryNode.getTest:()Lcom/oracle/js/parser/ir/Expression;
invokevirtual com.oracle.js.parser.ir.Expression.tokenType:()Lcom/oracle/js/parser/TokenType;
iconst_1
invokevirtual com.oracle.js.parser.TokenType.needsParens:(Lcom/oracle/js/parser/TokenType;Z)Z
istore 4
start local 4 2: aload 3
aload 0
invokevirtual com.oracle.js.parser.ir.TernaryNode.getTrueExpression:()Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
invokevirtual com.oracle.js.parser.ir.JoinPredecessorExpression.tokenType:()Lcom/oracle/js/parser/TokenType;
iconst_0
invokevirtual com.oracle.js.parser.TokenType.needsParens:(Lcom/oracle/js/parser/TokenType;Z)Z
istore 5
start local 5 3: aload 3
aload 0
invokevirtual com.oracle.js.parser.ir.TernaryNode.getFalseExpression:()Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
invokevirtual com.oracle.js.parser.ir.JoinPredecessorExpression.tokenType:()Lcom/oracle/js/parser/TokenType;
iconst_0
invokevirtual com.oracle.js.parser.TokenType.needsParens:(Lcom/oracle/js/parser/TokenType;Z)Z
istore 6
start local 6 4: iload 4
ifeq 6
5: aload 1
bipush 40
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
6: StackMap locals: com.oracle.js.parser.ir.TernaryNode java.lang.StringBuilder int com.oracle.js.parser.TokenType int int int
StackMap stack:
aload 0
invokevirtual com.oracle.js.parser.ir.TernaryNode.getTest:()Lcom/oracle/js/parser/ir/Expression;
aload 1
iload 2
invokevirtual com.oracle.js.parser.ir.Expression.toString:(Ljava/lang/StringBuilder;Z)V
7: iload 4
ifeq 9
8: aload 1
bipush 41
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
9: StackMap locals:
StackMap stack:
aload 1
ldc " ? "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
10: iload 5
ifeq 12
11: aload 1
bipush 40
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
12: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.oracle.js.parser.ir.TernaryNode.getTrueExpression:()Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
aload 1
iload 2
invokevirtual com.oracle.js.parser.ir.JoinPredecessorExpression.toString:(Ljava/lang/StringBuilder;Z)V
13: iload 5
ifeq 15
14: aload 1
bipush 41
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
15: StackMap locals:
StackMap stack:
aload 1
ldc " : "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
16: iload 6
ifeq 18
17: aload 1
bipush 40
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
18: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.oracle.js.parser.ir.TernaryNode.getFalseExpression:()Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
aload 1
iload 2
invokevirtual com.oracle.js.parser.ir.JoinPredecessorExpression.toString:(Ljava/lang/StringBuilder;Z)V
19: iload 6
ifeq 21
20: aload 1
bipush 41
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
21: StackMap locals:
StackMap stack:
return
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 22 0 this Lcom/oracle/js/parser/ir/TernaryNode;
0 22 1 sb Ljava/lang/StringBuilder;
0 22 2 printType Z
1 22 3 tokenType Lcom/oracle/js/parser/TokenType;
2 22 4 testParen Z
3 22 5 trueParen Z
4 22 6 falseParen Z
MethodParameters:
Name Flags
sb final
printType final
public com.oracle.js.parser.ir.Expression getTest();
descriptor: ()Lcom/oracle/js/parser/ir/Expression;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.js.parser.ir.TernaryNode.test:Lcom/oracle/js/parser/ir/Expression;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/js/parser/ir/TernaryNode;
public com.oracle.js.parser.ir.JoinPredecessorExpression getTrueExpression();
descriptor: ()Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.js.parser.ir.TernaryNode.trueExpr:Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/js/parser/ir/TernaryNode;
public com.oracle.js.parser.ir.JoinPredecessorExpression getFalseExpression();
descriptor: ()Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.oracle.js.parser.ir.TernaryNode.falseExpr:Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/js/parser/ir/TernaryNode;
public com.oracle.js.parser.ir.TernaryNode setTest(com.oracle.js.parser.ir.Expression);
descriptor: (Lcom/oracle/js/parser/ir/Expression;)Lcom/oracle/js/parser/ir/TernaryNode;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.js.parser.ir.TernaryNode.test:Lcom/oracle/js/parser/ir/Expression;
aload 1
if_acmpne 2
1: aload 0
areturn
2: StackMap locals:
StackMap stack:
new com.oracle.js.parser.ir.TernaryNode
dup
aload 0
aload 1
aload 0
getfield com.oracle.js.parser.ir.TernaryNode.trueExpr:Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
aload 0
getfield com.oracle.js.parser.ir.TernaryNode.falseExpr:Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
invokespecial com.oracle.js.parser.ir.TernaryNode.<init>:(Lcom/oracle/js/parser/ir/TernaryNode;Lcom/oracle/js/parser/ir/Expression;Lcom/oracle/js/parser/ir/JoinPredecessorExpression;Lcom/oracle/js/parser/ir/JoinPredecessorExpression;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/js/parser/ir/TernaryNode;
0 3 1 test Lcom/oracle/js/parser/ir/Expression;
MethodParameters:
Name Flags
test final
public com.oracle.js.parser.ir.TernaryNode setTrueExpression(com.oracle.js.parser.ir.JoinPredecessorExpression);
descriptor: (Lcom/oracle/js/parser/ir/JoinPredecessorExpression;)Lcom/oracle/js/parser/ir/TernaryNode;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.js.parser.ir.TernaryNode.trueExpr:Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
aload 1
if_acmpne 2
1: aload 0
areturn
2: StackMap locals:
StackMap stack:
new com.oracle.js.parser.ir.TernaryNode
dup
aload 0
aload 0
getfield com.oracle.js.parser.ir.TernaryNode.test:Lcom/oracle/js/parser/ir/Expression;
aload 1
aload 0
getfield com.oracle.js.parser.ir.TernaryNode.falseExpr:Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
invokespecial com.oracle.js.parser.ir.TernaryNode.<init>:(Lcom/oracle/js/parser/ir/TernaryNode;Lcom/oracle/js/parser/ir/Expression;Lcom/oracle/js/parser/ir/JoinPredecessorExpression;Lcom/oracle/js/parser/ir/JoinPredecessorExpression;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/js/parser/ir/TernaryNode;
0 3 1 trueExpr Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
MethodParameters:
Name Flags
trueExpr final
public com.oracle.js.parser.ir.TernaryNode setFalseExpression(com.oracle.js.parser.ir.JoinPredecessorExpression);
descriptor: (Lcom/oracle/js/parser/ir/JoinPredecessorExpression;)Lcom/oracle/js/parser/ir/TernaryNode;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.js.parser.ir.TernaryNode.falseExpr:Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
aload 1
if_acmpne 2
1: aload 0
areturn
2: StackMap locals:
StackMap stack:
new com.oracle.js.parser.ir.TernaryNode
dup
aload 0
aload 0
getfield com.oracle.js.parser.ir.TernaryNode.test:Lcom/oracle/js/parser/ir/Expression;
aload 0
getfield com.oracle.js.parser.ir.TernaryNode.trueExpr:Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
aload 1
invokespecial com.oracle.js.parser.ir.TernaryNode.<init>:(Lcom/oracle/js/parser/ir/TernaryNode;Lcom/oracle/js/parser/ir/Expression;Lcom/oracle/js/parser/ir/JoinPredecessorExpression;Lcom/oracle/js/parser/ir/JoinPredecessorExpression;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/js/parser/ir/TernaryNode;
0 3 1 falseExpr Lcom/oracle/js/parser/ir/JoinPredecessorExpression;
MethodParameters:
Name Flags
falseExpr final
}
SourceFile: "TernaryNode.java"