Package net.sf.saxon.expr
Class LocalVariableReference
- java.lang.Object
-
- net.sf.saxon.expr.ComputedExpression
-
- net.sf.saxon.expr.VariableReference
-
- net.sf.saxon.expr.LocalVariableReference
-
- All Implemented Interfaces:
java.io.Serializable
,javax.xml.transform.SourceLocator
,BindingReference
,Container
,Expression
,InstructionInfoProvider
public class LocalVariableReference extends VariableReference
Variable reference: a reference to a local variable. This subclass of VariableReference bypasses the Binding object to get the value directly from the relevant slot in the local stackframe.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description (package private) int
slotNumber
-
Fields inherited from class net.sf.saxon.expr.VariableReference
binding, constantValue, displayName, staticType
-
Fields inherited from class net.sf.saxon.expr.ComputedExpression
locationId, staticProperties
-
Fields inherited from interface net.sf.saxon.expr.Expression
EVALUATE_METHOD, ITERATE_METHOD, PROCESS_METHOD
-
-
Constructor Summary
Constructors Constructor Description LocalVariableReference(int slotNumber)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ValueRepresentation
evaluateVariable(XPathContext c)
int
getSlotNumber()
void
refineVariableReference()
Replace this VariableReference where appropriate by a more efficient implementation.-
Methods inherited from class net.sf.saxon.expr.VariableReference
computeCardinality, computeSpecialProperties, copy, display, equals, evaluateItem, fixup, getBinding, getImplementationMethod, getIntrinsicDependencies, getItemType, hashCode, iterate, optimize, process, promote, setStaticType, typeCheck
-
Methods inherited from class net.sf.saxon.expr.ComputedExpression
adoptChildExpression, checkPermittedContents, computeDependencies, computeStaticProperties, doPromotion, dynamicError, effectiveBooleanValue, evaluateAsString, getCardinality, getColumnNumber, getConstructType, getDependencies, getExecutable, getHostLanguage, getInstructionInfo, getLineNumber, getLocationId, getLocationProvider, getParentExpression, getPublicId, getSlotsUsed, getSpecialProperties, getSystemId, hasBadParentPointer, iterateSubExpressions, markTailFunctionCalls, replaceSubExpression, resetStaticProperties, setLocationId, setParentExpression, setParentExpression, simplify, suppressValidation, typeError
-
-
-
-
Method Detail
-
getSlotNumber
public int getSlotNumber()
-
evaluateVariable
public ValueRepresentation evaluateVariable(XPathContext c) throws XPathException
- Overrides:
evaluateVariable
in classVariableReference
- Throws:
XPathException
-
refineVariableReference
public void refineVariableReference()
Replace this VariableReference where appropriate by a more efficient implementation.- Overrides:
refineVariableReference
in classVariableReference
-
-