public class GlobalVariableDefinition extends java.lang.Object implements VariableDeclaration, Declaration
| Modifier and Type | Field and Description |
|---|---|
protected java.util.List |
references |
| Constructor and Description |
|---|
GlobalVariableDefinition() |
| Modifier and Type | Method and Description |
|---|---|
GlobalVariable |
compile(Executable exec,
int slot)
Create a compiled representation of this global variable
|
void |
explain(ExpressionPresenter out)
Produce diagnostic output showing the compiled and optimized expression tree for a function
|
int |
getColumnNumber()
Get column number
|
GlobalVariable |
getCompiledVariable()
Get the compiled variable if the definition has been compiled
|
int |
getLineNumber()
Get the line number where the declaration appears
|
java.lang.String |
getPublicId()
Get public identifier
|
SequenceType |
getRequiredType()
Get the required type of the variable
|
java.lang.String |
getSystemId()
Get the system ID of the module containing the variable declaration
|
Expression |
getValueExpression()
Get the expression used to initialize the value of the variable
|
StructuredQName |
getVariableQName()
Get the variable name
|
boolean |
isParameter()
Ask whether this global variable is a "parameter" (an external variable, in XQuery terminology)
|
java.util.Iterator |
iterateReferences()
Iterate over the references to this variable
|
void |
registerReference(BindingReference ref)
Register a variable reference that refers to this global variable
|
void |
setIsParameter(boolean b)
Say whether this global variable is a "parameter" (an external variable, in XQuery terminology)
|
void |
setLineNumber(int lineNumber)
Set the line number where the variable declaration appears in the source
|
void |
setRequiredType(SequenceType type)
Set the required type of the variable
|
void |
setSystemId(java.lang.String systemId)
Set the system ID of the module where the variable declaration appears
|
void |
setValueExpression(Expression val)
Set the expression used to define the value of the variable
|
void |
setVariableQName(StructuredQName qName)
Set the variable name
|
void |
typeCheck(ExpressionVisitor visitor)
Type check the compiled representation of this global variable
|
public void setRequiredType(SequenceType type)
type - the declared type, from the "as" clause if presentpublic SequenceType getRequiredType()
public void setVariableQName(StructuredQName qName)
qName - the variable namepublic StructuredQName getVariableQName()
getVariableQName in interface VariableDeclarationpublic void setLineNumber(int lineNumber)
lineNumber - the line numberpublic int getLineNumber()
getLineNumber in interface javax.xml.transform.SourceLocatorpublic int getColumnNumber()
getColumnNumber in interface javax.xml.transform.SourceLocatorpublic java.lang.String getPublicId()
getPublicId in interface javax.xml.transform.SourceLocatorpublic void setSystemId(java.lang.String systemId)
systemId - the System ID (base URI)public java.lang.String getSystemId()
getSystemId in interface javax.xml.transform.SourceLocatorpublic void setValueExpression(Expression val)
val - the initializing expressionpublic Expression getValueExpression()
public void setIsParameter(boolean b)
b - true if this variable is externalpublic boolean isParameter()
public void registerReference(BindingReference ref)
registerReference in interface VariableDeclarationref - the variable referencepublic java.util.Iterator iterateReferences()
VariableReferencepublic GlobalVariable compile(Executable exec, int slot) throws XPathException
exec - the executableslot - the slot number allocated to this variableXPathException - if compile-time errors are found.public void typeCheck(ExpressionVisitor visitor) throws XPathException
visitor - an expression visitorXPathException - if compile-time errors are found.public GlobalVariable getCompiledVariable()
public void explain(ExpressionPresenter out)
out - the destination to be used