Package net.sf.saxon.expr.instruct
Class GlobalParam
java.lang.Object
net.sf.saxon.expr.instruct.Actor
net.sf.saxon.expr.instruct.GlobalVariable
net.sf.saxon.expr.instruct.GlobalParam
- All Implemented Interfaces:
SourceLocator
,Binding
,ContextOriginator
,ExpressionOwner
,Locatable
,Declaration
,Location
,Traceable
,TraceableComponent
,Locator
The compiled form of a global xsl:param element in an XSLT stylesheet or an
external variable declared in the prolog of a Query.
The xsl:param element in XSLT has mandatory attribute name and optional attribute select. It can also be specified as required="yes" or required="no". In standard XQuery 1.0 external variables are always required, and no default value can be specified; but Saxon provides an extension pragma that allows a query to specify a default. XQuery 1.1 adds standard syntax for defining a default value.
The xsl:param element in XSLT has mandatory attribute name and optional attribute select. It can also be specified as required="yes" or required="no". In standard XQuery 1.0 external variables are always required, and no default value can be specified; but Saxon provides an extension pragma that allows a query to specify a default. XQuery 1.1 adds standard syntax for defining a default value.
-
Field Summary
Fields inherited from class net.sf.saxon.expr.instruct.GlobalVariable
references
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionevaluateVariable
(XPathContext context) Evaluate the variableevaluateVariable
(XPathContext context, Component target) Evaluate the variableprotected String
getFlags()
Get a string used to identify this kind of component when used in tracing outputboolean
Ask whether this variable represents a required parametervoid
setImplicitlyRequiredParam
(boolean requiredParam) Indicate that this parameter is implicitly required, because the default value does not match the typeMethods inherited from class net.sf.saxon.expr.instruct.GlobalVariable
actuallyEvaluate, addReference, checkCircularity, compile, countReferences, export, gatherProperties, getBinderySlotNumber, getDescription, getHostLanguage, getIntegerBoundsForVariable, getLocalSlotNumber, getObjectName, getOriginalVariable, getProperty, getRequiredType, getSelectValue, getSymbolicName, getUltimateOriginalVariable, getVariableQName, init, isAssignable, isGlobal, isIndexedVariable, isPrivate, isRequiredParam, isStatic, isUnused, iterateReferences, lookForCycles, registerReference, setAssignable, setBinderySlotNumber, setContainsLocals, setIndexedVariable, setOriginalVariable, setPrivate, setRequiredParam, setRequiredType, setStatic, setUnused, setVariableQName, typeCheck
Methods inherited from class net.sf.saxon.expr.instruct.Actor
allocateAllBindingSlots, allocateBindingSlotsRecursive, getBody, getChildExpression, getColumnNumber, getComponentName, getDeclaredVisibility, getDeclaringComponent, getLineNumber, getLocation, getPackageData, getPublicId, getRetainedStaticContext, getStackFrameMap, getSystemId, isExportable, makeDeclaringComponent, obtainDeclaringComponent, process, saveLocation, setBody, setChildExpression, setColumnNumber, setDeclaredVisibility, setDeclaringComponent, setLineNumber, setPackageData, setRetainedStaticContext, setStackFrameMap, setSystemId
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface net.sf.saxon.expr.Locatable
getLocation
Methods inherited from interface net.sf.saxon.trace.TraceableComponent
getBody, setBody
-
Constructor Details
-
GlobalParam
public GlobalParam()
-
-
Method Details
-
setImplicitlyRequiredParam
public void setImplicitlyRequiredParam(boolean requiredParam) Indicate that this parameter is implicitly required, because the default value does not match the type- Parameters:
requiredParam
- true if this is a required parameter
-
isImplicitlyRequiredParam
public boolean isImplicitlyRequiredParam()Ask whether this variable represents a required parameter- Returns:
- true if this variable represents a required parameter
-
getTracingTag
Description copied from class:Actor
Get a string used to identify this kind of component when used in tracing output- Specified by:
getTracingTag
in interfaceTraceableComponent
- Overrides:
getTracingTag
in classGlobalVariable
- Returns:
- a diagnostic string used to identify the component when tracing
-
evaluateVariable
Evaluate the variable- Overrides:
evaluateVariable
in classGlobalVariable
- Parameters:
context
- the XPath dynamic contexttarget
- the component representing this variable (in the context of a package where it is used)- Returns:
- the value of the variable
- Throws:
XPathException
- if evaluation of the variable fails with a dynamic error
-
evaluateVariable
Evaluate the variable- Specified by:
evaluateVariable
in interfaceBinding
- Overrides:
evaluateVariable
in classGlobalVariable
- Parameters:
context
- the XPath dynamic evaluation context- Returns:
- the result of evaluating the variable
- Throws:
XPathException
- if an error occurs while evaluating the variable
-
getFlags
- Overrides:
getFlags
in classGlobalVariable
-