final class com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate extends com.sun.org.apache.xalan.internal.xsltc.compiler.Expression implements com.sun.org.apache.xalan.internal.xsltc.compiler.Closure
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate
super_class: com.sun.org.apache.xalan.internal.xsltc.compiler.Expression
{
private com.sun.org.apache.xalan.internal.xsltc.compiler.Expression _exp;
descriptor: Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
flags: (0x0002) ACC_PRIVATE
private boolean _canOptimize;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean _nthPositionFilter;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean _nthDescendant;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
int _ptype;
descriptor: I
flags: (0x0000)
private java.lang.String _className;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.util.List<com.sun.org.apache.xalan.internal.xsltc.compiler.VariableRefBase> _closureVars;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<Lcom/sun/org/apache/xalan/internal/xsltc/compiler/VariableRefBase;>;
private com.sun.org.apache.xalan.internal.xsltc.compiler.Closure _parentClosure;
descriptor: Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Closure;
flags: (0x0002) ACC_PRIVATE
private com.sun.org.apache.xalan.internal.xsltc.compiler.Expression _value;
descriptor: Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
flags: (0x0002) ACC_PRIVATE
private com.sun.org.apache.xalan.internal.xsltc.compiler.Step _step;
descriptor: Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Step;
flags: (0x0002) ACC_PRIVATE
public void <init>(com.sun.org.apache.xalan.internal.xsltc.compiler.Expression);
descriptor: (Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial com.sun.org.apache.xalan.internal.xsltc.compiler.Expression.<init>:()V
1: aload 0
aconst_null
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
2: aload 0
iconst_1
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._canOptimize:Z
3: aload 0
iconst_0
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._nthPositionFilter:Z
4: aload 0
iconst_0
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._nthDescendant:Z
5: aload 0
iconst_m1
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._ptype:I
6: aload 0
aconst_null
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._className:Ljava/lang/String;
7: aload 0
aconst_null
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._closureVars:Ljava/util/List;
8: aload 0
aconst_null
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._parentClosure:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Closure;
9: aload 0
aconst_null
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._value:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
10: aload 0
aconst_null
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._step:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Step;
11: aload 0
aload 1
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
12: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
aload 0
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Expression.setParent:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/SyntaxTreeNode;)V
13: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Predicate;
0 14 1 exp Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
MethodParameters:
Name Flags
exp
public void setParser(com.sun.org.apache.xalan.internal.xsltc.compiler.Parser);
descriptor: (Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Parser;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial com.sun.org.apache.xalan.internal.xsltc.compiler.Expression.setParser:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Parser;)V
1: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
aload 1
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Expression.setParser:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Parser;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Predicate;
0 3 1 parser Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Parser;
MethodParameters:
Name Flags
parser
public boolean isNthPositionFilter();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._nthPositionFilter:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Predicate;
public boolean isNthDescendant();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._nthDescendant:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Predicate;
public void dontOptimize();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._canOptimize:Z
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Predicate;
public boolean hasPositionCall();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Expression.hasPositionCall:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Predicate;
public boolean hasLastCall();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Expression.hasLastCall:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Predicate;
public boolean inInnerClass();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._className:Ljava/lang/String;
ifnull 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Predicate;
public com.sun.org.apache.xalan.internal.xsltc.compiler.Closure getParentClosure();
descriptor: ()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Closure;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._parentClosure:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Closure;
ifnonnull 9
1: aload 0
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate.getParent:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/SyntaxTreeNode;
astore 1
start local 1 2: StackMap locals: com.sun.org.apache.xalan.internal.xsltc.compiler.SyntaxTreeNode
StackMap stack:
aload 1
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.Closure
ifeq 5
3: aload 0
aload 1
checkcast com.sun.org.apache.xalan.internal.xsltc.compiler.Closure
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._parentClosure:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Closure;
4: goto 9
5: StackMap locals:
StackMap stack:
aload 1
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.TopLevelElement
ifeq 7
6: goto 9
7: StackMap locals:
StackMap stack:
aload 1
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.SyntaxTreeNode.getParent:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/SyntaxTreeNode;
astore 1
8: aload 1
ifnonnull 2
end local 1 9: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._parentClosure:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Closure;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Predicate;
2 9 1 node Lcom/sun/org/apache/xalan/internal/xsltc/compiler/SyntaxTreeNode;
public java.lang.String getInnerClassName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._className:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Predicate;
public void addVariable(com.sun.org.apache.xalan.internal.xsltc.compiler.VariableRefBase);
descriptor: (Lcom/sun/org/apache/xalan/internal/xsltc/compiler/VariableRefBase;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._closureVars:Ljava/util/List;
ifnonnull 2
1: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._closureVars:Ljava/util/List;
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._closureVars:Ljava/util/List;
aload 1
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifne 7
3: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._closureVars:Ljava/util/List;
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
4: aload 0
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate.getParentClosure:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Closure;
astore 2
start local 2 5: aload 2
ifnull 7
6: aload 2
aload 1
invokeinterface com.sun.org.apache.xalan.internal.xsltc.compiler.Closure.addVariable:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/VariableRefBase;)V
end local 2 7: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Predicate;
0 8 1 variableRef Lcom/sun/org/apache/xalan/internal/xsltc/compiler/VariableRefBase;
5 7 2 parentClosure Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Closure;
MethodParameters:
Name Flags
variableRef
public int getPosType();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=1
start local 0 0: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._ptype:I
iconst_m1
if_icmpne 20
1: aload 0
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate.getParent:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/SyntaxTreeNode;
astore 1
start local 1 2: aload 1
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.StepPattern
ifeq 5
3: aload 0
aload 1
checkcast com.sun.org.apache.xalan.internal.xsltc.compiler.StepPattern
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.StepPattern.getNodeType:()I
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._ptype:I
4: goto 20
5: StackMap locals: com.sun.org.apache.xalan.internal.xsltc.compiler.SyntaxTreeNode
StackMap stack:
aload 1
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.AbsoluteLocationPath
ifeq 11
6: aload 1
checkcast com.sun.org.apache.xalan.internal.xsltc.compiler.AbsoluteLocationPath
astore 2
start local 2 7: aload 2
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.AbsoluteLocationPath.getPath:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
astore 3
start local 3 8: aload 3
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.Step
ifeq 20
9: aload 0
aload 3
checkcast com.sun.org.apache.xalan.internal.xsltc.compiler.Step
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Step.getNodeType:()I
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._ptype:I
end local 3 end local 2 10: goto 20
11: StackMap locals:
StackMap stack:
aload 1
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.VariableRefBase
ifeq 18
12: aload 1
checkcast com.sun.org.apache.xalan.internal.xsltc.compiler.VariableRefBase
astore 2
start local 2 13: aload 2
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.VariableRefBase.getVariable:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/VariableBase;
astore 3
start local 3 14: aload 3
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.VariableBase.getExpression:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
astore 4
start local 4 15: aload 4
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.Step
ifeq 20
16: aload 0
aload 4
checkcast com.sun.org.apache.xalan.internal.xsltc.compiler.Step
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Step.getNodeType:()I
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._ptype:I
end local 4 end local 3 end local 2 17: goto 20
18: StackMap locals:
StackMap stack:
aload 1
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.Step
ifeq 20
19: aload 0
aload 1
checkcast com.sun.org.apache.xalan.internal.xsltc.compiler.Step
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Step.getNodeType:()I
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._ptype:I
end local 1 20: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._ptype:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Predicate;
2 20 1 parent Lcom/sun/org/apache/xalan/internal/xsltc/compiler/SyntaxTreeNode;
7 10 2 path Lcom/sun/org/apache/xalan/internal/xsltc/compiler/AbsoluteLocationPath;
8 10 3 exp Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
13 17 2 ref Lcom/sun/org/apache/xalan/internal/xsltc/compiler/VariableRefBase;
14 17 3 var Lcom/sun/org/apache/xalan/internal/xsltc/compiler/VariableBase;
15 17 4 exp Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
public boolean parentIsPattern();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate.getParent:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/SyntaxTreeNode;
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.Pattern
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Predicate;
public com.sun.org.apache.xalan.internal.xsltc.compiler.Expression getExpr();
descriptor: ()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Predicate;
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "pred("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
bipush 41
invokevirtual java.lang.StringBuilder.append:(C)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 Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Predicate;
public com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type typeCheck(com.sun.org.apache.xalan.internal.xsltc.compiler.SymbolTable);
descriptor: (Lcom/sun/org/apache/xalan/internal/xsltc/compiler/SymbolTable;)Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
aload 1
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Expression.typeCheck:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/SymbolTable;)Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
astore 2
start local 2 1: aload 2
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.util.ReferenceType
ifeq 3
2: aload 0
new com.sun.org.apache.xalan.internal.xsltc.compiler.CastExpr
dup
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
getstatic com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type.Real:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
dup
astore 2
invokespecial com.sun.org.apache.xalan.internal.xsltc.compiler.CastExpr.<init>:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;)V
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
3: StackMap locals: com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type
StackMap stack:
aload 2
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.util.ResultTreeType
ifeq 7
4: aload 0
new com.sun.org.apache.xalan.internal.xsltc.compiler.CastExpr
dup
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
getstatic com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type.Boolean:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
invokespecial com.sun.org.apache.xalan.internal.xsltc.compiler.CastExpr.<init>:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;)V
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
5: aload 0
new com.sun.org.apache.xalan.internal.xsltc.compiler.CastExpr
dup
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
getstatic com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type.Real:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
invokespecial com.sun.org.apache.xalan.internal.xsltc.compiler.CastExpr.<init>:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;)V
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
6: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
aload 1
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Expression.typeCheck:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/SymbolTable;)Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
astore 2
7: StackMap locals:
StackMap stack:
aload 2
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.util.NumberType
ifeq 35
8: aload 2
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.util.IntType
ifne 10
9: aload 0
new com.sun.org.apache.xalan.internal.xsltc.compiler.CastExpr
dup
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
getstatic com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type.Int:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
invokespecial com.sun.org.apache.xalan.internal.xsltc.compiler.CastExpr.<init>:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;)V
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
10: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._canOptimize:Z
ifeq 22
11: aload 0
12: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Expression.hasLastCall:()Z
ifne 13
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Expression.hasPositionCall:()Z
ifne 13
iconst_1
goto 14
StackMap locals:
StackMap stack: com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate
13: iconst_0
14: StackMap locals: com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate com.sun.org.apache.xalan.internal.xsltc.compiler.SymbolTable com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type
StackMap stack: com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate int
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._nthPositionFilter:Z
15: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._nthPositionFilter:Z
ifeq 22
16: aload 0
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate.getParent:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/SyntaxTreeNode;
astore 3
start local 3 17: aload 0
aload 3
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.Step
ifeq 19
18: aload 3
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.SyntaxTreeNode.getParent:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/SyntaxTreeNode;
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.AbsoluteLocationPath
ifeq 19
iconst_1
goto 20
StackMap locals: com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate com.sun.org.apache.xalan.internal.xsltc.compiler.SymbolTable com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type com.sun.org.apache.xalan.internal.xsltc.compiler.SyntaxTreeNode
StackMap stack: com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate
19: iconst_0
20: StackMap locals: com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate com.sun.org.apache.xalan.internal.xsltc.compiler.SymbolTable com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type com.sun.org.apache.xalan.internal.xsltc.compiler.SyntaxTreeNode
StackMap stack: com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate int
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._nthDescendant:Z
21: aload 0
getstatic com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type.NodeSet:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
dup_x1
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._type:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
areturn
end local 3 22: StackMap locals:
StackMap stack:
aload 0
aload 0
iconst_0
dup_x1
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._nthDescendant:Z
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._nthPositionFilter:Z
23: aload 0
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate.getParser:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Parser;
ldc "position"
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Parser.getQNameIgnoreDefaultNs:(Ljava/lang/String;)Lcom/sun/org/apache/xalan/internal/xsltc/compiler/QName;
24: astore 3
start local 3 25: new com.sun.org.apache.xalan.internal.xsltc.compiler.PositionCall
dup
aload 3
invokespecial com.sun.org.apache.xalan.internal.xsltc.compiler.PositionCall.<init>:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/QName;)V
26: astore 4
start local 4 27: aload 4
aload 0
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate.getParser:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Parser;
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.PositionCall.setParser:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Parser;)V
28: aload 4
aload 0
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.PositionCall.setParent:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/SyntaxTreeNode;)V
29: aload 0
new com.sun.org.apache.xalan.internal.xsltc.compiler.EqualityExpr
dup
iconst_0
aload 4
30: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
invokespecial com.sun.org.apache.xalan.internal.xsltc.compiler.EqualityExpr.<init>:(ILcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;)V
31: putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
32: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
aload 1
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Expression.typeCheck:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/SymbolTable;)Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
getstatic com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type.Boolean:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
if_acmpeq 34
33: aload 0
new com.sun.org.apache.xalan.internal.xsltc.compiler.CastExpr
dup
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
getstatic com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type.Boolean:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
invokespecial com.sun.org.apache.xalan.internal.xsltc.compiler.CastExpr.<init>:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;)V
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
34: StackMap locals: com.sun.org.apache.xalan.internal.xsltc.compiler.QName com.sun.org.apache.xalan.internal.xsltc.compiler.PositionCall
StackMap stack:
aload 0
getstatic com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type.Boolean:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
dup_x1
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._type:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
areturn
end local 4 end local 3 35: StackMap locals:
StackMap stack:
aload 2
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.util.BooleanType
ifne 37
36: aload 0
new com.sun.org.apache.xalan.internal.xsltc.compiler.CastExpr
dup
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
getstatic com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type.Boolean:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
invokespecial com.sun.org.apache.xalan.internal.xsltc.compiler.CastExpr.<init>:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;)V
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
37: StackMap locals:
StackMap stack:
aload 0
getstatic com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type.Boolean:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
dup_x1
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._type:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 38 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Predicate;
0 38 1 stable Lcom/sun/org/apache/xalan/internal/xsltc/compiler/SymbolTable;
1 38 2 texp Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
17 22 3 parent Lcom/sun/org/apache/xalan/internal/xsltc/compiler/SyntaxTreeNode;
25 35 3 position Lcom/sun/org/apache/xalan/internal/xsltc/compiler/QName;
27 35 4 positionCall Lcom/sun/org/apache/xalan/internal/xsltc/compiler/PositionCall;
Exceptions:
throws com.sun.org.apache.xalan.internal.xsltc.compiler.util.TypeCheckError
MethodParameters:
Name Flags
stable
private void compileFilter(com.sun.org.apache.xalan.internal.xsltc.compiler.util.ClassGenerator, com.sun.org.apache.xalan.internal.xsltc.compiler.util.MethodGenerator);
descriptor: (Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/ClassGenerator;Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=10, locals=10, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 0
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate.getXSLTC:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/XSLTC;
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.XSLTC.getHelperClassName:()Ljava/lang/String;
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._className:Ljava/lang/String;
1: new com.sun.org.apache.xalan.internal.xsltc.compiler.util.FilterGenerator
dup
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._className:Ljava/lang/String;
2: ldc "java.lang.Object"
3: aload 0
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate.toString:()Ljava/lang/String;
4: bipush 33
5: iconst_1
anewarray java.lang.String
dup
iconst_0
6: ldc "com.sun.org.apache.xalan.internal.xsltc.dom.CurrentNodeListFilter"
aastore
7: aload 1
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.util.ClassGenerator.getStylesheet:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Stylesheet;
8: invokespecial com.sun.org.apache.xalan.internal.xsltc.compiler.util.FilterGenerator.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I[Ljava/lang/String;Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Stylesheet;)V
astore 5
start local 5 9: aload 5
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.util.FilterGenerator.getConstantPool:()Lcom/sun/org/apache/bcel/internal/generic/ConstantPoolGen;
astore 6
start local 6 10: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._closureVars:Ljava/util/List;
ifnonnull 11
iconst_0
goto 12
StackMap locals: com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate com.sun.org.apache.xalan.internal.xsltc.compiler.util.ClassGenerator com.sun.org.apache.xalan.internal.xsltc.compiler.util.MethodGenerator top top com.sun.org.apache.xalan.internal.xsltc.compiler.util.FilterGenerator com.sun.org.apache.bcel.internal.generic.ConstantPoolGen
StackMap stack:
11: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._closureVars:Ljava/util/List;
invokeinterface java.util.List.size:()I
StackMap locals:
StackMap stack: int
12: istore 7
start local 7 13: iconst_0
istore 8
start local 8 14: goto 22
15: StackMap locals: int int
StackMap stack:
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._closureVars:Ljava/util/List;
iload 8
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.sun.org.apache.xalan.internal.xsltc.compiler.VariableRefBase
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.VariableRefBase.getVariable:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/VariableBase;
astore 9
start local 9 16: aload 5
new com.sun.org.apache.bcel.internal.classfile.Field
dup
iconst_1
17: aload 6
aload 9
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.VariableBase.getEscapedName:()Ljava/lang/String;
invokevirtual com.sun.org.apache.bcel.internal.generic.ConstantPoolGen.addUtf8:(Ljava/lang/String;)I
18: aload 6
aload 9
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.VariableBase.getType:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type.toSignature:()Ljava/lang/String;
invokevirtual com.sun.org.apache.bcel.internal.generic.ConstantPoolGen.addUtf8:(Ljava/lang/String;)I
19: aconst_null
aload 6
invokevirtual com.sun.org.apache.bcel.internal.generic.ConstantPoolGen.getConstantPool:()Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;
invokespecial com.sun.org.apache.bcel.internal.classfile.Field.<init>:(III[Lcom/sun/org/apache/bcel/internal/classfile/Attribute;Lcom/sun/org/apache/bcel/internal/classfile/ConstantPool;)V
20: invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.util.FilterGenerator.addField:(Lcom/sun/org/apache/bcel/internal/classfile/Field;)V
end local 9 21: iinc 8 1
StackMap locals:
StackMap stack:
22: iload 8
iload 7
if_icmplt 15
end local 8 23: new com.sun.org.apache.bcel.internal.generic.InstructionList
dup
invokespecial com.sun.org.apache.bcel.internal.generic.InstructionList.<init>:()V
astore 8
start local 8 24: new com.sun.org.apache.xalan.internal.xsltc.compiler.util.TestGenerator
dup
bipush 17
25: getstatic com.sun.org.apache.bcel.internal.generic.Type.BOOLEAN:Lcom/sun/org/apache/bcel/internal/generic/BasicType;
26: bipush 6
anewarray com.sun.org.apache.bcel.internal.generic.Type
dup
iconst_0
27: getstatic com.sun.org.apache.bcel.internal.generic.Type.INT:Lcom/sun/org/apache/bcel/internal/generic/BasicType;
aastore
dup
iconst_1
28: getstatic com.sun.org.apache.bcel.internal.generic.Type.INT:Lcom/sun/org/apache/bcel/internal/generic/BasicType;
aastore
dup
iconst_2
29: getstatic com.sun.org.apache.bcel.internal.generic.Type.INT:Lcom/sun/org/apache/bcel/internal/generic/BasicType;
aastore
dup
iconst_3
30: getstatic com.sun.org.apache.bcel.internal.generic.Type.INT:Lcom/sun/org/apache/bcel/internal/generic/BasicType;
aastore
dup
iconst_4
31: ldc "Lcom/sun/org/apache/xalan/internal/xsltc/runtime/AbstractTranslet;"
invokestatic com.sun.org.apache.xalan.internal.xsltc.compiler.util.Util.getJCRefType:(Ljava/lang/String;)Lcom/sun/org/apache/bcel/internal/generic/Type;
aastore
dup
iconst_5
32: ldc "Lcom/sun/org/apache/xml/internal/dtm/DTMAxisIterator;"
invokestatic com.sun.org.apache.xalan.internal.xsltc.compiler.util.Util.getJCRefType:(Ljava/lang/String;)Lcom/sun/org/apache/bcel/internal/generic/Type;
aastore
33: bipush 6
anewarray java.lang.String
dup
iconst_0
34: ldc "node"
aastore
dup
iconst_1
35: ldc "position"
aastore
dup
iconst_2
36: ldc "last"
aastore
dup
iconst_3
37: ldc "current"
aastore
dup
iconst_4
38: ldc "translet"
aastore
dup
iconst_5
39: ldc "iterator"
aastore
40: ldc "test"
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._className:Ljava/lang/String;
aload 8
aload 6
41: invokespecial com.sun.org.apache.xalan.internal.xsltc.compiler.util.TestGenerator.<init>:(ILcom/sun/org/apache/bcel/internal/generic/Type;[Lcom/sun/org/apache/bcel/internal/generic/Type;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/sun/org/apache/bcel/internal/generic/InstructionList;Lcom/sun/org/apache/bcel/internal/generic/ConstantPoolGen;)V
astore 3
start local 3 42: aload 3
ldc "document"
43: ldc "Lcom/sun/org/apache/xalan/internal/xsltc/DOM;"
invokestatic com.sun.org.apache.xalan.internal.xsltc.compiler.util.Util.getJCRefType:(Ljava/lang/String;)Lcom/sun/org/apache/bcel/internal/generic/Type;
44: aconst_null
aconst_null
45: invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.util.TestGenerator.addLocalVariable:(Ljava/lang/String;Lcom/sun/org/apache/bcel/internal/generic/Type;Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;)Lcom/sun/org/apache/bcel/internal/generic/LocalVariableGen;
astore 4
start local 4 46: aload 1
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.util.ClassGenerator.getClassName:()Ljava/lang/String;
astore 9
start local 9 47: aload 8
aload 5
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.util.FilterGenerator.loadTranslet:()Lcom/sun/org/apache/bcel/internal/generic/Instruction;
invokevirtual com.sun.org.apache.bcel.internal.generic.InstructionList.append:(Lcom/sun/org/apache/bcel/internal/generic/Instruction;)Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
pop
48: aload 8
new com.sun.org.apache.bcel.internal.generic.CHECKCAST
dup
aload 6
aload 9
invokevirtual com.sun.org.apache.bcel.internal.generic.ConstantPoolGen.addClass:(Ljava/lang/String;)I
invokespecial com.sun.org.apache.bcel.internal.generic.CHECKCAST.<init>:(I)V
invokevirtual com.sun.org.apache.bcel.internal.generic.InstructionList.append:(Lcom/sun/org/apache/bcel/internal/generic/Instruction;)Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
pop
49: aload 8
new com.sun.org.apache.bcel.internal.generic.GETFIELD
dup
aload 6
aload 9
50: ldc "_dom"
ldc "Lcom/sun/org/apache/xalan/internal/xsltc/DOM;"
51: invokevirtual com.sun.org.apache.bcel.internal.generic.ConstantPoolGen.addFieldref:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I
invokespecial com.sun.org.apache.bcel.internal.generic.GETFIELD.<init>:(I)V
invokevirtual com.sun.org.apache.bcel.internal.generic.InstructionList.append:(Lcom/sun/org/apache/bcel/internal/generic/Instruction;)Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
pop
52: aload 4
aload 8
new com.sun.org.apache.bcel.internal.generic.ASTORE
dup
aload 4
invokevirtual com.sun.org.apache.bcel.internal.generic.LocalVariableGen.getIndex:()I
invokespecial com.sun.org.apache.bcel.internal.generic.ASTORE.<init>:(I)V
invokevirtual com.sun.org.apache.bcel.internal.generic.InstructionList.append:(Lcom/sun/org/apache/bcel/internal/generic/Instruction;)Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
invokevirtual com.sun.org.apache.bcel.internal.generic.LocalVariableGen.setStart:(Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;)V
53: aload 3
aload 4
invokevirtual com.sun.org.apache.bcel.internal.generic.LocalVariableGen.getIndex:()I
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.util.TestGenerator.setDomIndex:(I)V
54: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
aload 5
aload 3
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Expression.translate:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/ClassGenerator;Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator;)V
55: aload 8
getstatic com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate.IRETURN:Lcom/sun/org/apache/bcel/internal/generic/ReturnInstruction;
invokevirtual com.sun.org.apache.bcel.internal.generic.InstructionList.append:(Lcom/sun/org/apache/bcel/internal/generic/Instruction;)Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
pop
56: aload 5
iconst_1
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.util.FilterGenerator.addEmptyConstructor:(I)V
57: aload 5
aload 3
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.util.FilterGenerator.addMethod:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator;)V
58: aload 0
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate.getXSLTC:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/XSLTC;
aload 5
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.util.FilterGenerator.getJavaClass:()Lcom/sun/org/apache/bcel/internal/classfile/JavaClass;
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.XSLTC.dumpClass:(Lcom/sun/org/apache/bcel/internal/classfile/JavaClass;)V
59: return
end local 9 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 60 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Predicate;
0 60 1 classGen Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/ClassGenerator;
0 60 2 methodGen Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator;
42 60 3 testGen Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/TestGenerator;
46 60 4 local Lcom/sun/org/apache/bcel/internal/generic/LocalVariableGen;
9 60 5 filterGen Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/FilterGenerator;
10 60 6 cpg Lcom/sun/org/apache/bcel/internal/generic/ConstantPoolGen;
13 60 7 length I
14 23 8 i I
16 21 9 var Lcom/sun/org/apache/xalan/internal/xsltc/compiler/VariableBase;
24 60 8 il Lcom/sun/org/apache/bcel/internal/generic/InstructionList;
47 60 9 className Ljava/lang/String;
MethodParameters:
Name Flags
classGen
methodGen
public boolean isBooleanTest();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.BooleanExpr
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Predicate;
public boolean isNodeValueTest();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._canOptimize:Z
ifne 1
iconst_0
ireturn
1: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate.getStep:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Step;
ifnull 2
aload 0
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate.getCompareValue:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
ifnull 2
iconst_1
ireturn
StackMap locals:
StackMap stack:
2: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Predicate;
public com.sun.org.apache.xalan.internal.xsltc.compiler.Step getStep();
descriptor: ()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Step;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._step:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Step;
ifnull 2
1: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._step:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Step;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
ifnonnull 4
3: aconst_null
areturn
4: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.EqualityExpr
ifeq 16
5: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
checkcast com.sun.org.apache.xalan.internal.xsltc.compiler.EqualityExpr
astore 1
start local 1 6: aload 1
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.EqualityExpr.getLeft:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
astore 2
start local 2 7: aload 1
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.EqualityExpr.getRight:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
astore 3
start local 3 8: aload 2
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.CastExpr
ifeq 10
9: aload 2
checkcast com.sun.org.apache.xalan.internal.xsltc.compiler.CastExpr
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.CastExpr.getExpr:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
astore 2
10: StackMap locals: com.sun.org.apache.xalan.internal.xsltc.compiler.EqualityExpr com.sun.org.apache.xalan.internal.xsltc.compiler.Expression com.sun.org.apache.xalan.internal.xsltc.compiler.Expression
StackMap stack:
aload 2
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.Step
ifeq 12
11: aload 0
aload 2
checkcast com.sun.org.apache.xalan.internal.xsltc.compiler.Step
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._step:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Step;
12: StackMap locals:
StackMap stack:
aload 3
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.CastExpr
ifeq 14
13: aload 3
checkcast com.sun.org.apache.xalan.internal.xsltc.compiler.CastExpr
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.CastExpr.getExpr:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
astore 3
14: StackMap locals:
StackMap stack:
aload 3
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.Step
ifeq 16
15: aload 0
aload 3
checkcast com.sun.org.apache.xalan.internal.xsltc.compiler.Step
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._step:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Step;
end local 3 end local 2 end local 1 16: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._step:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Step;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Predicate;
6 16 1 exp Lcom/sun/org/apache/xalan/internal/xsltc/compiler/EqualityExpr;
7 16 2 left Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
8 16 3 right Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
public com.sun.org.apache.xalan.internal.xsltc.compiler.Expression getCompareValue();
descriptor: ()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._value:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
ifnull 2
1: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._value:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
ifnonnull 4
3: aconst_null
areturn
4: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.EqualityExpr
ifeq 22
5: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
checkcast com.sun.org.apache.xalan.internal.xsltc.compiler.EqualityExpr
astore 1
start local 1 6: aload 1
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.EqualityExpr.getLeft:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
astore 2
start local 2 7: aload 1
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.EqualityExpr.getRight:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
astore 3
start local 3 8: aload 2
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.LiteralExpr
ifeq 11
9: aload 0
aload 2
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._value:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
10: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._value:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
areturn
11: StackMap locals: com.sun.org.apache.xalan.internal.xsltc.compiler.EqualityExpr com.sun.org.apache.xalan.internal.xsltc.compiler.Expression com.sun.org.apache.xalan.internal.xsltc.compiler.Expression
StackMap stack:
aload 2
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.VariableRefBase
ifeq 15
12: aload 2
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Expression.getType:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
getstatic com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type.String:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
if_acmpne 15
13: aload 0
aload 2
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._value:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
14: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._value:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
areturn
15: StackMap locals:
StackMap stack:
aload 3
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.LiteralExpr
ifeq 18
16: aload 0
aload 3
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._value:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
17: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._value:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
areturn
18: StackMap locals:
StackMap stack:
aload 3
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.VariableRefBase
ifeq 22
19: aload 3
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Expression.getType:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
getstatic com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type.String:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
if_acmpne 22
20: aload 0
aload 3
putfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._value:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
21: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._value:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
areturn
end local 3 end local 2 end local 1 22: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Predicate;
6 22 1 exp Lcom/sun/org/apache/xalan/internal/xsltc/compiler/EqualityExpr;
7 22 2 left Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
8 22 3 right Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
public void translateFilter(com.sun.org.apache.xalan.internal.xsltc.compiler.util.ClassGenerator, com.sun.org.apache.xalan.internal.xsltc.compiler.util.MethodGenerator);
descriptor: (Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/ClassGenerator;Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=11, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.util.ClassGenerator.getConstantPool:()Lcom/sun/org/apache/bcel/internal/generic/ConstantPoolGen;
astore 3
start local 3 1: aload 2
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.util.MethodGenerator.getInstructionList:()Lcom/sun/org/apache/bcel/internal/generic/InstructionList;
astore 4
start local 4 2: aload 0
aload 1
aload 2
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate.compileFilter:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/ClassGenerator;Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator;)V
3: aload 4
new com.sun.org.apache.bcel.internal.generic.NEW
dup
aload 3
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._className:Ljava/lang/String;
invokevirtual com.sun.org.apache.bcel.internal.generic.ConstantPoolGen.addClass:(Ljava/lang/String;)I
invokespecial com.sun.org.apache.bcel.internal.generic.NEW.<init>:(I)V
invokevirtual com.sun.org.apache.bcel.internal.generic.InstructionList.append:(Lcom/sun/org/apache/bcel/internal/generic/Instruction;)Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
pop
4: aload 4
getstatic com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate.DUP:Lcom/sun/org/apache/bcel/internal/generic/StackInstruction;
invokevirtual com.sun.org.apache.bcel.internal.generic.InstructionList.append:(Lcom/sun/org/apache/bcel/internal/generic/Instruction;)Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
pop
5: aload 4
new com.sun.org.apache.bcel.internal.generic.INVOKESPECIAL
dup
aload 3
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._className:Ljava/lang/String;
6: ldc "<init>"
ldc "()V"
7: invokevirtual com.sun.org.apache.bcel.internal.generic.ConstantPoolGen.addMethodref:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I
invokespecial com.sun.org.apache.bcel.internal.generic.INVOKESPECIAL.<init>:(I)V
invokevirtual com.sun.org.apache.bcel.internal.generic.InstructionList.append:(Lcom/sun/org/apache/bcel/internal/generic/Instruction;)Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
pop
8: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._closureVars:Ljava/util/List;
ifnonnull 9
iconst_0
goto 10
StackMap locals: com.sun.org.apache.bcel.internal.generic.ConstantPoolGen com.sun.org.apache.bcel.internal.generic.InstructionList
StackMap stack:
9: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._closureVars:Ljava/util/List;
invokeinterface java.util.List.size:()I
StackMap locals:
StackMap stack: int
10: istore 5
start local 5 11: iconst_0
istore 6
start local 6 12: goto 37
13: StackMap locals: int int
StackMap stack:
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._closureVars:Ljava/util/List;
iload 6
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.sun.org.apache.xalan.internal.xsltc.compiler.VariableRefBase
astore 7
start local 7 14: aload 7
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.VariableRefBase.getVariable:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/VariableBase;
astore 8
start local 8 15: aload 8
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.VariableBase.getType:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
astore 9
start local 9 16: aload 4
getstatic com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate.DUP:Lcom/sun/org/apache/bcel/internal/generic/StackInstruction;
invokevirtual com.sun.org.apache.bcel.internal.generic.InstructionList.append:(Lcom/sun/org/apache/bcel/internal/generic/Instruction;)Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
pop
17: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._parentClosure:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Closure;
astore 10
start local 10 18: goto 21
19: StackMap locals: com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate com.sun.org.apache.xalan.internal.xsltc.compiler.util.ClassGenerator com.sun.org.apache.xalan.internal.xsltc.compiler.util.MethodGenerator com.sun.org.apache.bcel.internal.generic.ConstantPoolGen com.sun.org.apache.bcel.internal.generic.InstructionList int int com.sun.org.apache.xalan.internal.xsltc.compiler.VariableRefBase com.sun.org.apache.xalan.internal.xsltc.compiler.VariableBase com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type com.sun.org.apache.xalan.internal.xsltc.compiler.Closure
StackMap stack:
aload 10
invokeinterface com.sun.org.apache.xalan.internal.xsltc.compiler.Closure.inInnerClass:()Z
ifeq 20
goto 22
20: StackMap locals:
StackMap stack:
aload 10
invokeinterface com.sun.org.apache.xalan.internal.xsltc.compiler.Closure.getParentClosure:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Closure;
astore 10
21: StackMap locals:
StackMap stack:
aload 10
ifnonnull 19
22: StackMap locals:
StackMap stack:
aload 10
ifnull 30
23: aload 4
getstatic com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate.ALOAD_0:Lcom/sun/org/apache/bcel/internal/generic/LocalVariableInstruction;
invokevirtual com.sun.org.apache.bcel.internal.generic.InstructionList.append:(Lcom/sun/org/apache/bcel/internal/generic/Instruction;)Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
pop
24: aload 4
new com.sun.org.apache.bcel.internal.generic.GETFIELD
dup
25: aload 3
aload 10
invokeinterface com.sun.org.apache.xalan.internal.xsltc.compiler.Closure.getInnerClassName:()Ljava/lang/String;
26: aload 8
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.VariableBase.getEscapedName:()Ljava/lang/String;
aload 9
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type.toSignature:()Ljava/lang/String;
27: invokevirtual com.sun.org.apache.bcel.internal.generic.ConstantPoolGen.addFieldref:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I
invokespecial com.sun.org.apache.bcel.internal.generic.GETFIELD.<init>:(I)V
28: invokevirtual com.sun.org.apache.bcel.internal.generic.InstructionList.append:(Lcom/sun/org/apache/bcel/internal/generic/Instruction;)Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
pop
29: goto 31
30: StackMap locals:
StackMap stack:
aload 4
aload 8
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.VariableBase.loadInstruction:()Lcom/sun/org/apache/bcel/internal/generic/Instruction;
invokevirtual com.sun.org.apache.bcel.internal.generic.InstructionList.append:(Lcom/sun/org/apache/bcel/internal/generic/Instruction;)Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
pop
31: StackMap locals:
StackMap stack:
aload 4
new com.sun.org.apache.bcel.internal.generic.PUTFIELD
dup
32: aload 3
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._className:Ljava/lang/String;
aload 8
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.VariableBase.getEscapedName:()Ljava/lang/String;
33: aload 9
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.util.Type.toSignature:()Ljava/lang/String;
34: invokevirtual com.sun.org.apache.bcel.internal.generic.ConstantPoolGen.addFieldref:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I
invokespecial com.sun.org.apache.bcel.internal.generic.PUTFIELD.<init>:(I)V
35: invokevirtual com.sun.org.apache.bcel.internal.generic.InstructionList.append:(Lcom/sun/org/apache/bcel/internal/generic/Instruction;)Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
pop
end local 10 end local 9 end local 8 end local 7 36: iinc 6 1
StackMap locals: com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate com.sun.org.apache.xalan.internal.xsltc.compiler.util.ClassGenerator com.sun.org.apache.xalan.internal.xsltc.compiler.util.MethodGenerator com.sun.org.apache.bcel.internal.generic.ConstantPoolGen com.sun.org.apache.bcel.internal.generic.InstructionList int int
StackMap stack:
37: iload 6
iload 5
if_icmplt 13
end local 6 38: return
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 39 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Predicate;
0 39 1 classGen Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/ClassGenerator;
0 39 2 methodGen Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator;
1 39 3 cpg Lcom/sun/org/apache/bcel/internal/generic/ConstantPoolGen;
2 39 4 il Lcom/sun/org/apache/bcel/internal/generic/InstructionList;
11 39 5 length I
12 38 6 i I
14 36 7 varRef Lcom/sun/org/apache/xalan/internal/xsltc/compiler/VariableRefBase;
15 36 8 var Lcom/sun/org/apache/xalan/internal/xsltc/compiler/VariableBase;
16 36 9 varType Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/Type;
18 36 10 variableClosure Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Closure;
MethodParameters:
Name Flags
classGen
methodGen
public void translate(com.sun.org.apache.xalan.internal.xsltc.compiler.util.ClassGenerator, com.sun.org.apache.xalan.internal.xsltc.compiler.util.MethodGenerator);
descriptor: (Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/ClassGenerator;Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.util.ClassGenerator.getConstantPool:()Lcom/sun/org/apache/bcel/internal/generic/ConstantPoolGen;
astore 3
start local 3 1: aload 2
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.util.MethodGenerator.getInstructionList:()Lcom/sun/org/apache/bcel/internal/generic/InstructionList;
astore 4
start local 4 2: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._nthPositionFilter:Z
ifne 3
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._nthDescendant:Z
ifeq 5
3: StackMap locals: com.sun.org.apache.bcel.internal.generic.ConstantPoolGen com.sun.org.apache.bcel.internal.generic.InstructionList
StackMap stack:
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
aload 1
aload 2
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Expression.translate:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/ClassGenerator;Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator;)V
4: goto 11
5: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate.isNodeValueTest:()Z
ifeq 10
aload 0
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate.getParent:()Lcom/sun/org/apache/xalan/internal/xsltc/compiler/SyntaxTreeNode;
instanceof com.sun.org.apache.xalan.internal.xsltc.compiler.Step
ifeq 10
6: aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._value:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
aload 1
aload 2
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Expression.translate:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/ClassGenerator;Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator;)V
7: aload 4
new com.sun.org.apache.bcel.internal.generic.CHECKCAST
dup
aload 3
ldc "java.lang.String"
invokevirtual com.sun.org.apache.bcel.internal.generic.ConstantPoolGen.addClass:(Ljava/lang/String;)I
invokespecial com.sun.org.apache.bcel.internal.generic.CHECKCAST.<init>:(I)V
invokevirtual com.sun.org.apache.bcel.internal.generic.InstructionList.append:(Lcom/sun/org/apache/bcel/internal/generic/Instruction;)Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
pop
8: aload 4
new com.sun.org.apache.bcel.internal.generic.PUSH
dup
aload 3
aload 0
getfield com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate._exp:Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Expression;
checkcast com.sun.org.apache.xalan.internal.xsltc.compiler.EqualityExpr
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.EqualityExpr.getOp:()Z
invokespecial com.sun.org.apache.bcel.internal.generic.PUSH.<init>:(Lcom/sun/org/apache/bcel/internal/generic/ConstantPoolGen;Z)V
invokevirtual com.sun.org.apache.bcel.internal.generic.InstructionList.append:(Lcom/sun/org/apache/bcel/internal/generic/CompoundInstruction;)Lcom/sun/org/apache/bcel/internal/generic/InstructionHandle;
pop
9: goto 11
10: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual com.sun.org.apache.xalan.internal.xsltc.compiler.Predicate.translateFilter:(Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/ClassGenerator;Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator;)V
11: 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 12 0 this Lcom/sun/org/apache/xalan/internal/xsltc/compiler/Predicate;
0 12 1 classGen Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/ClassGenerator;
0 12 2 methodGen Lcom/sun/org/apache/xalan/internal/xsltc/compiler/util/MethodGenerator;
1 12 3 cpg Lcom/sun/org/apache/bcel/internal/generic/ConstantPoolGen;
2 12 4 il Lcom/sun/org/apache/bcel/internal/generic/InstructionList;
MethodParameters:
Name Flags
classGen
methodGen
}
SourceFile: "Predicate.java"