public class org.apache.xpath.axes.WalkingIterator extends org.apache.xpath.axes.LocPathIterator implements org.apache.xpath.ExpressionOwner
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.xpath.axes.WalkingIterator
super_class: org.apache.xpath.axes.LocPathIterator
{
static final long serialVersionUID;
descriptor: J
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 9110225941815665906
protected org.apache.xpath.axes.AxesWalker m_lastUsedWalker;
descriptor: Lorg/apache/xpath/axes/AxesWalker;
flags: (0x0004) ACC_PROTECTED
protected org.apache.xpath.axes.AxesWalker m_firstWalker;
descriptor: Lorg/apache/xpath/axes/AxesWalker;
flags: (0x0004) ACC_PROTECTED
void <init>(org.apache.xpath.compiler.Compiler, int, int, boolean);
descriptor: (Lorg/apache/xpath/compiler/Compiler;IIZ)V
flags: (0x0000)
Code:
stack=5, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
iload 2
iload 3
iload 4
invokespecial org.apache.xpath.axes.LocPathIterator.<init>:(Lorg/apache/xpath/compiler/Compiler;IIZ)V
1: iload 2
invokestatic org.apache.xpath.compiler.OpMap.getFirstChildPos:(I)I
istore 5
start local 5 2: iload 4
ifeq 5
3: aload 0
aload 0
aload 1
iload 5
iconst_0
invokestatic org.apache.xpath.axes.WalkerFactory.loadWalkers:(Lorg/apache/xpath/axes/WalkingIterator;Lorg/apache/xpath/compiler/Compiler;II)Lorg/apache/xpath/axes/AxesWalker;
putfield org.apache.xpath.axes.WalkingIterator.m_firstWalker:Lorg/apache/xpath/axes/AxesWalker;
4: aload 0
aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_firstWalker:Lorg/apache/xpath/axes/AxesWalker;
putfield org.apache.xpath.axes.WalkingIterator.m_lastUsedWalker:Lorg/apache/xpath/axes/AxesWalker;
5: StackMap locals: org.apache.xpath.axes.WalkingIterator org.apache.xpath.compiler.Compiler int int int int
StackMap stack:
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 6 0 this Lorg/apache/xpath/axes/WalkingIterator;
0 6 1 compiler Lorg/apache/xpath/compiler/Compiler;
0 6 2 opPos I
0 6 3 analysis I
0 6 4 shouldLoadWalkers Z
2 6 5 firstStepPos I
Exceptions:
throws javax.xml.transform.TransformerException
MethodParameters:
Name Flags
compiler
opPos
analysis
shouldLoadWalkers
public void <init>(org.apache.xml.utils.PrefixResolver);
descriptor: (Lorg/apache/xml/utils/PrefixResolver;)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 org.apache.xpath.axes.LocPathIterator.<init>:(Lorg/apache/xml/utils/PrefixResolver;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/xpath/axes/WalkingIterator;
0 2 1 nscontext Lorg/apache/xml/utils/PrefixResolver;
MethodParameters:
Name Flags
nscontext
public int getAnalysisBits();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_firstWalker:Lorg/apache/xpath/axes/AxesWalker;
ifnull 8
2: aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_firstWalker:Lorg/apache/xpath/axes/AxesWalker;
astore 2
start local 2 3: goto 7
4: StackMap locals: int org.apache.xpath.axes.AxesWalker
StackMap stack:
aload 2
invokevirtual org.apache.xpath.axes.AxesWalker.getAnalysisBits:()I
istore 3
start local 3 5: iload 1
iload 3
ior
istore 1
6: aload 2
invokevirtual org.apache.xpath.axes.AxesWalker.getNextWalker:()Lorg/apache/xpath/axes/AxesWalker;
astore 2
end local 3 7: StackMap locals:
StackMap stack:
aload 2
ifnonnull 4
end local 2 8: StackMap locals:
StackMap stack:
iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/apache/xpath/axes/WalkingIterator;
1 9 1 bits I
3 8 2 walker Lorg/apache/xpath/axes/AxesWalker;
5 7 3 bit I
public java.lang.Object clone();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
invokespecial org.apache.xpath.axes.LocPathIterator.clone:()Ljava/lang/Object;
checkcast org.apache.xpath.axes.WalkingIterator
astore 1
start local 1 1: aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_firstWalker:Lorg/apache/xpath/axes/AxesWalker;
ifnull 3
2: aload 1
aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_firstWalker:Lorg/apache/xpath/axes/AxesWalker;
aload 1
aconst_null
invokevirtual org.apache.xpath.axes.AxesWalker.cloneDeep:(Lorg/apache/xpath/axes/WalkingIterator;Ljava/util/Vector;)Lorg/apache/xpath/axes/AxesWalker;
putfield org.apache.xpath.axes.WalkingIterator.m_firstWalker:Lorg/apache/xpath/axes/AxesWalker;
3: StackMap locals: org.apache.xpath.axes.WalkingIterator
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/xpath/axes/WalkingIterator;
1 4 1 clone Lorg/apache/xpath/axes/WalkingIterator;
Exceptions:
throws java.lang.CloneNotSupportedException
public void reset();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.apache.xpath.axes.LocPathIterator.reset:()V
1: aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_firstWalker:Lorg/apache/xpath/axes/AxesWalker;
ifnull 4
2: aload 0
aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_firstWalker:Lorg/apache/xpath/axes/AxesWalker;
putfield org.apache.xpath.axes.WalkingIterator.m_lastUsedWalker:Lorg/apache/xpath/axes/AxesWalker;
3: aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_firstWalker:Lorg/apache/xpath/axes/AxesWalker;
aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_context:I
invokevirtual org.apache.xpath.axes.AxesWalker.setRoot:(I)V
4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/xpath/axes/WalkingIterator;
public void setRoot(int, java.lang.Object);
descriptor: (ILjava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
aload 2
invokespecial org.apache.xpath.axes.LocPathIterator.setRoot:(ILjava/lang/Object;)V
1: aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_firstWalker:Lorg/apache/xpath/axes/AxesWalker;
ifnull 4
2: aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_firstWalker:Lorg/apache/xpath/axes/AxesWalker;
iload 1
invokevirtual org.apache.xpath.axes.AxesWalker.setRoot:(I)V
3: aload 0
aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_firstWalker:Lorg/apache/xpath/axes/AxesWalker;
putfield org.apache.xpath.axes.WalkingIterator.m_lastUsedWalker:Lorg/apache/xpath/axes/AxesWalker;
4: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/xpath/axes/WalkingIterator;
0 5 1 context I
0 5 2 environment Ljava/lang/Object;
MethodParameters:
Name Flags
context
environment
public int nextNode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_foundLast:Z
ifeq 2
1: iconst_m1
ireturn
2: StackMap locals:
StackMap stack:
iconst_m1
aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_stackFrame:I
if_icmpne 4
3: aload 0
aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_firstWalker:Lorg/apache/xpath/axes/AxesWalker;
invokevirtual org.apache.xpath.axes.AxesWalker.nextNode:()I
invokevirtual org.apache.xpath.axes.WalkingIterator.returnNextNode:(I)I
ireturn
4: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_execContext:Lorg/apache/xpath/XPathContext;
invokevirtual org.apache.xpath.XPathContext.getVarStack:()Lorg/apache/xpath/VariableStack;
astore 1
start local 1 5: aload 1
invokevirtual org.apache.xpath.VariableStack.getStackFrame:()I
istore 2
start local 2 6: aload 1
aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_stackFrame:I
invokevirtual org.apache.xpath.VariableStack.setStackFrame:(I)V
7: aload 0
aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_firstWalker:Lorg/apache/xpath/axes/AxesWalker;
invokevirtual org.apache.xpath.axes.AxesWalker.nextNode:()I
invokevirtual org.apache.xpath.axes.WalkingIterator.returnNextNode:(I)I
istore 3
start local 3 8: aload 1
iload 2
invokevirtual org.apache.xpath.VariableStack.setStackFrame:(I)V
9: iload 3
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/apache/xpath/axes/WalkingIterator;
5 10 1 vars Lorg/apache/xpath/VariableStack;
6 10 2 savedStart I
8 10 3 n I
public final org.apache.xpath.axes.AxesWalker getFirstWalker();
descriptor: ()Lorg/apache/xpath/axes/AxesWalker;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_firstWalker:Lorg/apache/xpath/axes/AxesWalker;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/xpath/axes/WalkingIterator;
public final void setFirstWalker(org.apache.xpath.axes.AxesWalker);
descriptor: (Lorg/apache/xpath/axes/AxesWalker;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.apache.xpath.axes.WalkingIterator.m_firstWalker:Lorg/apache/xpath/axes/AxesWalker;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/xpath/axes/WalkingIterator;
0 2 1 walker Lorg/apache/xpath/axes/AxesWalker;
MethodParameters:
Name Flags
walker
public final void setLastUsedWalker(org.apache.xpath.axes.AxesWalker);
descriptor: (Lorg/apache/xpath/axes/AxesWalker;)V
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.apache.xpath.axes.WalkingIterator.m_lastUsedWalker:Lorg/apache/xpath/axes/AxesWalker;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/xpath/axes/WalkingIterator;
0 2 1 walker Lorg/apache/xpath/axes/AxesWalker;
MethodParameters:
Name Flags
walker
public final org.apache.xpath.axes.AxesWalker getLastUsedWalker();
descriptor: ()Lorg/apache/xpath/axes/AxesWalker;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_lastUsedWalker:Lorg/apache/xpath/axes/AxesWalker;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/xpath/axes/WalkingIterator;
public void detach();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_allowDetach:Z
ifeq 8
1: aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_firstWalker:Lorg/apache/xpath/axes/AxesWalker;
astore 1
start local 1 2: goto 5
3: StackMap locals: org.apache.xpath.axes.AxesWalker
StackMap stack:
aload 1
invokevirtual org.apache.xpath.axes.AxesWalker.detach:()V
4: aload 1
invokevirtual org.apache.xpath.axes.AxesWalker.getNextWalker:()Lorg/apache/xpath/axes/AxesWalker;
astore 1
5: StackMap locals:
StackMap stack:
aload 1
ifnonnull 3
6: aload 0
aconst_null
putfield org.apache.xpath.axes.WalkingIterator.m_lastUsedWalker:Lorg/apache/xpath/axes/AxesWalker;
7: aload 0
invokespecial org.apache.xpath.axes.LocPathIterator.detach:()V
end local 1 8: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/apache/xpath/axes/WalkingIterator;
2 8 1 walker Lorg/apache/xpath/axes/AxesWalker;
public void fixupVariables(java.util.Vector, int);
descriptor: (Ljava/util/Vector;I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iconst_m1
putfield org.apache.xpath.axes.WalkingIterator.m_predicateIndex:I
1: aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_firstWalker:Lorg/apache/xpath/axes/AxesWalker;
astore 3
start local 3 2: goto 5
3: StackMap locals: org.apache.xpath.axes.AxesWalker
StackMap stack:
aload 3
aload 1
iload 2
invokevirtual org.apache.xpath.axes.AxesWalker.fixupVariables:(Ljava/util/Vector;I)V
4: aload 3
invokevirtual org.apache.xpath.axes.AxesWalker.getNextWalker:()Lorg/apache/xpath/axes/AxesWalker;
astore 3
5: StackMap locals:
StackMap stack:
aload 3
ifnonnull 3
6: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/xpath/axes/WalkingIterator;
0 7 1 vars Ljava/util/Vector;
0 7 2 globalsSize I
2 7 3 walker Lorg/apache/xpath/axes/AxesWalker;
MethodParameters:
Name Flags
vars
globalsSize
public void callVisitors(org.apache.xpath.ExpressionOwner, org.apache.xpath.XPathVisitor);
descriptor: (Lorg/apache/xpath/ExpressionOwner;Lorg/apache/xpath/XPathVisitor;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
aload 1
aload 0
invokevirtual org.apache.xpath.XPathVisitor.visitLocationPath:(Lorg/apache/xpath/ExpressionOwner;Lorg/apache/xpath/axes/LocPathIterator;)Z
ifeq 3
1: aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_firstWalker:Lorg/apache/xpath/axes/AxesWalker;
ifnull 3
2: aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_firstWalker:Lorg/apache/xpath/axes/AxesWalker;
aload 0
aload 2
invokevirtual org.apache.xpath.axes.AxesWalker.callVisitors:(Lorg/apache/xpath/ExpressionOwner;Lorg/apache/xpath/XPathVisitor;)V
3: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/xpath/axes/WalkingIterator;
0 4 1 owner Lorg/apache/xpath/ExpressionOwner;
0 4 2 visitor Lorg/apache/xpath/XPathVisitor;
MethodParameters:
Name Flags
owner
visitor
public org.apache.xpath.Expression getExpression();
descriptor: ()Lorg/apache/xpath/Expression;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_firstWalker:Lorg/apache/xpath/axes/AxesWalker;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/xpath/axes/WalkingIterator;
public void setExpression(org.apache.xpath.Expression);
descriptor: (Lorg/apache/xpath/Expression;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
invokevirtual org.apache.xpath.Expression.exprSetParent:(Lorg/apache/xpath/ExpressionNode;)V
1: aload 0
aload 1
checkcast org.apache.xpath.axes.AxesWalker
putfield org.apache.xpath.axes.WalkingIterator.m_firstWalker:Lorg/apache/xpath/axes/AxesWalker;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/xpath/axes/WalkingIterator;
0 3 1 exp Lorg/apache/xpath/Expression;
MethodParameters:
Name Flags
exp
public boolean deepEquals(org.apache.xpath.Expression);
descriptor: (Lorg/apache/xpath/Expression;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial org.apache.xpath.axes.LocPathIterator.deepEquals:(Lorg/apache/xpath/Expression;)Z
ifne 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.xpath.axes.WalkingIterator.m_firstWalker:Lorg/apache/xpath/axes/AxesWalker;
astore 2
start local 2 3: aload 1
checkcast org.apache.xpath.axes.WalkingIterator
getfield org.apache.xpath.axes.WalkingIterator.m_firstWalker:Lorg/apache/xpath/axes/AxesWalker;
astore 3
start local 3 4: goto 9
5: StackMap locals: org.apache.xpath.axes.AxesWalker org.apache.xpath.axes.AxesWalker
StackMap stack:
aload 2
aload 3
invokevirtual org.apache.xpath.axes.AxesWalker.deepEquals:(Lorg/apache/xpath/Expression;)Z
ifne 7
6: iconst_0
ireturn
7: StackMap locals:
StackMap stack:
aload 2
invokevirtual org.apache.xpath.axes.AxesWalker.getNextWalker:()Lorg/apache/xpath/axes/AxesWalker;
astore 2
8: aload 3
invokevirtual org.apache.xpath.axes.AxesWalker.getNextWalker:()Lorg/apache/xpath/axes/AxesWalker;
astore 3
9: StackMap locals:
StackMap stack:
aload 2
ifnull 10
aload 3
ifnonnull 5
10: StackMap locals:
StackMap stack:
aload 2
ifnonnull 11
aload 3
ifnull 12
11: StackMap locals:
StackMap stack:
iconst_0
ireturn
12: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/apache/xpath/axes/WalkingIterator;
0 13 1 expr Lorg/apache/xpath/Expression;
3 13 2 walker1 Lorg/apache/xpath/axes/AxesWalker;
4 13 3 walker2 Lorg/apache/xpath/axes/AxesWalker;
MethodParameters:
Name Flags
expr
}
SourceFile: "WalkingIterator.java"