| java.lang.Object net.sf.saxon.expr.ComputedExpression net.sf.saxon.expr.AxisExpression
AxisExpression | final public class AxisExpression extends ComputedExpression (Code) | | An AxisExpression is always obtained by simplifying a PathExpression.
It represents a PathExpression that starts at the context node, and uses
a simple node-test with no filters. For example "*", "title", "./item",
"@*", or "ancestor::chapter*".
An AxisExpression delivers nodes in axis order (not in document order).
To get nodes in document order, in the case of a reverse axis, the expression
should be wrapped in a Reverser.
|
Constructor Summary | |
public | AxisExpression(byte axis, NodeTest nodeTest) Constructor
Parameters: axis - The axis to be used in this AxisExpression: relevant constants are definedin class net.sf.saxon.om.Axis. Parameters: nodeTest - The conditions to be satisfied by selected nodes. |
computedCardinality | int computedCardinality(Code) | | |
AxisExpression | public AxisExpression(byte axis, NodeTest nodeTest)(Code) | | Constructor
Parameters: axis - The axis to be used in this AxisExpression: relevant constants are definedin class net.sf.saxon.om.Axis. Parameters: nodeTest - The conditions to be satisfied by selected nodes. May be null,indicating that any node on the axis is acceptable See Also: net.sf.saxon.om.Axis |
computeCardinality | final public int computeCardinality()(Code) | | Specify that the expression returns a singleton
|
computeSpecialProperties | public int computeSpecialProperties()(Code) | | Get the static properties of this expression (other than its type). The result is
bit-signficant. These properties are used for optimizations. In general, if
property bit is set, it is true, but if it is unset, the value is unknown.
|
equals | public boolean equals(Object other)(Code) | | Is this expression the same as another expression?
|
getAxis | public byte getAxis()(Code) | | Get the axis
|
getIntrinsicDependencies | public int getIntrinsicDependencies()(Code) | | Determine which aspects of the context the expression depends on. The result is
a bitwise-or'ed value composed from constants such as XPathContext.VARIABLES and
XPathContext.CURRENT_NODE
|
getItemType | final public ItemType getItemType(TypeHierarchy th)(Code) | | Determine the data type of the items returned by this expression
Type.NODE or a subtype, based on the NodeTest in the axis step, plusinformation about the content type if this is known from schema analysis Parameters: th - |
getNodeTest | public NodeTest getNodeTest()(Code) | | Get the NodeTest. Returns null if the AxisExpression can return any node.
|
hashCode | public int hashCode()(Code) | | get HashCode for comparing two expressions
|
optimize | public Expression optimize(Optimizer opt, StaticContext env, ItemType contextItemType)(Code) | | Perform optimisation of an expression and its subexpressions.
This method is called after all references to functions and variables have been resolved
to the declaration of the function or variable, and after all type checking has been done.
Parameters: opt - the optimizer in use. This provides access to supporting functions; it also allowsdifferent optimization strategies to be used in different circumstances. Parameters: env - the static context of the expression Parameters: contextItemType - the static type of "." at the point where this expression is invoked.The parameter is set to null if it is known statically that the context item will be undefined.If the type of the context item is not known statically, the argument is set tonet.sf.saxon.type.Type.ITEM_TYPE the original expression, rewritten if appropriate to optimize execution |
toString | public String toString()(Code) | | Represent the expression as a string for diagnostics
|
|
|