Package: org.codehaus.groovy.classgen.asm

## [Java] Class BytecodeVariable

- org.codehaus.groovy.classgen.asm.BytecodeVariable

- Represents compile time variable metadata while compiling a method.

  Authors:
    James Strachan
    Jochen Theodorou

- - ### Field Summary

    Fields
    Modifiers | Name | Description
    --- | --- | ---
    `static BytecodeVariable` | `SUPER_VARIABLE` |
    `static BytecodeVariable` | `THIS_VARIABLE` |

  - ### Properties Summary

    Properties
    Type | Name and description
    --- | ---
    `boolean` | `dynamicTyped`
    `org.objectweb.asm.Label` | `endLabel`
    `boolean` | `holder`
    `org.objectweb.asm.Label` | `startLabel`
    `ClassNode` | `type`

  - ### Constructor Summary

    Constructors
    Constructor and description
    `BytecodeVariable (int index, ClassNode type, String name, int prevCurrent)`

  - ### Methods Summary

    Methods
    Type Params | Return Type | Name and description
    --- | --- | ---
    `` | `org.objectweb.asm.Label` | `getEndLabel()`
    `` | `int` | `getIndex()` @return the stack index for this variable
    `` | `String` | `getName()`
    `` | `int` | `getPrevIndex()`
    `` | `org.objectweb.asm.Label` | `getStartLabel()`
    `` | `ClassNode` | `getType()`
    `` | `boolean` | `isDynamicTyped()`
    `` | `boolean` | `isHolder()` @return is this local variable shared in other scopes (and so must use a ValueHolder)
    `` | `void` | `setDynamicTyped(boolean b)`
    `` | `void` | `setEndLabel(org.objectweb.asm.Label endLabel)`
    `` | `void` | `setHolder(boolean holder)`
    `` | `void` | `setStartLabel(org.objectweb.asm.Label startLabel)`
    `` | `void` | `setType(ClassNode type)`
    `` | `String` | `toString()`

  - ### Inherited Methods Summary

    Inherited Methods
    Methods inherited from class | Name
    --- | ---
    `class Object` | `wait, wait, wait, equals, toString, hashCode, getClass, notify, notifyAll`

- - ### Field Detail

    - #### public static final BytecodeVariable SUPER_VARIABLE

    - #### public static final BytecodeVariable THIS_VARIABLE

  - ### Property Detail

    - #### boolean dynamicTyped

    - #### org.objectweb.asm.Label endLabel

    - #### boolean holder

    - #### org.objectweb.asm.Label startLabel

    - #### ClassNode type

  - ### Constructor Detail

    - #### public BytecodeVariable(int index, ClassNode type, String name, int prevCurrent)

  - ### Method Detail

    - #### public org.objectweb.asm.Label getEndLabel()

    - #### public int getIndex()

      Returns:
        the stack index for this variable

    - #### public String getName()

    - #### public int getPrevIndex()

    - #### public org.objectweb.asm.Label getStartLabel()

    - #### public ClassNode getType()

    - #### public boolean isDynamicTyped()

    - #### public boolean isHolder()

      Returns:
        is this local variable shared in other scopes (and so must use a ValueHolder)

    - #### public void setDynamicTyped(boolean b)

    - #### public void setEndLabel(org.objectweb.asm.Label endLabel)

    - #### public void setHolder(boolean holder)

    - #### public void setStartLabel(org.objectweb.asm.Label startLabel)

    - #### public void setType(ClassNode type)

    - #### public String toString()