Package com.icl.saxon.expr
Class RelationalExpression
java.lang.Object
com.icl.saxon.expr.Expression
com.icl.saxon.expr.BinaryExpression
com.icl.saxon.expr.RelationalExpression
Relational Expression: a boolean expression that compares two expressions
for equals, not-equals, greater-than or less-than.
-
Field Summary
Fields inherited from class com.icl.saxon.expr.BinaryExpression
operator, p1, p2
Fields inherited from class com.icl.saxon.expr.Expression
staticContext
-
Constructor Summary
ConstructorsConstructorDescriptionDefault constructorRelationalExpression
(Expression p1, int op, Expression p2) Create a relational expression identifying the two operands and the operator -
Method Summary
Modifier and TypeMethodDescriptionEvaluate the expression in a given contextboolean
Evaluate the expression in a given contextint
Determine the data type of the expressionPerform a partial evaluation of the expression, by eliminating specified dependencies on the context.simplify()
Simplify an expressionMethods inherited from class com.icl.saxon.expr.BinaryExpression
display, getDependencies, setDetails
Methods inherited from class com.icl.saxon.expr.Expression
containsReferences, enumerate, evaluateAsNodeSet, evaluateAsNumber, evaluateAsString, getStaticContext, indent, isContextDocumentNodeSet, make, outputStringValue, setStaticContext, usesCurrent
-
Constructor Details
-
RelationalExpression
public RelationalExpression()Default constructor -
RelationalExpression
Create a relational expression identifying the two operands and the operator- Parameters:
p1
- the left-hand operandop
- the operator, as a token returned by the Tokenizer (e.g. Tokenizer.LT)p2
- the right-hand operand
-
-
Method Details
-
simplify
Simplify an expression- Overrides:
simplify
in classBinaryExpression
- Returns:
- the simplified expression
- Throws:
XPathException
-
evaluate
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
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
-
reduce
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
-