Assignation
, EagerLetExpression
, ForExpression
, GeneralVariable
, GlobalParam
, GlobalVariable
, JAXPVariable
, LetExpression
, LocalParam
, LocalVariable
, LocalVariableBinding
, PositionVariable
, QuantifiedExpression
, UserFunctionParameter
, WithParam
, XPathVariable
public interface Binding
Modifier and Type | Method | Description |
---|---|---|
void |
addReference(boolean isLoopingReference) |
Register a variable reference that refers to the variable bound in this expression
|
ValueRepresentation<? extends Item> |
evaluateVariable(XPathContext context) |
Evaluate the variable
|
IntegerValue[] |
getIntegerBoundsForVariable() |
If the variable is bound to an integer, get the minimum and maximum possible values.
|
int |
getLocalSlotNumber() |
If this is a local variable held on the local stack frame, return the corresponding slot number.
|
SequenceType |
getRequiredType() |
Get the declared type of the variable
|
StructuredQName |
getVariableQName() |
Get the name of the variable
|
boolean |
isAssignable() |
Test whether it is permitted to assign to the variable using the saxon:assign
extension element.
|
boolean |
isGlobal() |
Indicate whether the binding is local or global.
|
SequenceType getRequiredType()
IntegerValue[] getIntegerBoundsForVariable()
ValueRepresentation<? extends Item> evaluateVariable(XPathContext context) throws XPathException
context
- the XPath dynamic evaluation contextXPathException
- if an error occurs while evaluating
the variableboolean isGlobal()
boolean isAssignable()
int getLocalSlotNumber()
StructuredQName getVariableQName()
void addReference(boolean isLoopingReference)
isLoopingReference
- - true if the reference occurs within a loop, such as the predicate
of a filter expression