|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectnet.sf.saxon.expr.ComputedExpression
net.sf.saxon.expr.CastableExpression
Castable Expression: implements "Expr castable as atomic-type?". The implementation simply wraps a cast expression with a try/catch.
Field Summary | |
(package private) boolean |
allowEmpty
|
(package private) Expression |
source
|
(package private) AtomicType |
targetType
|
Fields inherited from class net.sf.saxon.expr.ComputedExpression |
lineNumber, NO_ARGUMENTS, staticProperties |
Constructor Summary | |
CastableExpression(Expression source,
AtomicType target,
boolean allowEmpty)
|
Method Summary | |
Expression |
analyze(StaticContext env)
Type-check the expression |
int |
computeCardinality()
|
void |
display(int level,
NamePool pool)
Diagnostic print of expression structure |
boolean |
effectiveBooleanValue(XPathContext context)
Get the effective boolean value of the expression. |
Item |
evaluateItem(XPathContext context)
Evaluate the expression |
ItemType |
getItemType()
Determine the data type of the result of the Castable expression |
Expression[] |
getSubExpressions()
Get the immediate subexpressions of this expression |
Expression |
promote(PromotionOffer offer)
Promote this expression if possible |
Expression |
simplify()
Simplify the expression |
Methods inherited from class net.sf.saxon.expr.ComputedExpression |
computeDependencies, computeSpecialProperties, computeStaticProperties, dynamicError, evaluateAsString, getCardinality, getDependencies, getIntrinsicDependencies, getLineNumber, getSpecialProperties, iterate, markTailFunctionCalls, setLineNumber, typeError |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
Expression source
AtomicType targetType
boolean allowEmpty
Constructor Detail |
public CastableExpression(Expression source, AtomicType target, boolean allowEmpty) throws XPathException
Method Detail |
public Expression simplify() throws XPathException
simplify
in interface Expression
simplify
in class ComputedExpression
XPathException
- if an error is discovered during expression
rewritingpublic Expression analyze(StaticContext env) throws XPathException
env
- the static context of the expression
XPathException
- if an error is discovered during this phase
(typically a type error)public Expression promote(PromotionOffer offer) throws XPathException
promote
in interface Expression
promote
in class ComputedExpression
offer
- details of the offer, for example the offer to move
expressions that don't depend on the context to an outer level in
the containing expression
XPathException
- if any error is detectedpublic Expression[] getSubExpressions()
getSubExpressions
in interface Expression
getSubExpressions
in class ComputedExpression
public ItemType getItemType()
public int computeCardinality()
computeCardinality
in class ComputedExpression
public Item evaluateItem(XPathContext context) throws XPathException
evaluateItem
in interface Expression
evaluateItem
in class ComputedExpression
context
- The context in which the expression is to be evaluated
XPathException
- if any dynamic error occurs evaluating the
expressionpublic boolean effectiveBooleanValue(XPathContext context) throws XPathException
ComputedExpression
effectiveBooleanValue
in interface Expression
effectiveBooleanValue
in class ComputedExpression
context
- The context in which the expression is to be evaluated
XPathException
- if any dynamic error occurs evaluating the
expressionpublic void display(int level, NamePool pool)
level
- indentation level for this expression
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |