public class org.eclipse.jdt.internal.core.nd.java.NdVariable extends org.eclipse.jdt.internal.core.nd.java.NdBinding
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.eclipse.jdt.internal.core.nd.java.NdVariable
  super_class: org.eclipse.jdt.internal.core.nd.java.NdBinding
{
  public static final org.eclipse.jdt.internal.core.nd.field.FieldManyToOne<org.eclipse.jdt.internal.core.nd.java.NdTypeSignature> TYPE;
    descriptor: Lorg/eclipse/jdt/internal/core/nd/field/FieldManyToOne;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Lorg/eclipse/jdt/internal/core/nd/field/FieldManyToOne<Lorg/eclipse/jdt/internal/core/nd/java/NdTypeSignature;>;

  public static final org.eclipse.jdt.internal.core.nd.field.FieldInt VARIABLE_ID;
    descriptor: Lorg/eclipse/jdt/internal/core/nd/field/FieldInt;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.eclipse.jdt.internal.core.nd.field.FieldManyToOne<org.eclipse.jdt.internal.core.nd.java.NdMethod> DECLARING_METHOD;
    descriptor: Lorg/eclipse/jdt/internal/core/nd/field/FieldManyToOne;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Lorg/eclipse/jdt/internal/core/nd/field/FieldManyToOne<Lorg/eclipse/jdt/internal/core/nd/java/NdMethod;>;

  public static final org.eclipse.jdt.internal.core.nd.field.FieldString NAME;
    descriptor: Lorg/eclipse/jdt/internal/core/nd/field/FieldString;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.eclipse.jdt.internal.core.nd.field.FieldOneToOne<org.eclipse.jdt.internal.core.nd.java.NdConstant> CONSTANT;
    descriptor: Lorg/eclipse/jdt/internal/core/nd/field/FieldOneToOne;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Lorg/eclipse/jdt/internal/core/nd/field/FieldOneToOne<Lorg/eclipse/jdt/internal/core/nd/java/NdConstant;>;

  public static final org.eclipse.jdt.internal.core.nd.field.FieldLong TAG_BITS;
    descriptor: Lorg/eclipse/jdt/internal/core/nd/field/FieldLong;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.eclipse.jdt.internal.core.nd.field.FieldByte VARIABLE_FLAGS;
    descriptor: Lorg/eclipse/jdt/internal/core/nd/field/FieldByte;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL

  public static final org.eclipse.jdt.internal.core.nd.field.FieldList<org.eclipse.jdt.internal.core.nd.java.NdAnnotation> ANNOTATIONS;
    descriptor: Lorg/eclipse/jdt/internal/core/nd/field/FieldList;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Lorg/eclipse/jdt/internal/core/nd/field/FieldList<Lorg/eclipse/jdt/internal/core/nd/java/NdAnnotation;>;

  public static final org.eclipse.jdt.internal.core.nd.field.FieldList<org.eclipse.jdt.internal.core.nd.java.NdTypeAnnotation> TYPE_ANNOTATIONS;
    descriptor: Lorg/eclipse/jdt/internal/core/nd/field/FieldList;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Lorg/eclipse/jdt/internal/core/nd/field/FieldList<Lorg/eclipse/jdt/internal/core/nd/java/NdTypeAnnotation;>;

  public static org.eclipse.jdt.internal.core.nd.field.StructDef<org.eclipse.jdt.internal.core.nd.java.NdVariable> type;
    descriptor: Lorg/eclipse/jdt/internal/core/nd/field/StructDef;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Signature: Lorg/eclipse/jdt/internal/core/nd/field/StructDef<Lorg/eclipse/jdt/internal/core/nd/java/NdVariable;>;

  public static final byte FLG_GENERIC_SIGNATURE_PRESENT;
    descriptor: B
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=3, locals=0, args_size=0
         0: .line 46
            ldc Lorg/eclipse/jdt/internal/core/nd/java/NdVariable;
            getstatic org.eclipse.jdt.internal.core.nd.java.NdBinding.type:Lorg/eclipse/jdt/internal/core/nd/field/StructDef;
            invokestatic org.eclipse.jdt.internal.core.nd.field.StructDef.create:(Ljava/lang/Class;Lorg/eclipse/jdt/internal/core/nd/field/StructDef;)Lorg/eclipse/jdt/internal/core/nd/field/StructDef;
            putstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.type:Lorg/eclipse/jdt/internal/core/nd/field/StructDef;
         1: .line 47
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.type:Lorg/eclipse/jdt/internal/core/nd/field/StructDef;
            getstatic org.eclipse.jdt.internal.core.nd.java.NdTypeSignature.VARIABLES_OF_TYPE:Lorg/eclipse/jdt/internal/core/nd/field/FieldOneToMany;
            invokestatic org.eclipse.jdt.internal.core.nd.field.FieldManyToOne.create:(Lorg/eclipse/jdt/internal/core/nd/field/StructDef;Lorg/eclipse/jdt/internal/core/nd/field/FieldOneToMany;)Lorg/eclipse/jdt/internal/core/nd/field/FieldManyToOne;
            putstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.TYPE:Lorg/eclipse/jdt/internal/core/nd/field/FieldManyToOne;
         2: .line 48
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.type:Lorg/eclipse/jdt/internal/core/nd/field/StructDef;
            invokevirtual org.eclipse.jdt.internal.core.nd.field.StructDef.addInt:()Lorg/eclipse/jdt/internal/core/nd/field/FieldInt;
            putstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.VARIABLE_ID:Lorg/eclipse/jdt/internal/core/nd/field/FieldInt;
         3: .line 49
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.type:Lorg/eclipse/jdt/internal/core/nd/field/StructDef;
            getstatic org.eclipse.jdt.internal.core.nd.java.NdMethod.DECLARED_VARIABLES:Lorg/eclipse/jdt/internal/core/nd/field/FieldOneToMany;
            invokestatic org.eclipse.jdt.internal.core.nd.field.FieldManyToOne.create:(Lorg/eclipse/jdt/internal/core/nd/field/StructDef;Lorg/eclipse/jdt/internal/core/nd/field/FieldOneToMany;)Lorg/eclipse/jdt/internal/core/nd/field/FieldManyToOne;
            putstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.DECLARING_METHOD:Lorg/eclipse/jdt/internal/core/nd/field/FieldManyToOne;
         4: .line 50
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.type:Lorg/eclipse/jdt/internal/core/nd/field/StructDef;
            invokevirtual org.eclipse.jdt.internal.core.nd.field.StructDef.addString:()Lorg/eclipse/jdt/internal/core/nd/field/FieldString;
            putstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.NAME:Lorg/eclipse/jdt/internal/core/nd/field/FieldString;
         5: .line 51
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.type:Lorg/eclipse/jdt/internal/core/nd/field/StructDef;
            getstatic org.eclipse.jdt.internal.core.nd.java.NdConstant.type:Lorg/eclipse/jdt/internal/core/nd/field/StructDef;
            getstatic org.eclipse.jdt.internal.core.nd.java.NdConstant.PARENT_VARIABLE:Lorg/eclipse/jdt/internal/core/nd/field/FieldOneToOne;
            invokestatic org.eclipse.jdt.internal.core.nd.field.FieldOneToOne.create:(Lorg/eclipse/jdt/internal/core/nd/field/StructDef;Lorg/eclipse/jdt/internal/core/nd/field/StructDef;Lorg/eclipse/jdt/internal/core/nd/field/FieldOneToOne;)Lorg/eclipse/jdt/internal/core/nd/field/FieldOneToOne;
            putstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.CONSTANT:Lorg/eclipse/jdt/internal/core/nd/field/FieldOneToOne;
         6: .line 52
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.type:Lorg/eclipse/jdt/internal/core/nd/field/StructDef;
            invokevirtual org.eclipse.jdt.internal.core.nd.field.StructDef.addLong:()Lorg/eclipse/jdt/internal/core/nd/field/FieldLong;
            putstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.TAG_BITS:Lorg/eclipse/jdt/internal/core/nd/field/FieldLong;
         7: .line 53
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.type:Lorg/eclipse/jdt/internal/core/nd/field/StructDef;
            invokevirtual org.eclipse.jdt.internal.core.nd.field.StructDef.addByte:()Lorg/eclipse/jdt/internal/core/nd/field/FieldByte;
            putstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.VARIABLE_FLAGS:Lorg/eclipse/jdt/internal/core/nd/field/FieldByte;
         8: .line 54
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.type:Lorg/eclipse/jdt/internal/core/nd/field/StructDef;
            getstatic org.eclipse.jdt.internal.core.nd.java.NdAnnotation.type:Lorg/eclipse/jdt/internal/core/nd/field/StructDef;
            invokestatic org.eclipse.jdt.internal.core.nd.field.FieldList.create:(Lorg/eclipse/jdt/internal/core/nd/field/StructDef;Lorg/eclipse/jdt/internal/core/nd/field/StructDef;)Lorg/eclipse/jdt/internal/core/nd/field/FieldList;
            putstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.ANNOTATIONS:Lorg/eclipse/jdt/internal/core/nd/field/FieldList;
         9: .line 55
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.type:Lorg/eclipse/jdt/internal/core/nd/field/StructDef;
            getstatic org.eclipse.jdt.internal.core.nd.java.NdTypeAnnotation.type:Lorg/eclipse/jdt/internal/core/nd/field/StructDef;
            invokestatic org.eclipse.jdt.internal.core.nd.field.FieldList.create:(Lorg/eclipse/jdt/internal/core/nd/field/StructDef;Lorg/eclipse/jdt/internal/core/nd/field/StructDef;)Lorg/eclipse/jdt/internal/core/nd/field/FieldList;
            putstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.TYPE_ANNOTATIONS:Lorg/eclipse/jdt/internal/core/nd/field/FieldList;
        10: .line 56
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.type:Lorg/eclipse/jdt/internal/core/nd/field/StructDef;
            invokevirtual org.eclipse.jdt.internal.core.nd.field.StructDef.done:()V
        11: .line 57
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(org.eclipse.jdt.internal.core.nd.Nd, long);
    descriptor: (Lorg/eclipse/jdt/internal/core/nd/Nd;J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
        start local 1 // org.eclipse.jdt.internal.core.nd.Nd nd
        start local 2 // long bindingRecord
         0: .line 60
            aload 0 /* this */
            aload 1 /* nd */
            lload 2 /* bindingRecord */
            invokespecial org.eclipse.jdt.internal.core.nd.java.NdBinding.<init>:(Lorg/eclipse/jdt/internal/core/nd/Nd;J)V
         1: .line 61
            return
        end local 2 // long bindingRecord
        end local 1 // org.eclipse.jdt.internal.core.nd.Nd nd
        end local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Lorg/eclipse/jdt/internal/core/nd/java/NdVariable;
            0    2     1             nd  Lorg/eclipse/jdt/internal/core/nd/Nd;
            0    2     2  bindingRecord  J
    MethodParameters:
               Name  Flags
      nd             
      bindingRecord  

  public boolean hasVariableFlag(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
        start local 1 // int toTest
         0: .line 64
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.VARIABLE_FLAGS:Lorg/eclipse/jdt/internal/core/nd/field/FieldByte;
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdVariable.getNd:()Lorg/eclipse/jdt/internal/core/nd/Nd;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.java.NdVariable.address:J
            invokevirtual org.eclipse.jdt.internal.core.nd.field.FieldByte.get:(Lorg/eclipse/jdt/internal/core/nd/Nd;J)B
            iload 1 /* toTest */
            iand
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // int toTest
        end local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/eclipse/jdt/internal/core/nd/java/NdVariable;
            0    2     1  toTest  I
    MethodParameters:
        Name  Flags
      toTest  

  public void setVariableFlag(byte);
    descriptor: (B)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
        start local 1 // byte toSet
         0: .line 68
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.VARIABLE_FLAGS:Lorg/eclipse/jdt/internal/core/nd/field/FieldByte;
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdVariable.getNd:()Lorg/eclipse/jdt/internal/core/nd/Nd;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.java.NdVariable.address:J
            invokevirtual org.eclipse.jdt.internal.core.nd.field.FieldByte.get:(Lorg/eclipse/jdt/internal/core/nd/Nd;J)B
            iload 1 /* toSet */
            ior
            istore 2 /* newFlags */
        start local 2 // int newFlags
         1: .line 69
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.VARIABLE_FLAGS:Lorg/eclipse/jdt/internal/core/nd/field/FieldByte;
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdVariable.getNd:()Lorg/eclipse/jdt/internal/core/nd/Nd;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.java.NdVariable.address:J
            iload 2 /* newFlags */
            i2b
            invokevirtual org.eclipse.jdt.internal.core.nd.field.FieldByte.put:(Lorg/eclipse/jdt/internal/core/nd/Nd;JB)V
         2: .line 70
            return
        end local 2 // int newFlags
        end local 1 // byte toSet
        end local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lorg/eclipse/jdt/internal/core/nd/java/NdVariable;
            0    3     1     toSet  B
            1    3     2  newFlags  I
    MethodParameters:
       Name  Flags
      toSet  

  public void setName(char[]);
    descriptor: ([C)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
        start local 1 // char[] name
         0: .line 73
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.NAME:Lorg/eclipse/jdt/internal/core/nd/field/FieldString;
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdVariable.getNd:()Lorg/eclipse/jdt/internal/core/nd/Nd;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.java.NdVariable.address:J
            aload 1 /* name */
            invokevirtual org.eclipse.jdt.internal.core.nd.field.FieldString.put:(Lorg/eclipse/jdt/internal/core/nd/Nd;J[C)V
         1: .line 74
            return
        end local 1 // char[] name
        end local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/eclipse/jdt/internal/core/nd/java/NdVariable;
            0    2     1  name  [C
    MethodParameters:
      Name  Flags
      name  

  public org.eclipse.jdt.internal.core.nd.db.IString getName();
    descriptor: ()Lorg/eclipse/jdt/internal/core/nd/db/IString;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
         0: .line 77
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.NAME:Lorg/eclipse/jdt/internal/core/nd/field/FieldString;
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdVariable.getNd:()Lorg/eclipse/jdt/internal/core/nd/Nd;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.java.NdVariable.address:J
            invokevirtual org.eclipse.jdt.internal.core.nd.field.FieldString.get:(Lorg/eclipse/jdt/internal/core/nd/Nd;J)Lorg/eclipse/jdt/internal/core/nd/db/IString;
            areturn
        end local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/nd/java/NdVariable;

  public void setType(org.eclipse.jdt.internal.core.nd.java.NdTypeSignature);
    descriptor: (Lorg/eclipse/jdt/internal/core/nd/java/NdTypeSignature;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
        start local 1 // org.eclipse.jdt.internal.core.nd.java.NdTypeSignature typeId
         0: .line 81
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.TYPE:Lorg/eclipse/jdt/internal/core/nd/field/FieldManyToOne;
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdVariable.getNd:()Lorg/eclipse/jdt/internal/core/nd/Nd;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.java.NdVariable.address:J
            aload 1 /* typeId */
            invokevirtual org.eclipse.jdt.internal.core.nd.field.FieldManyToOne.put:(Lorg/eclipse/jdt/internal/core/nd/Nd;JLorg/eclipse/jdt/internal/core/nd/INdStruct;)V
         1: .line 82
            return
        end local 1 // org.eclipse.jdt.internal.core.nd.java.NdTypeSignature typeId
        end local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/eclipse/jdt/internal/core/nd/java/NdVariable;
            0    2     1  typeId  Lorg/eclipse/jdt/internal/core/nd/java/NdTypeSignature;
    MethodParameters:
        Name  Flags
      typeId  

  public void setConstant(org.eclipse.jdt.internal.core.nd.java.NdConstant);
    descriptor: (Lorg/eclipse/jdt/internal/core/nd/java/NdConstant;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
        start local 1 // org.eclipse.jdt.internal.core.nd.java.NdConstant constant
         0: .line 85
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.CONSTANT:Lorg/eclipse/jdt/internal/core/nd/field/FieldOneToOne;
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdVariable.getNd:()Lorg/eclipse/jdt/internal/core/nd/Nd;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.java.NdVariable.address:J
            aload 1 /* constant */
            invokevirtual org.eclipse.jdt.internal.core.nd.field.FieldOneToOne.put:(Lorg/eclipse/jdt/internal/core/nd/Nd;JLorg/eclipse/jdt/internal/core/nd/INdStruct;)V
         1: .line 86
            return
        end local 1 // org.eclipse.jdt.internal.core.nd.java.NdConstant constant
        end local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lorg/eclipse/jdt/internal/core/nd/java/NdVariable;
            0    2     1  constant  Lorg/eclipse/jdt/internal/core/nd/java/NdConstant;
    MethodParameters:
          Name  Flags
      constant  

  public org.eclipse.jdt.internal.core.nd.java.NdConstant getConstant();
    descriptor: ()Lorg/eclipse/jdt/internal/core/nd/java/NdConstant;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
         0: .line 89
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.CONSTANT:Lorg/eclipse/jdt/internal/core/nd/field/FieldOneToOne;
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdVariable.getNd:()Lorg/eclipse/jdt/internal/core/nd/Nd;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.java.NdVariable.address:J
            invokevirtual org.eclipse.jdt.internal.core.nd.field.FieldOneToOne.get:(Lorg/eclipse/jdt/internal/core/nd/Nd;J)Lorg/eclipse/jdt/internal/core/nd/INdStruct;
            checkcast org.eclipse.jdt.internal.core.nd.java.NdConstant
            areturn
        end local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/nd/java/NdVariable;

  public org.eclipse.jdt.internal.core.nd.java.NdTypeSignature getType();
    descriptor: ()Lorg/eclipse/jdt/internal/core/nd/java/NdTypeSignature;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
         0: .line 93
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.TYPE:Lorg/eclipse/jdt/internal/core/nd/field/FieldManyToOne;
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdVariable.getNd:()Lorg/eclipse/jdt/internal/core/nd/Nd;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.java.NdVariable.address:J
            invokevirtual org.eclipse.jdt.internal.core.nd.field.FieldManyToOne.get:(Lorg/eclipse/jdt/internal/core/nd/Nd;J)Lorg/eclipse/jdt/internal/core/nd/INdStruct;
            checkcast org.eclipse.jdt.internal.core.nd.java.NdTypeSignature
            areturn
        end local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/nd/java/NdVariable;

  public long getTagBits();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
         0: .line 97
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.TAG_BITS:Lorg/eclipse/jdt/internal/core/nd/field/FieldLong;
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdVariable.getNd:()Lorg/eclipse/jdt/internal/core/nd/Nd;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.java.NdVariable.address:J
            invokevirtual org.eclipse.jdt.internal.core.nd.field.FieldLong.get:(Lorg/eclipse/jdt/internal/core/nd/Nd;J)J
            lreturn
        end local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/nd/java/NdVariable;

  public void setTagBits(long);
    descriptor: (J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
        start local 1 // long tagBits
         0: .line 101
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.TAG_BITS:Lorg/eclipse/jdt/internal/core/nd/field/FieldLong;
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdVariable.getNd:()Lorg/eclipse/jdt/internal/core/nd/Nd;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.java.NdVariable.address:J
            lload 1 /* tagBits */
            invokevirtual org.eclipse.jdt.internal.core.nd.field.FieldLong.put:(Lorg/eclipse/jdt/internal/core/nd/Nd;JJ)V
         1: .line 102
            return
        end local 1 // long tagBits
        end local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lorg/eclipse/jdt/internal/core/nd/java/NdVariable;
            0    2     1  tagBits  J
    MethodParameters:
         Name  Flags
      tagBits  

  public java.util.List<org.eclipse.jdt.internal.core.nd.java.NdTypeAnnotation> getTypeAnnotations();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
         0: .line 105
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.TYPE_ANNOTATIONS:Lorg/eclipse/jdt/internal/core/nd/field/FieldList;
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdVariable.getNd:()Lorg/eclipse/jdt/internal/core/nd/Nd;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.java.NdVariable.address:J
            invokevirtual org.eclipse.jdt.internal.core.nd.field.FieldList.asList:(Lorg/eclipse/jdt/internal/core/nd/Nd;J)Ljava/util/List;
            areturn
        end local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/nd/java/NdVariable;
    Signature: ()Ljava/util/List<Lorg/eclipse/jdt/internal/core/nd/java/NdTypeAnnotation;>;

  public java.util.List<org.eclipse.jdt.internal.core.nd.java.NdAnnotation> getAnnotations();
    descriptor: ()Ljava/util/List;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
         0: .line 109
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.ANNOTATIONS:Lorg/eclipse/jdt/internal/core/nd/field/FieldList;
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdVariable.getNd:()Lorg/eclipse/jdt/internal/core/nd/Nd;
            aload 0 /* this */
            getfield org.eclipse.jdt.internal.core.nd.java.NdVariable.address:J
            invokevirtual org.eclipse.jdt.internal.core.nd.field.FieldList.asList:(Lorg/eclipse/jdt/internal/core/nd/Nd;J)Ljava/util/List;
            areturn
        end local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/nd/java/NdVariable;
    Signature: ()Ljava/util/List<Lorg/eclipse/jdt/internal/core/nd/java/NdAnnotation;>;

  public org.eclipse.jdt.internal.core.nd.java.NdAnnotation createAnnotation();
    descriptor: ()Lorg/eclipse/jdt/internal/core/nd/java/NdAnnotation;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
         0: .line 113
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.ANNOTATIONS:Lorg/eclipse/jdt/internal/core/nd/field/FieldList;
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdVariable.getNd:()Lorg/eclipse/jdt/internal/core/nd/Nd;
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdVariable.getAddress:()J
            invokevirtual org.eclipse.jdt.internal.core.nd.field.FieldList.append:(Lorg/eclipse/jdt/internal/core/nd/Nd;J)Ljava/lang/Object;
            checkcast org.eclipse.jdt.internal.core.nd.java.NdAnnotation
            areturn
        end local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/nd/java/NdVariable;

  public void allocateAnnotations(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
        start local 1 // int length
         0: .line 117
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.ANNOTATIONS:Lorg/eclipse/jdt/internal/core/nd/field/FieldList;
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdVariable.getNd:()Lorg/eclipse/jdt/internal/core/nd/Nd;
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdVariable.getAddress:()J
            iload 1 /* length */
            invokevirtual org.eclipse.jdt.internal.core.nd.field.FieldList.allocate:(Lorg/eclipse/jdt/internal/core/nd/Nd;JI)V
         1: .line 118
            return
        end local 1 // int length
        end local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/eclipse/jdt/internal/core/nd/java/NdVariable;
            0    2     1  length  I
    MethodParameters:
        Name  Flags
      length  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
         0: .line 123
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            astore 1 /* result */
        start local 1 // java.lang.StringBuilder result
         1: .line 124
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdVariable.getType:()Lorg/eclipse/jdt/internal/core/nd/java/NdTypeSignature;
            astore 2 /* localType */
        start local 2 // org.eclipse.jdt.internal.core.nd.java.NdTypeSignature localType
         2: .line 125
            aload 2 /* localType */
            ifnull 5
         3: .line 126
            aload 1 /* result */
            aload 2 /* localType */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdTypeSignature.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         4: .line 127
            aload 1 /* result */
            ldc " "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         5: .line 129
      StackMap locals: java.lang.StringBuilder org.eclipse.jdt.internal.core.nd.java.NdTypeSignature
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdVariable.getName:()Lorg/eclipse/jdt/internal/core/nd/db/IString;
            astore 3 /* name */
        start local 3 // org.eclipse.jdt.internal.core.nd.db.IString name
         6: .line 130
            aload 3 /* name */
            ifnull 8
         7: .line 131
            aload 1 /* result */
            aload 3 /* name */
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
         8: .line 133
      StackMap locals: org.eclipse.jdt.internal.core.nd.db.IString
      StackMap stack:
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdVariable.getConstant:()Lorg/eclipse/jdt/internal/core/nd/java/NdConstant;
            astore 4 /* constant */
        start local 4 // org.eclipse.jdt.internal.core.nd.java.NdConstant constant
         9: .line 134
            aload 4 /* constant */
            ifnull 12
        10: .line 135
            aload 1 /* result */
            ldc " = "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        11: .line 136
            aload 1 /* result */
            aload 4 /* constant */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdConstant.toString:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            pop
        12: .line 138
      StackMap locals: org.eclipse.jdt.internal.core.nd.java.NdConstant
      StackMap stack:
            aload 1 /* result */
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        13: areturn
        end local 4 // org.eclipse.jdt.internal.core.nd.java.NdConstant constant
        end local 3 // org.eclipse.jdt.internal.core.nd.db.IString name
        end local 2 // org.eclipse.jdt.internal.core.nd.java.NdTypeSignature localType
        end local 1 // java.lang.StringBuilder result
        14: .line 139
      StackMap locals: org.eclipse.jdt.internal.core.nd.java.NdVariable
      StackMap stack: java.lang.RuntimeException
            pop
        15: .line 142
            aload 0 /* this */
            invokespecial java.lang.Object.toString:()Ljava/lang/String;
            areturn
        end local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   16     0       this  Lorg/eclipse/jdt/internal/core/nd/java/NdVariable;
            1   14     1     result  Ljava/lang/StringBuilder;
            2   14     2  localType  Lorg/eclipse/jdt/internal/core/nd/java/NdTypeSignature;
            6   14     3       name  Lorg/eclipse/jdt/internal/core/nd/db/IString;
            9   14     4   constant  Lorg/eclipse/jdt/internal/core/nd/java/NdConstant;
      Exception table:
        from    to  target  type
           0    13      14  Class java.lang.RuntimeException

  public org.eclipse.jdt.internal.core.nd.java.NdTypeAnnotation createTypeAnnotation();
    descriptor: ()Lorg/eclipse/jdt/internal/core/nd/java/NdTypeAnnotation;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
         0: .line 147
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.TYPE_ANNOTATIONS:Lorg/eclipse/jdt/internal/core/nd/field/FieldList;
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdVariable.getNd:()Lorg/eclipse/jdt/internal/core/nd/Nd;
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdVariable.getAddress:()J
            invokevirtual org.eclipse.jdt.internal.core.nd.field.FieldList.append:(Lorg/eclipse/jdt/internal/core/nd/Nd;J)Ljava/lang/Object;
            checkcast org.eclipse.jdt.internal.core.nd.java.NdTypeAnnotation
            areturn
        end local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/eclipse/jdt/internal/core/nd/java/NdVariable;

  public void allocateTypeAnnotations(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
        start local 1 // int length
         0: .line 151
            getstatic org.eclipse.jdt.internal.core.nd.java.NdVariable.TYPE_ANNOTATIONS:Lorg/eclipse/jdt/internal/core/nd/field/FieldList;
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdVariable.getNd:()Lorg/eclipse/jdt/internal/core/nd/Nd;
            aload 0 /* this */
            invokevirtual org.eclipse.jdt.internal.core.nd.java.NdVariable.getAddress:()J
            iload 1 /* length */
            invokevirtual org.eclipse.jdt.internal.core.nd.field.FieldList.allocate:(Lorg/eclipse/jdt/internal/core/nd/Nd;JI)V
         1: .line 152
            return
        end local 1 // int length
        end local 0 // org.eclipse.jdt.internal.core.nd.java.NdVariable this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/eclipse/jdt/internal/core/nd/java/NdVariable;
            0    2     1  length  I
    MethodParameters:
        Name  Flags
      length  
}
SourceFile: "NdVariable.java"