## com.saxonica.codegen
Class VariableReferenceCompiler

    java.lang.Object
      com.saxonica.codegen.ExpressionCompiler
          com.saxonica.codegen.SequenceExpressionCompiler
              com.saxonica.codegen.VariableReferenceCompiler

    public class VariableReferenceCompiler

extends SequenceExpressionCompiler

Generate Java code to implement an XPath variable reference

Constructor Summary
`VariableReferenceCompiler()`

Method Summary
`java.lang.String` `compileToItem(CompilerService compiler, Expression expr)` Generate Java code to evaluate the expression as an Item
`java.lang.String` `compileToIterator(CompilerService compiler, Expression expr)` Generate Java code to evaluate the expression as a SequenceIterator
`static java.lang.String` `getJavaVariableName(CompilerService compiler, VariableReference ref)`

Methods inherited from class com.saxonica.codegen.SequenceExpressionCompiler
`compilePush, compileToCharSequence, compileToEffectiveBooleanValue`

Methods inherited from class com.saxonica.codegen.ExpressionCompiler
`compileAsLoop, compileToValueRepresentation`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### VariableReferenceCompiler

    public VariableReferenceCompiler()

Method Detail

### compileToIterator

    public java.lang.String compileToIterator(CompilerService compiler,
                                              Expression expr)

  Description copied from class: `ExpressionCompiler`
  Generate Java code to evaluate the expression as a SequenceIterator

  Specified by:
    `compileToIterator` in class `ExpressionCompiler`
  Parameters:
    `compiler` - the compiler service
    `expr` - the XPath expression to be compiled
  Returns:
    a simple Java expression (usually the name of a variable that has been declared) which will be of class `SequenceIterator`, and which at run-time will hold an iterator over the the value of the XPath expression

### compileToItem

    public java.lang.String compileToItem(CompilerService compiler,
                                          Expression expr)

  Description copied from class: `ExpressionCompiler`
  Generate Java code to evaluate the expression as an Item

  Overrides:
    `compileToItem` in class `SequenceExpressionCompiler`
  Parameters:
    `compiler` - the compiler service
    `expr` - the expression to be compiled
  Returns:
    a simple Java expression (usually the name of a variable that has been declared) which will be of class `Item`, and which will hold the value of the expression at run-time (or hold null, representing an empty sequence).

### getJavaVariableName

    public static java.lang.String getJavaVariableName(CompilerService compiler,
                                                       VariableReference ref)

Copyright (c) Saxonica Limited. All rights reserved.