public class sun.tools.tree.ArrayExpression extends sun.tools.tree.NaryExpression
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: sun.tools.tree.ArrayExpression
  super_class: sun.tools.tree.NaryExpression
{
  public void <init>(long, sun.tools.tree.Expression[]);
    descriptor: (J[Lsun/tools/tree/Expression;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=3
        start local 0 // sun.tools.tree.ArrayExpression this
        start local 1 // long where
        start local 3 // sun.tools.tree.Expression[] args
         0: .line 44
            aload 0 /* this */
            bipush 57
            lload 1 /* where */
            getstatic sun.tools.java.Type.tError:Lsun/tools/java/Type;
            aconst_null
            aload 3 /* args */
            invokespecial sun.tools.tree.NaryExpression.<init>:(IJLsun/tools/java/Type;Lsun/tools/tree/Expression;[Lsun/tools/tree/Expression;)V
         1: .line 45
            return
        end local 3 // sun.tools.tree.Expression[] args
        end local 1 // long where
        end local 0 // sun.tools.tree.ArrayExpression this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Lsun/tools/tree/ArrayExpression;
            0    2     1  where  J
            0    2     3   args  [Lsun/tools/tree/Expression;
    MethodParameters:
       Name  Flags
      where  
      args   

  public sun.tools.tree.Vset checkValue(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.tree.Vset, java.util.Hashtable);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;)Lsun/tools/tree/Vset;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // sun.tools.tree.ArrayExpression this
        start local 1 // sun.tools.java.Environment env
        start local 2 // sun.tools.tree.Context ctx
        start local 3 // sun.tools.tree.Vset vset
        start local 4 // java.util.Hashtable exp
         0: .line 51
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.where:J
            ldc "invalid.array.expr"
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;)V
         1: .line 52
            aload 3 /* vset */
            areturn
        end local 4 // java.util.Hashtable exp
        end local 3 // sun.tools.tree.Vset vset
        end local 2 // sun.tools.tree.Context ctx
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.tree.ArrayExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/tools/tree/ArrayExpression;
            0    2     1   env  Lsun/tools/java/Environment;
            0    2     2   ctx  Lsun/tools/tree/Context;
            0    2     3  vset  Lsun/tools/tree/Vset;
            0    2     4   exp  Ljava/util/Hashtable;
    MethodParameters:
      Name  Flags
      env   
      ctx   
      vset  
      exp   

  public sun.tools.tree.Vset checkInitializer(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.tree.Vset, sun.tools.java.Type, java.util.Hashtable);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Lsun/tools/java/Type;Ljava/util/Hashtable;)Lsun/tools/tree/Vset;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=7, args_size=6
        start local 0 // sun.tools.tree.ArrayExpression this
        start local 1 // sun.tools.java.Environment env
        start local 2 // sun.tools.tree.Context ctx
        start local 3 // sun.tools.tree.Vset vset
        start local 4 // sun.tools.java.Type t
        start local 5 // java.util.Hashtable exp
         0: .line 55
            aload 4 /* t */
            bipush 9
            invokevirtual sun.tools.java.Type.isType:(I)Z
            ifne 4
         1: .line 56
            aload 4 /* t */
            bipush 13
            invokevirtual sun.tools.java.Type.isType:(I)Z
            ifne 3
         2: .line 57
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.where:J
            ldc "invalid.array.init"
            aload 4 /* t */
            invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;)V
         3: .line 59
      StackMap locals:
      StackMap stack:
            aload 3 /* vset */
            areturn
         4: .line 61
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 4 /* t */
            putfield sun.tools.tree.ArrayExpression.type:Lsun/tools/java/Type;
         5: .line 62
            aload 4 /* t */
            invokevirtual sun.tools.java.Type.getElementType:()Lsun/tools/java/Type;
            astore 4 /* t */
         6: .line 63
            iconst_0
            istore 6 /* i */
        start local 6 // int i
         7: goto 11
         8: .line 64
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.args:[Lsun/tools/tree/Expression;
            iload 6 /* i */
            aaload
            aload 1 /* env */
            aload 2 /* ctx */
            aload 3 /* vset */
            aload 4 /* t */
            aload 5 /* exp */
            invokevirtual sun.tools.tree.Expression.checkInitializer:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Lsun/tools/java/Type;Ljava/util/Hashtable;)Lsun/tools/tree/Vset;
            astore 3 /* vset */
         9: .line 65
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.args:[Lsun/tools/tree/Expression;
            iload 6 /* i */
            aload 0 /* this */
            aload 1 /* env */
            aload 2 /* ctx */
            aload 4 /* t */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.args:[Lsun/tools/tree/Expression;
            iload 6 /* i */
            aaload
            invokevirtual sun.tools.tree.ArrayExpression.convert:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/Type;Lsun/tools/tree/Expression;)Lsun/tools/tree/Expression;
            aastore
        10: .line 63
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 6 /* i */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.args:[Lsun/tools/tree/Expression;
            arraylength
            if_icmplt 8
        end local 6 // int i
        12: .line 67
            aload 3 /* vset */
            areturn
        end local 5 // java.util.Hashtable exp
        end local 4 // sun.tools.java.Type t
        end local 3 // sun.tools.tree.Vset vset
        end local 2 // sun.tools.tree.Context ctx
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.tree.ArrayExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Lsun/tools/tree/ArrayExpression;
            0   13     1   env  Lsun/tools/java/Environment;
            0   13     2   ctx  Lsun/tools/tree/Context;
            0   13     3  vset  Lsun/tools/tree/Vset;
            0   13     4     t  Lsun/tools/java/Type;
            0   13     5   exp  Ljava/util/Hashtable;
            7   12     6     i  I
    MethodParameters:
      Name  Flags
      env   
      ctx   
      vset  
      t     
      exp   

  public sun.tools.tree.Expression inline(sun.tools.java.Environment, sun.tools.tree.Context);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=3
        start local 0 // sun.tools.tree.ArrayExpression this
        start local 1 // sun.tools.java.Environment env
        start local 2 // sun.tools.tree.Context ctx
         0: .line 74
            aconst_null
            astore 3 /* e */
        start local 3 // sun.tools.tree.Expression e
         1: .line 75
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         2: goto 9
         3: .line 76
      StackMap locals: sun.tools.tree.Expression int
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.args:[Lsun/tools/tree/Expression;
            iload 4 /* i */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.args:[Lsun/tools/tree/Expression;
            iload 4 /* i */
            aaload
            aload 1 /* env */
            aload 2 /* ctx */
            invokevirtual sun.tools.tree.Expression.inline:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
            aastore
         4: .line 77
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.args:[Lsun/tools/tree/Expression;
            iload 4 /* i */
            aaload
            ifnull 8
         5: .line 78
            aload 3 /* e */
            ifnonnull 6
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.args:[Lsun/tools/tree/Expression;
            iload 4 /* i */
            aaload
            goto 7
      StackMap locals:
      StackMap stack:
         6: new sun.tools.tree.CommaExpression
            dup
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.where:J
            aload 3 /* e */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.args:[Lsun/tools/tree/Expression;
            iload 4 /* i */
            aaload
            invokespecial sun.tools.tree.CommaExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/tree/Expression;)V
      StackMap locals:
      StackMap stack: sun.tools.tree.Expression
         7: astore 3 /* e */
         8: .line 75
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 4 /* i */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.args:[Lsun/tools/tree/Expression;
            arraylength
            if_icmplt 3
        end local 4 // int i
        10: .line 81
            aload 3 /* e */
            areturn
        end local 3 // sun.tools.tree.Expression e
        end local 2 // sun.tools.tree.Context ctx
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.tree.ArrayExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lsun/tools/tree/ArrayExpression;
            0   11     1   env  Lsun/tools/java/Environment;
            0   11     2   ctx  Lsun/tools/tree/Context;
            1   11     3     e  Lsun/tools/tree/Expression;
            2   10     4     i  I
    MethodParameters:
      Name  Flags
      env   
      ctx   

  public sun.tools.tree.Expression inlineValue(sun.tools.java.Environment, sun.tools.tree.Context);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // sun.tools.tree.ArrayExpression this
        start local 1 // sun.tools.java.Environment env
        start local 2 // sun.tools.tree.Context ctx
         0: .line 84
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         1: goto 4
         2: .line 85
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.args:[Lsun/tools/tree/Expression;
            iload 3 /* i */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.args:[Lsun/tools/tree/Expression;
            iload 3 /* i */
            aaload
            aload 1 /* env */
            aload 2 /* ctx */
            invokevirtual sun.tools.tree.Expression.inlineValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
            aastore
         3: .line 84
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         4: iload 3 /* i */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.args:[Lsun/tools/tree/Expression;
            arraylength
            if_icmplt 2
        end local 3 // int i
         5: .line 87
            aload 0 /* this */
            areturn
        end local 2 // sun.tools.tree.Context ctx
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.tree.ArrayExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lsun/tools/tree/ArrayExpression;
            0    6     1   env  Lsun/tools/java/Environment;
            0    6     2   ctx  Lsun/tools/tree/Context;
            1    5     3     i  I
    MethodParameters:
      Name  Flags
      env   
      ctx   

  public void codeValue(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.asm.Assembler);
    descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/asm/Assembler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=5, args_size=4
        start local 0 // sun.tools.tree.ArrayExpression this
        start local 1 // sun.tools.java.Environment env
        start local 2 // sun.tools.tree.Context ctx
        start local 3 // sun.tools.asm.Assembler asm
         0: .line 95
            aload 3 /* asm */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.where:J
            bipush 18
            new java.lang.Integer
            dup
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.args:[Lsun/tools/tree/Expression;
            arraylength
            invokespecial java.lang.Integer.<init>:(I)V
            invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
         1: .line 96
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.type:Lsun/tools/java/Type;
            invokevirtual sun.tools.java.Type.getElementType:()Lsun/tools/java/Type;
            invokevirtual sun.tools.java.Type.getTypeCode:()I
            tableswitch { // 0 - 10
                    0: 2
                    1: 3
                    2: 5
                    3: 4
                    4: 6
                    5: 7
                    6: 8
                    7: 9
                    8: 14
                    9: 10
                   10: 12
              default: 14
          }
         2: .line 97
      StackMap locals:
      StackMap stack:
            aload 3 /* asm */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.where:J
            sipush 188
            new java.lang.Integer
            dup
            iconst_4
            invokespecial java.lang.Integer.<init>:(I)V
            invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
            goto 15
         3: .line 98
      StackMap locals:
      StackMap stack:
            aload 3 /* asm */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.where:J
            sipush 188
            new java.lang.Integer
            dup
            bipush 8
            invokespecial java.lang.Integer.<init>:(I)V
            invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
            goto 15
         4: .line 99
      StackMap locals:
      StackMap stack:
            aload 3 /* asm */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.where:J
            sipush 188
            new java.lang.Integer
            dup
            bipush 9
            invokespecial java.lang.Integer.<init>:(I)V
            invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
            goto 15
         5: .line 100
      StackMap locals:
      StackMap stack:
            aload 3 /* asm */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.where:J
            sipush 188
            new java.lang.Integer
            dup
            iconst_5
            invokespecial java.lang.Integer.<init>:(I)V
            invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
            goto 15
         6: .line 101
      StackMap locals:
      StackMap stack:
            aload 3 /* asm */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.where:J
            sipush 188
            new java.lang.Integer
            dup
            bipush 10
            invokespecial java.lang.Integer.<init>:(I)V
            invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
            goto 15
         7: .line 102
      StackMap locals:
      StackMap stack:
            aload 3 /* asm */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.where:J
            sipush 188
            new java.lang.Integer
            dup
            bipush 11
            invokespecial java.lang.Integer.<init>:(I)V
            invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
            goto 15
         8: .line 103
      StackMap locals:
      StackMap stack:
            aload 3 /* asm */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.where:J
            sipush 188
            new java.lang.Integer
            dup
            bipush 6
            invokespecial java.lang.Integer.<init>:(I)V
            invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
            goto 15
         9: .line 104
      StackMap locals:
      StackMap stack:
            aload 3 /* asm */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.where:J
            sipush 188
            new java.lang.Integer
            dup
            bipush 7
            invokespecial java.lang.Integer.<init>:(I)V
            invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
            goto 15
        10: .line 107
      StackMap locals:
      StackMap stack:
            aload 3 /* asm */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.where:J
            sipush 189
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.type:Lsun/tools/java/Type;
            invokevirtual sun.tools.java.Type.getElementType:()Lsun/tools/java/Type;
            invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
        11: .line 108
            goto 15
        12: .line 111
      StackMap locals:
      StackMap stack:
            aload 3 /* asm */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.where:J
            sipush 189
            aload 1 /* env */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.type:Lsun/tools/java/Type;
            invokevirtual sun.tools.java.Type.getElementType:()Lsun/tools/java/Type;
            invokevirtual sun.tools.java.Environment.getClassDeclaration:(Lsun/tools/java/Type;)Lsun/tools/java/ClassDeclaration;
            invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
        13: .line 112
            goto 15
        14: .line 115
      StackMap locals:
      StackMap stack:
            new sun.tools.java.CompilerError
            dup
            ldc "codeValue"
            invokespecial sun.tools.java.CompilerError.<init>:(Ljava/lang/String;)V
            athrow
        15: .line 118
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        16: goto 30
        17: .line 122
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.args:[Lsun/tools/tree/Expression;
            iload 4 /* i */
            aaload
            invokevirtual sun.tools.tree.Expression.equalsDefault:()Z
            ifeq 18
            goto 29
        18: .line 124
      StackMap locals:
      StackMap stack:
            aload 3 /* asm */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.where:J
            bipush 89
            invokevirtual sun.tools.asm.Assembler.add:(JI)V
        19: .line 125
            aload 3 /* asm */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.where:J
            bipush 18
            new java.lang.Integer
            dup
            iload 4 /* i */
            invokespecial java.lang.Integer.<init>:(I)V
            invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
        20: .line 126
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.args:[Lsun/tools/tree/Expression;
            iload 4 /* i */
            aaload
            aload 1 /* env */
            aload 2 /* ctx */
            aload 3 /* asm */
            invokevirtual sun.tools.tree.Expression.codeValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/asm/Assembler;)V
        21: .line 127
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.type:Lsun/tools/java/Type;
            invokevirtual sun.tools.java.Type.getElementType:()Lsun/tools/java/Type;
            invokevirtual sun.tools.java.Type.getTypeCode:()I
            tableswitch { // 0 - 3
                    0: 22
                    1: 22
                    2: 24
                    3: 26
              default: 28
          }
        22: .line 130
      StackMap locals:
      StackMap stack:
            aload 3 /* asm */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.where:J
            bipush 84
            invokevirtual sun.tools.asm.Assembler.add:(JI)V
        23: .line 131
            goto 29
        24: .line 133
      StackMap locals:
      StackMap stack:
            aload 3 /* asm */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.where:J
            bipush 85
            invokevirtual sun.tools.asm.Assembler.add:(JI)V
        25: .line 134
            goto 29
        26: .line 136
      StackMap locals:
      StackMap stack:
            aload 3 /* asm */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.where:J
            bipush 86
            invokevirtual sun.tools.asm.Assembler.add:(JI)V
        27: .line 137
            goto 29
        28: .line 139
      StackMap locals:
      StackMap stack:
            aload 3 /* asm */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.where:J
            bipush 79
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.type:Lsun/tools/java/Type;
            invokevirtual sun.tools.java.Type.getElementType:()Lsun/tools/java/Type;
            invokevirtual sun.tools.java.Type.getTypeCodeOffset:()I
            iadd
            invokevirtual sun.tools.asm.Assembler.add:(JI)V
        29: .line 118
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        30: iload 4 /* i */
            aload 0 /* this */
            getfield sun.tools.tree.ArrayExpression.args:[Lsun/tools/tree/Expression;
            arraylength
            if_icmplt 17
        end local 4 // int i
        31: .line 142
            return
        end local 3 // sun.tools.asm.Assembler asm
        end local 2 // sun.tools.tree.Context ctx
        end local 1 // sun.tools.java.Environment env
        end local 0 // sun.tools.tree.ArrayExpression this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   32     0  this  Lsun/tools/tree/ArrayExpression;
            0   32     1   env  Lsun/tools/java/Environment;
            0   32     2   ctx  Lsun/tools/tree/Context;
            0   32     3   asm  Lsun/tools/asm/Assembler;
           16   31     4     i  I
    MethodParameters:
      Name  Flags
      env   
      ctx   
      asm   
}
SourceFile: "ArrayExpression.java"