javax.xml.transform.SourceLocator, VariableDeclaration, DeclarationUndeclaredVariablepublic class GlobalVariableDefinition extends java.lang.Object implements VariableDeclaration, Declaration
| Modifier and Type | Field | Description |
|---|---|---|
protected java.util.List |
references |
| Constructor | Description |
|---|---|
GlobalVariableDefinition() |
| Modifier and Type | Method | 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
|
void |
fixupReference(BindingReference ref,
TypeHierarchy th) |
Notify a reference to this variable of the data type
|
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
|
StructuredQName |
getVariableQName() |
Get the variable name
|
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) |
Indicate 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 void setIsParameter(boolean b)
b - true if this variable is externalpublic 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 fixupReference(BindingReference ref, TypeHierarchy th) throws XPathException
ref - the variable referenceth - the type hierarchy cacheXPathExceptionpublic 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