|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.saxonica.stream.ExpressionInverter
public class ExpressionInverter
This class performs inversion of an expression so that it can be evaluated in push mode as events are received from the XML parser. If the expression is invertible, the result of the inversion has three components: a set of actions to be performed before the events are received from the parser; a WatchMaker which is used at run-time to construct a Watch (which listens to the parser events), and a set of actions to be performed after parsing the subtree.
Constructor Summary | |
---|---|
ExpressionInverter(Configuration config)
|
Method Summary | |
---|---|
static boolean |
consumesStream(Expression exp)
Ask whether an expression is consuming. |
InvertedExpression |
invertExpression(Expression exp)
Compute the Jackson inversion of an expression. |
static boolean |
isUpwardsExpression(Expression exp)
Test whether an expression returns an ancestor of the context node |
static boolean |
returnsStreamedNode(Expression exp)
Test whether an expression returns a node in the streamed document (that is, the same document as the context node) |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public ExpressionInverter(Configuration config)
Method Detail |
---|
public InvertedExpression invertExpression(Expression exp) throws XPathException
exp
- the expression to be inverted
XPathException
- if the expression is not streamablepublic static boolean consumesStream(Expression exp)
exp
- the expression to be tested
public static boolean returnsStreamedNode(Expression exp)
public static boolean isUpwardsExpression(Expression exp)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |