Package com.icl.saxon.expr
Class PositionRange
- java.lang.Object
-
- com.icl.saxon.expr.Expression
-
- com.icl.saxon.expr.PositionRange
-
class PositionRange extends Expression
PositionRange: a boolean expression that tests whether the position() is within a certain range. This expression can occur in any context but it is optimized when it appears as a predicate (see FilterEnumerator)
-
-
Field Summary
-
Fields inherited from class com.icl.saxon.expr.Expression
staticContext
-
-
Constructor Summary
Constructors Constructor Description PositionRange(int min, int max)
Create a position range
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
display(int level)
Diagnostic print of expression structureValue
evaluate(Context c)
Evaluate the expression in a given contextboolean
evaluateAsBoolean(Context c)
Evaluate the expression in a given contextint
getDataType()
Determine the data type of the expressionint
getDependencies()
Get the dependenciesprotected int
getMaxPosition()
Get the maximum positionprotected int
getMinPosition()
Get the minimum positionExpression
reduce(int dependencies, Context context)
Perform a partial evaluation of the expression, by eliminating specified dependencies on the context.Expression
simplify()
Simplify an expression-
Methods inherited from class com.icl.saxon.expr.Expression
containsReferences, enumerate, evaluateAsNodeSet, evaluateAsNumber, evaluateAsString, getStaticContext, indent, isContextDocumentNodeSet, make, outputStringValue, setStaticContext, usesCurrent
-
-
-
-
Method Detail
-
simplify
public Expression simplify() throws XPathException
Simplify an expression- Overrides:
simplify
in classExpression
- Returns:
- the simplified expression
- Throws:
XPathException
-
evaluate
public Value evaluate(Context c) throws XPathException
Evaluate the expression in a given context- Specified by:
evaluate
in classExpression
- Parameters:
c
- the given context for evaluation- Returns:
- a BooleanValue representing the result of the numeric comparison of the two operands
- Throws:
XPathException
-
evaluateAsBoolean
public boolean evaluateAsBoolean(Context c) throws XPathException
Evaluate the expression in a given context- Overrides:
evaluateAsBoolean
in classExpression
- Parameters:
c
- the given context for evaluation- Returns:
- a boolean representing the result of the numeric comparison of the two operands
- Throws:
XPathException
-
getDataType
public int getDataType()
Determine the data type of the expression- Specified by:
getDataType
in classExpression
- Returns:
- Value.BOOLEAN
-
getDependencies
public int getDependencies()
Get the dependencies- Specified by:
getDependencies
in classExpression
-
reduce
public Expression reduce(int dependencies, Context context) throws XPathException
Perform a partial evaluation of the expression, by eliminating specified dependencies on the context.- Specified by:
reduce
in classExpression
- Parameters:
dependencies
- The dependencies to be removedcontext
- The context to be used for the partial evaluation- Returns:
- a new expression that does not have any of the specified dependencies
- Throws:
XPathException
-
getMinPosition
protected int getMinPosition()
Get the minimum position
-
getMaxPosition
protected int getMaxPosition()
Get the maximum position
-
display
public void display(int level)
Diagnostic print of expression structure- Specified by:
display
in classExpression
-
-