Package org.apache.xpath
Class XPathVisitor
java.lang.Object
org.apache.xpath.XPathVisitor
- Direct Known Subclasses:
AbsPathChecker,ExpressionVisitor,HasPositionalPredChecker,VarNameCollector,XSLTVisitor
public class XPathVisitor extends Object
A derivation from this class can be passed to a class that implements
the XPathVisitable interface, to have the appropriate method called
for each component of the XPath. Aside from possible other uses, the
main intention is to provide a reasonable means to perform expression
rewriting.
Each method has the form
boolean visitComponentType(ExpressionOwner owner, ComponentType compType).
The ExpressionOwner argument is the owner of the component, and can
be used to reset the expression for rewriting. If a method returns
false, the sub hierarchy will not be traversed.
This class is meant to be a base class that will be derived by concrete classes, and doesn't much except return true for each method.
-
Constructor Summary
Constructors Constructor Description XPathVisitor() -
Method Summary
Modifier and Type Method Description booleanvisitBinaryOperation(ExpressionOwner owner, Operation op)Visit a binary operation.booleanvisitFunction(ExpressionOwner owner, Function func)Visit a function.booleanvisitLocationPath(ExpressionOwner owner, LocPathIterator path)Visit a LocationPath.booleanvisitMatchPattern(ExpressionOwner owner, StepPattern pattern)Visit a match pattern.booleanvisitNumberLiteral(ExpressionOwner owner, XNumber num)Visit a number literal.booleanvisitPredicate(ExpressionOwner owner, Expression pred)Visit a predicate within a location path.booleanvisitStep(ExpressionOwner owner, NodeTest step)Visit a step within a location path.booleanvisitStringLiteral(ExpressionOwner owner, XString str)Visit a string literal.booleanvisitUnaryOperation(ExpressionOwner owner, UnaryOperation op)Visit a unary operation.booleanvisitUnionPath(ExpressionOwner owner, UnionPathIterator path)Visit a UnionPath.booleanvisitUnionPattern(ExpressionOwner owner, UnionPattern pattern)Visit a union pattern.booleanvisitVariableRef(ExpressionOwner owner, Variable var)Visit a variable reference.
-
Constructor Details
-
XPathVisitor
public XPathVisitor()
-
-
Method Details
-
visitLocationPath
Visit a LocationPath.- Parameters:
owner- The owner of the expression, to which the expression can be reset if rewriting takes place.path- The LocationPath object.- Returns:
- true if the sub expressions should be traversed.
-
visitUnionPath
Visit a UnionPath.- Parameters:
owner- The owner of the expression, to which the expression can be reset if rewriting takes place.path- The UnionPath object.- Returns:
- true if the sub expressions should be traversed.
-
visitStep
Visit a step within a location path.- Parameters:
owner- The owner of the expression, to which the expression can be reset if rewriting takes place.step- The Step object.- Returns:
- true if the sub expressions should be traversed.
-
visitPredicate
Visit a predicate within a location path. Note that there isn't a proper unique component for predicates, and that the expression will be called also for whatever type Expression is.- Parameters:
owner- The owner of the expression, to which the expression can be reset if rewriting takes place.pred- The predicate object.- Returns:
- true if the sub expressions should be traversed.
-
visitBinaryOperation
Visit a binary operation.- Parameters:
owner- The owner of the expression, to which the expression can be reset if rewriting takes place.op- The operation object.- Returns:
- true if the sub expressions should be traversed.
-
visitUnaryOperation
Visit a unary operation.- Parameters:
owner- The owner of the expression, to which the expression can be reset if rewriting takes place.op- The operation object.- Returns:
- true if the sub expressions should be traversed.
-
visitVariableRef
Visit a variable reference.- Parameters:
owner- The owner of the expression, to which the expression can be reset if rewriting takes place.var- The variable reference object.- Returns:
- true if the sub expressions should be traversed.
-
visitFunction
Visit a function.- Parameters:
owner- The owner of the expression, to which the expression can be reset if rewriting takes place.func- The function reference object.- Returns:
- true if the sub expressions should be traversed.
-
visitMatchPattern
Visit a match pattern.- Parameters:
owner- The owner of the expression, to which the expression can be reset if rewriting takes place.pattern- The match pattern object.- Returns:
- true if the sub expressions should be traversed.
-
visitUnionPattern
Visit a union pattern.- Parameters:
owner- The owner of the expression, to which the expression can be reset if rewriting takes place.pattern- The union pattern object.- Returns:
- true if the sub expressions should be traversed.
-
visitStringLiteral
Visit a string literal.- Parameters:
owner- The owner of the expression, to which the expression can be reset if rewriting takes place.str- The string literal object.- Returns:
- true if the sub expressions should be traversed.
-
visitNumberLiteral
Visit a number literal.- Parameters:
owner- The owner of the expression, to which the expression can be reset if rewriting takes place.num- The number literal object.- Returns:
- true if the sub expressions should be traversed.
-