public class GlobalVariable extends GeneralVariable implements Container
nameCode, referenceCount, requiredType, selectlocationId, staticPropertiesEVALUATE_METHOD, ITERATE_METHOD, PROCESS_METHOD| Constructor and Description |
|---|
GlobalVariable() |
| Modifier and Type | Method and Description |
|---|---|
ValueRepresentation |
evaluateVariable(XPathContext context)
Evaluate the variable
|
Executable |
getExecutable()
Get the executable containing this expression
|
int |
getHostLanguage()
Get the host language (XSLT, XQuery, XPath) used to implement the code in this container
|
InstructionInfo |
getInstructionInfo()
Get InstructionInfo for this expression
|
ValueRepresentation |
getSelectValue(XPathContext context)
Evaluate the variable.
|
boolean |
isGlobal()
Indicate whether the binding is local or global.
|
void |
lookForCycles(Stack referees)
Check for cycles in this variable definition
|
TailCall |
processLeavingTail(XPathContext context)
Process the variable declaration
|
void |
setContainsLocals(SlotManager map) |
void |
setExecutable(Executable executable) |
void |
setHostLanguage(int language) |
display, evaluateItem, getCardinality, getInstructionNameCode, getItemType, getLocalSlotNumber, getNameCode, getRequiredType, getSelectExpression, getSlotNumber, getVariableFingerprint, getVariableName, init, isAssignable, isRequiredParam, isTunnelParam, iterate, iterateSubExpressions, optimize, promoteInst, setAssignable, setNameCode, setReferenceCount, setRequiredParam, setRequiredType, setSelectExpression, setSlotNumber, setTunnel, setVariableName, simplify, typeCheckappendItem, assembleParams, assembleTunnelParams, computeCardinality, computeSpecialProperties, createsNewNodes, dynamicError, evaluateAsString, getImplementationMethod, getSourceLocator, isXSLT, process, promoteadoptChildExpression, checkPermittedContents, computeDependencies, computeStaticProperties, doPromotion, dynamicError, dynamicError, effectiveBooleanValue, getColumnNumber, getConstructType, getDependencies, getIntrinsicDependencies, getLineNumber, getLocationId, getLocationProvider, getParentExpression, getPublicId, getSlotsUsed, getSpecialProperties, getSystemId, hasBadParentPointer, markTailFunctionCalls, resetStaticProperties, setLocationId, setParentExpression, suppressValidation, typeError, typeErrorclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetLocationProvidergetColumnNumber, getLineNumber, getPublicId, getSystemIdpublic Executable getExecutable()
ComputedExpressiongetExecutable in interface ContainergetExecutable in class ComputedExpressionpublic void setExecutable(Executable executable)
public void setHostLanguage(int language)
public int getHostLanguage()
ComputedExpressiongetHostLanguage in interface ContainergetHostLanguage in class ComputedExpressionConfiguration.XSLT or Configuration.XQUERYpublic void setContainsLocals(SlotManager map)
public boolean isGlobal()
BindingisGlobal in interface BindingisGlobal in class GeneralVariablepublic void lookForCycles(Stack referees) throws StaticError
referees - the calls leading up to this one; it's an error if this variable is on the
stack, because that means it calls itself directly or indirectly. The stack may contain
variable definitions (GlobalVariable objects) and user-defined functions (UserFunction objects).
It will never contain the same object more than once.StaticErrorpublic TailCall processLeavingTail(XPathContext context) throws XPathException
processLeavingTail in interface TailCallReturnerprocessLeavingTail in class Instructioncontext - The dynamic context of the transformation, giving access to the current node,
the current variables, etc.XPathExceptionpublic ValueRepresentation getSelectValue(XPathContext context) throws XPathException
getSelectValue in class GeneralVariableXPathExceptionpublic ValueRepresentation evaluateVariable(XPathContext context) throws XPathException
evaluateVariable in interface BindingXPathExceptionpublic InstructionInfo getInstructionInfo()
getInstructionInfo in interface InstructionInfoProvidergetInstructionInfo in class Instruction