Package net.sf.saxon.query

## Class UndeclaredVariable

- java.lang.Object
- - net.sf.saxon.expr.instruct.Actor
  - - net.sf.saxon.expr.instruct.GlobalVariable
    - - net.sf.saxon.query.UndeclaredVariable

- All Implemented Interfaces:
    `javax.xml.transform.SourceLocator`, `Binding`, `ContextOriginator`, `ExpressionOwner`, `Locatable`, `Declaration`, `Location`, `Traceable`, `TraceableComponent`, `org.xml.sax.Locator`

      public class UndeclaredVariable
      extends GlobalVariable

  An UndeclaredVariable object is created when a reference is encountered to a variable that has not yet been declared. This can happen as a result of recursive module imports. These references are resolved at the end of query parsing.

- - ### Field Summary

    - ### Fields inherited from class net.sf.saxon.expr.instruct.GlobalVariable

      `references`

    - ### Fields inherited from class net.sf.saxon.expr.instruct.Actor

      `body`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `UndeclaredVariable()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `compile​(Executable exec, int slot)` | Create a compiled representation of this global variable.
    `void` | `transferReferences​(GlobalVariable var)` |

    - ### Methods inherited from class net.sf.saxon.expr.instruct.GlobalVariable

      `actuallyEvaluate, addReference, evaluateVariable, evaluateVariable, export, gatherProperties, getBinderySlotNumber, getDescription, getFlags, getHostLanguage, getIntegerBoundsForVariable, getLocalSlotNumber, getObjectName, getOriginalVariable, getProperties, getProperty, getRequiredType, getSelectValue, getSymbolicName, getTracingTag, getUltimateOriginalVariable, getVariableQName, init, isAssignable, isGlobal, isIndexedVariable, isPrivate, isRequiredParam, isStatic, isUnused, iterateReferences, lookForCycles, registerReference, setAssignable, setBinderySlotNumber, setContainsLocals, setDependencies, 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, 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 Detail

    - #### UndeclaredVariable

          public UndeclaredVariable()

  - ### Method Detail

    - #### transferReferences

          public void transferReferences​(GlobalVariable var)

    - #### compile

          public void compile​(Executable exec,
                              int slot)
                       throws XPathException

      Description copied from class: `GlobalVariable`
      Create a compiled representation of this global variable. Used in XQuery only.
      Overrides:
        `compile` in class `GlobalVariable`
      Parameters:
        `exec` - the executable
        `slot` - the slot number allocated to this variable
      Throws:
        `XPathException` - if compile-time errors are found.