public class sun.tools.tree.NewArrayExpression extends sun.tools.tree.NaryExpression
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.tools.tree.NewArrayExpression
super_class: sun.tools.tree.NaryExpression
{
sun.tools.tree.Expression init;
descriptor: Lsun/tools/tree/Expression;
flags: (0x0000)
public void <init>(long, sun.tools.tree.Expression, sun.tools.tree.Expression[]);
descriptor: (JLsun/tools/tree/Expression;[Lsun/tools/tree/Expression;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=5, args_size=4
start local 0 start local 1 start local 3 start local 4 0: aload 0
bipush 41
lload 1
getstatic sun.tools.java.Type.tError:Lsun/tools/java/Type;
aload 3
aload 4
invokespecial sun.tools.tree.NaryExpression.<init>:(IJLsun/tools/java/Type;Lsun/tools/tree/Expression;[Lsun/tools/tree/Expression;)V
1: return
end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/tools/tree/NewArrayExpression;
0 2 1 where J
0 2 3 right Lsun/tools/tree/Expression;
0 2 4 args [Lsun/tools/tree/Expression;
MethodParameters:
Name Flags
where
right
args
public void <init>(long, sun.tools.tree.Expression, sun.tools.tree.Expression[], sun.tools.tree.Expression);
descriptor: (JLsun/tools/tree/Expression;[Lsun/tools/tree/Expression;Lsun/tools/tree/Expression;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=5
start local 0 start local 1 start local 3 start local 4 start local 5 0: aload 0
lload 1
aload 3
aload 4
invokespecial sun.tools.tree.NewArrayExpression.<init>:(JLsun/tools/tree/Expression;[Lsun/tools/tree/Expression;)V
1: aload 0
aload 5
putfield sun.tools.tree.NewArrayExpression.init:Lsun/tools/tree/Expression;
2: return
end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/tools/tree/NewArrayExpression;
0 3 1 where J
0 3 3 right Lsun/tools/tree/Expression;
0 3 4 args [Lsun/tools/tree/Expression;
0 3 5 init Lsun/tools/tree/Expression;
MethodParameters:
Name Flags
where
right
args
init
public sun.tools.tree.Vset checkValue(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.tree.Vset, java.util.Hashtable<java.lang.Object, java.lang.Object>);
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=7, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 0
getfield sun.tools.tree.NewArrayExpression.right:Lsun/tools/tree/Expression;
aload 1
aload 2
invokevirtual sun.tools.tree.Expression.toType:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/java/Type;
putfield sun.tools.tree.NewArrayExpression.type:Lsun/tools/java/Type;
1: aload 0
getfield sun.tools.tree.NewArrayExpression.init:Lsun/tools/tree/Expression;
ifnull 2
iconst_1
goto 3
StackMap locals:
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: istore 5
start local 5 4: iconst_0
istore 6
start local 6 5: goto 18
6: StackMap locals: int int
StackMap stack:
aload 0
getfield sun.tools.tree.NewArrayExpression.args:[Lsun/tools/tree/Expression;
iload 6
aaload
astore 7
start local 7 7: aload 7
ifnonnull 12
8: iload 6
ifne 10
iload 5
ifne 10
9: aload 1
aload 0
getfield sun.tools.tree.NewArrayExpression.where:J
ldc "array.dim.missing"
invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;)V
10: StackMap locals: sun.tools.tree.Expression
StackMap stack:
iconst_1
istore 5
11: goto 16
12: StackMap locals:
StackMap stack:
iload 5
ifeq 14
13: aload 1
aload 7
getfield sun.tools.tree.Expression.where:J
ldc "invalid.array.dim"
invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;)V
14: StackMap locals:
StackMap stack:
aload 7
aload 1
aload 2
aload 3
aload 4
invokevirtual sun.tools.tree.Expression.checkValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;)Lsun/tools/tree/Vset;
astore 3
15: aload 0
getfield sun.tools.tree.NewArrayExpression.args:[Lsun/tools/tree/Expression;
iload 6
aload 0
aload 1
aload 2
getstatic sun.tools.java.Type.tInt:Lsun/tools/java/Type;
aload 7
invokevirtual sun.tools.tree.NewArrayExpression.convert:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/Type;Lsun/tools/tree/Expression;)Lsun/tools/tree/Expression;
aastore
16: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield sun.tools.tree.NewArrayExpression.type:Lsun/tools/java/Type;
invokestatic sun.tools.java.Type.tArray:(Lsun/tools/java/Type;)Lsun/tools/java/Type;
putfield sun.tools.tree.NewArrayExpression.type:Lsun/tools/java/Type;
end local 7 17: iinc 6 1
StackMap locals:
StackMap stack:
18: iload 6
aload 0
getfield sun.tools.tree.NewArrayExpression.args:[Lsun/tools/tree/Expression;
arraylength
if_icmplt 6
end local 6 19: aload 0
getfield sun.tools.tree.NewArrayExpression.init:Lsun/tools/tree/Expression;
ifnull 22
20: aload 0
getfield sun.tools.tree.NewArrayExpression.init:Lsun/tools/tree/Expression;
aload 1
aload 2
aload 3
aload 0
getfield sun.tools.tree.NewArrayExpression.type:Lsun/tools/java/Type;
aload 4
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
21: aload 0
aload 0
aload 1
aload 2
aload 0
getfield sun.tools.tree.NewArrayExpression.type:Lsun/tools/java/Type;
aload 0
getfield sun.tools.tree.NewArrayExpression.init:Lsun/tools/tree/Expression;
invokevirtual sun.tools.tree.NewArrayExpression.convert:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/Type;Lsun/tools/tree/Expression;)Lsun/tools/tree/Expression;
putfield sun.tools.tree.NewArrayExpression.init:Lsun/tools/tree/Expression;
22: StackMap locals:
StackMap stack:
aload 3
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lsun/tools/tree/NewArrayExpression;
0 23 1 env Lsun/tools/java/Environment;
0 23 2 ctx Lsun/tools/tree/Context;
0 23 3 vset Lsun/tools/tree/Vset;
0 23 4 exp Ljava/util/Hashtable<Ljava/lang/Object;Ljava/lang/Object;>;
4 23 5 flag Z
5 19 6 i I
7 17 7 dim Lsun/tools/tree/Expression;
Signature: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable<Ljava/lang/Object;Ljava/lang/Object;>;)Lsun/tools/tree/Vset;
MethodParameters:
Name Flags
env
ctx
vset
exp
public sun.tools.tree.Expression copyInline(sun.tools.tree.Context);
descriptor: (Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial sun.tools.tree.NaryExpression.copyInline:(Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
checkcast sun.tools.tree.NewArrayExpression
astore 2
start local 2 1: aload 0
getfield sun.tools.tree.NewArrayExpression.init:Lsun/tools/tree/Expression;
ifnull 3
2: aload 2
aload 0
getfield sun.tools.tree.NewArrayExpression.init:Lsun/tools/tree/Expression;
aload 1
invokevirtual sun.tools.tree.Expression.copyInline:(Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
putfield sun.tools.tree.NewArrayExpression.init:Lsun/tools/tree/Expression;
3: StackMap locals: sun.tools.tree.NewArrayExpression
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/tools/tree/NewArrayExpression;
0 4 1 ctx Lsun/tools/tree/Context;
1 4 2 e Lsun/tools/tree/NewArrayExpression;
MethodParameters:
Name Flags
ctx
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 start local 1 start local 2 0: aconst_null
astore 3
start local 3 1: iconst_0
istore 4
start local 4 2: goto 8
3: StackMap locals: sun.tools.tree.Expression int
StackMap stack:
aload 0
getfield sun.tools.tree.NewArrayExpression.args:[Lsun/tools/tree/Expression;
iload 4
aaload
ifnull 7
4: aload 3
ifnull 5
new sun.tools.tree.CommaExpression
dup
aload 0
getfield sun.tools.tree.NewArrayExpression.where:J
aload 3
aload 0
getfield sun.tools.tree.NewArrayExpression.args:[Lsun/tools/tree/Expression;
iload 4
aaload
invokespecial sun.tools.tree.CommaExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/tree/Expression;)V
goto 6
StackMap locals:
StackMap stack:
5: aload 0
getfield sun.tools.tree.NewArrayExpression.args:[Lsun/tools/tree/Expression;
iload 4
aaload
StackMap locals:
StackMap stack: sun.tools.tree.Expression
6: astore 3
7: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
8: iload 4
aload 0
getfield sun.tools.tree.NewArrayExpression.args:[Lsun/tools/tree/Expression;
arraylength
if_icmplt 3
end local 4 9: aload 0
getfield sun.tools.tree.NewArrayExpression.init:Lsun/tools/tree/Expression;
ifnull 13
10: aload 3
ifnull 11
new sun.tools.tree.CommaExpression
dup
aload 0
getfield sun.tools.tree.NewArrayExpression.where:J
aload 3
aload 0
getfield sun.tools.tree.NewArrayExpression.init:Lsun/tools/tree/Expression;
invokespecial sun.tools.tree.CommaExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/tree/Expression;)V
goto 12
StackMap locals:
StackMap stack:
11: aload 0
getfield sun.tools.tree.NewArrayExpression.init:Lsun/tools/tree/Expression;
StackMap locals:
StackMap stack: sun.tools.tree.Expression
12: astore 3
13: StackMap locals:
StackMap stack:
aload 3
ifnull 14
aload 3
aload 1
aload 2
invokevirtual sun.tools.tree.Expression.inline:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
goto 15
StackMap locals:
StackMap stack:
14: aconst_null
StackMap locals:
StackMap stack: sun.tools.tree.Expression
15: areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lsun/tools/tree/NewArrayExpression;
0 16 1 env Lsun/tools/java/Environment;
0 16 2 ctx Lsun/tools/tree/Context;
1 16 3 e Lsun/tools/tree/Expression;
2 9 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 start local 1 start local 2 0: aload 0
getfield sun.tools.tree.NewArrayExpression.init:Lsun/tools/tree/Expression;
ifnull 2
1: aload 0
getfield sun.tools.tree.NewArrayExpression.init:Lsun/tools/tree/Expression;
aload 1
aload 2
invokevirtual sun.tools.tree.Expression.inlineValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
areturn
2: StackMap locals:
StackMap stack:
iconst_0
istore 3
start local 3 3: goto 7
4: StackMap locals: int
StackMap stack:
aload 0
getfield sun.tools.tree.NewArrayExpression.args:[Lsun/tools/tree/Expression;
iload 3
aaload
ifnull 6
5: aload 0
getfield sun.tools.tree.NewArrayExpression.args:[Lsun/tools/tree/Expression;
iload 3
aload 0
getfield sun.tools.tree.NewArrayExpression.args:[Lsun/tools/tree/Expression;
iload 3
aaload
aload 1
aload 2
invokevirtual sun.tools.tree.Expression.inlineValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
aastore
6: StackMap locals:
StackMap stack:
iinc 3 1
StackMap locals:
StackMap stack:
7: iload 3
aload 0
getfield sun.tools.tree.NewArrayExpression.args:[Lsun/tools/tree/Expression;
arraylength
if_icmplt 4
end local 3 8: aload 0
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/tools/tree/NewArrayExpression;
0 9 1 env Lsun/tools/java/Environment;
0 9 2 ctx Lsun/tools/tree/Context;
3 8 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=8, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iconst_0
istore 4
start local 4 1: iconst_0
istore 5
start local 5 2: goto 7
3: StackMap locals: int int
StackMap stack:
aload 0
getfield sun.tools.tree.NewArrayExpression.args:[Lsun/tools/tree/Expression;
iload 5
aaload
ifnull 6
4: aload 0
getfield sun.tools.tree.NewArrayExpression.args:[Lsun/tools/tree/Expression;
iload 5
aaload
aload 1
aload 2
aload 3
invokevirtual sun.tools.tree.Expression.codeValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/asm/Assembler;)V
5: iinc 4 1
6: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
7: iload 5
aload 0
getfield sun.tools.tree.NewArrayExpression.args:[Lsun/tools/tree/Expression;
arraylength
if_icmplt 3
end local 5 8: aload 0
getfield sun.tools.tree.NewArrayExpression.args:[Lsun/tools/tree/Expression;
arraylength
iconst_1
if_icmple 11
9: aload 3
aload 0
getfield sun.tools.tree.NewArrayExpression.where:J
sipush 197
new sun.tools.asm.ArrayData
dup
aload 0
getfield sun.tools.tree.NewArrayExpression.type:Lsun/tools/java/Type;
iload 4
invokespecial sun.tools.asm.ArrayData.<init>:(Lsun/tools/java/Type;I)V
invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
10: return
11: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.tree.NewArrayExpression.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: 12
1: 13
2: 15
3: 14
4: 16
5: 17
6: 18
7: 19
8: 25
9: 20
10: 21
default: 25
}
12: StackMap locals:
StackMap stack:
aload 3
aload 0
getfield sun.tools.tree.NewArrayExpression.where:J
sipush 188
iconst_4
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
goto 26
13: StackMap locals:
StackMap stack:
aload 3
aload 0
getfield sun.tools.tree.NewArrayExpression.where:J
sipush 188
bipush 8
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
goto 26
14: StackMap locals:
StackMap stack:
aload 3
aload 0
getfield sun.tools.tree.NewArrayExpression.where:J
sipush 188
bipush 9
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
goto 26
15: StackMap locals:
StackMap stack:
aload 3
aload 0
getfield sun.tools.tree.NewArrayExpression.where:J
sipush 188
iconst_5
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
goto 26
16: StackMap locals:
StackMap stack:
aload 3
aload 0
getfield sun.tools.tree.NewArrayExpression.where:J
sipush 188
bipush 10
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
goto 26
17: StackMap locals:
StackMap stack:
aload 3
aload 0
getfield sun.tools.tree.NewArrayExpression.where:J
sipush 188
bipush 11
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
goto 26
18: StackMap locals:
StackMap stack:
aload 3
aload 0
getfield sun.tools.tree.NewArrayExpression.where:J
sipush 188
bipush 6
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
goto 26
19: StackMap locals:
StackMap stack:
aload 3
aload 0
getfield sun.tools.tree.NewArrayExpression.where:J
sipush 188
bipush 7
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
goto 26
20: StackMap locals:
StackMap stack:
aload 3
aload 0
getfield sun.tools.tree.NewArrayExpression.where:J
sipush 189
aload 0
getfield sun.tools.tree.NewArrayExpression.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
goto 26
21: StackMap locals:
StackMap stack:
aload 3
aload 0
getfield sun.tools.tree.NewArrayExpression.where:J
sipush 189
22: aload 1
aload 0
getfield sun.tools.tree.NewArrayExpression.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;
23: invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
24: goto 26
25: StackMap locals:
StackMap stack:
new sun.tools.java.CompilerError
dup
ldc "codeValue"
invokespecial sun.tools.java.CompilerError.<init>:(Ljava/lang/String;)V
athrow
26: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lsun/tools/tree/NewArrayExpression;
0 27 1 env Lsun/tools/java/Environment;
0 27 2 ctx Lsun/tools/tree/Context;
0 27 3 asm Lsun/tools/asm/Assembler;
1 27 4 t I
2 8 5 i I
MethodParameters:
Name Flags
env
ctx
asm
}
SourceFile: "NewArrayExpression.java"