public class sun.tools.tree.FieldExpression extends sun.tools.tree.UnaryExpression
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.tools.tree.FieldExpression
super_class: sun.tools.tree.UnaryExpression
{
sun.tools.java.Identifier id;
descriptor: Lsun/tools/java/Identifier;
flags: (0x0000)
sun.tools.java.MemberDefinition field;
descriptor: Lsun/tools/java/MemberDefinition;
flags: (0x0000)
sun.tools.tree.Expression implementation;
descriptor: Lsun/tools/tree/Expression;
flags: (0x0000)
sun.tools.java.ClassDefinition clazz;
descriptor: Lsun/tools/java/ClassDefinition;
flags: (0x0000)
private sun.tools.java.ClassDefinition superBase;
descriptor: Lsun/tools/java/ClassDefinition;
flags: (0x0002) ACC_PRIVATE
public void <init>(long, sun.tools.tree.Expression, sun.tools.java.Identifier);
descriptor: (JLsun/tools/tree/Expression;Lsun/tools/java/Identifier;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=4
start local 0 start local 1 start local 3 start local 4 0: aload 0
bipush 46
lload 1
getstatic sun.tools.java.Type.tError:Lsun/tools/java/Type;
aload 3
invokespecial sun.tools.tree.UnaryExpression.<init>:(IJLsun/tools/java/Type;Lsun/tools/tree/Expression;)V
1: aload 0
aload 4
putfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
2: return
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/FieldExpression;
0 3 1 where J
0 3 3 right Lsun/tools/tree/Expression;
0 3 4 id Lsun/tools/java/Identifier;
MethodParameters:
Name Flags
where
right
id
public void <init>(long, sun.tools.tree.Expression, sun.tools.java.MemberDefinition);
descriptor: (JLsun/tools/tree/Expression;Lsun/tools/java/MemberDefinition;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=4
start local 0 start local 1 start local 3 start local 4 0: aload 0
bipush 46
lload 1
aload 4
invokevirtual sun.tools.java.MemberDefinition.getType:()Lsun/tools/java/Type;
aload 3
invokespecial sun.tools.tree.UnaryExpression.<init>:(IJLsun/tools/java/Type;Lsun/tools/tree/Expression;)V
1: aload 0
aload 4
invokevirtual sun.tools.java.MemberDefinition.getName:()Lsun/tools/java/Identifier;
putfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
2: aload 0
aload 4
putfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
3: return
end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/tools/tree/FieldExpression;
0 4 1 where J
0 4 3 right Lsun/tools/tree/Expression;
0 4 4 field Lsun/tools/java/MemberDefinition;
MethodParameters:
Name Flags
where
right
field
public sun.tools.tree.Expression getImplementation();
descriptor: ()Lsun/tools/tree/Expression;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
ifnull 2
1: aload 0
getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
areturn
2: StackMap locals:
StackMap stack:
aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/tools/tree/FieldExpression;
private boolean isQualSuper();
descriptor: ()Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.tools.tree.FieldExpression.superBase:Lsun/tools/java/ClassDefinition;
ifnull 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/tools/tree/FieldExpression;
public static sun.tools.java.Identifier toIdentifier(sun.tools.tree.Expression);
descriptor: (Lsun/tools/tree/Expression;)Lsun/tools/java/Identifier;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 1
start local 1 1: goto 8
2: StackMap locals: java.lang.StringBuilder
StackMap stack:
aload 0
checkcast sun.tools.tree.FieldExpression
astore 2
start local 2 3: aload 2
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
getstatic sun.tools.tree.FieldExpression.idThis:Lsun/tools/java/Identifier;
if_acmpeq 4
aload 2
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
getstatic sun.tools.tree.FieldExpression.idClass:Lsun/tools/java/Identifier;
if_acmpne 5
4: StackMap locals: sun.tools.tree.FieldExpression
StackMap stack:
aconst_null
areturn
5: StackMap locals:
StackMap stack:
aload 1
iconst_0
aload 2
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
invokevirtual java.lang.StringBuilder.insert:(ILjava/lang/Object;)Ljava/lang/StringBuilder;
pop
6: aload 1
iconst_0
bipush 46
invokevirtual java.lang.StringBuilder.insert:(IC)Ljava/lang/StringBuilder;
pop
7: aload 2
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
astore 0
end local 2 8: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.tree.Expression.op:I
bipush 46
if_icmpeq 2
9: aload 0
getfield sun.tools.tree.Expression.op:I
bipush 60
if_icmpeq 11
10: aconst_null
areturn
11: StackMap locals:
StackMap stack:
aload 1
iconst_0
aload 0
checkcast sun.tools.tree.IdentifierExpression
getfield sun.tools.tree.IdentifierExpression.id:Lsun/tools/java/Identifier;
invokevirtual java.lang.StringBuilder.insert:(ILjava/lang/Object;)Ljava/lang/StringBuilder;
pop
12: aload 1
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic sun.tools.java.Identifier.lookup:(Ljava/lang/String;)Lsun/tools/java/Identifier;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 e Lsun/tools/tree/Expression;
1 13 1 sb Ljava/lang/StringBuilder;
3 8 2 fe Lsun/tools/tree/FieldExpression;
MethodParameters:
Name Flags
e
sun.tools.java.Type toType(sun.tools.java.Environment, sun.tools.tree.Context);
descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/java/Type;
flags: (0x0000)
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokestatic sun.tools.tree.FieldExpression.toIdentifier:(Lsun/tools/tree/Expression;)Lsun/tools/java/Identifier;
astore 3
start local 3 1: aload 3
ifnonnull 4
2: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
ldc "invalid.type.expr"
invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;)V
3: getstatic sun.tools.java.Type.tError:Lsun/tools/java/Type;
areturn
4: StackMap locals: sun.tools.java.Identifier
StackMap stack:
aload 2
aload 1
aload 3
invokevirtual sun.tools.tree.Context.resolveName:(Lsun/tools/java/Environment;Lsun/tools/java/Identifier;)Lsun/tools/java/Identifier;
invokestatic sun.tools.java.Type.tClass:(Lsun/tools/java/Identifier;)Lsun/tools/java/Type;
astore 4
start local 4 5: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 2
getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
aload 4
invokevirtual sun.tools.java.Environment.resolve:(JLsun/tools/java/ClassDefinition;Lsun/tools/java/Type;)Z
ifeq 7
6: aload 4
areturn
7: StackMap locals: sun.tools.java.Type
StackMap stack:
getstatic sun.tools.java.Type.tError:Lsun/tools/java/Type;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/tools/tree/FieldExpression;
0 8 1 env Lsun/tools/java/Environment;
0 8 2 ctx Lsun/tools/tree/Context;
1 8 3 id Lsun/tools/java/Identifier;
5 8 4 t Lsun/tools/java/Type;
MethodParameters:
Name Flags
env
ctx
public sun.tools.tree.Vset checkAmbigName(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.tree.Vset, java.util.Hashtable<java.lang.Object, java.lang.Object>, sun.tools.tree.UnaryExpression);
descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;Lsun/tools/tree/UnaryExpression;)Lsun/tools/tree/Vset;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
getstatic sun.tools.tree.FieldExpression.idThis:Lsun/tools/java/Identifier;
if_acmpeq 1
aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
getstatic sun.tools.tree.FieldExpression.idClass:Lsun/tools/java/Identifier;
if_acmpne 2
1: StackMap locals:
StackMap stack:
aconst_null
astore 5
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
aload 3
aload 4
aload 5
iconst_0
invokevirtual sun.tools.tree.FieldExpression.checkCommon:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;Lsun/tools/tree/UnaryExpression;Z)Lsun/tools/tree/Vset;
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 3 0 this Lsun/tools/tree/FieldExpression;
0 3 1 env Lsun/tools/java/Environment;
0 3 2 ctx Lsun/tools/tree/Context;
0 3 3 vset Lsun/tools/tree/Vset;
0 3 4 exp Ljava/util/Hashtable<Ljava/lang/Object;Ljava/lang/Object;>;
0 3 5 loc Lsun/tools/tree/UnaryExpression;
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/UnaryExpression;)Lsun/tools/tree/Vset;
MethodParameters:
Name Flags
env
ctx
vset
exp
loc
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=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 2
aload 3
aload 4
aconst_null
iconst_0
invokevirtual sun.tools.tree.FieldExpression.checkCommon:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;Lsun/tools/tree/UnaryExpression;Z)Lsun/tools/tree/Vset;
astore 3
1: aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
getstatic sun.tools.tree.FieldExpression.idSuper:Lsun/tools/java/Identifier;
if_acmpne 3
aload 0
getfield sun.tools.tree.FieldExpression.type:Lsun/tools/java/Type;
getstatic sun.tools.java.Type.tError:Lsun/tools/java/Type;
if_acmpeq 3
2: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
ldc "undef.var.super"
getstatic sun.tools.tree.FieldExpression.idSuper:Lsun/tools/java/Identifier;
invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;)V
3: StackMap locals:
StackMap stack:
aload 3
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/tools/tree/FieldExpression;
0 4 1 env Lsun/tools/java/Environment;
0 4 2 ctx Lsun/tools/tree/Context;
0 4 3 vset Lsun/tools/tree/Vset;
0 4 4 exp Ljava/util/Hashtable<Ljava/lang/Object;Ljava/lang/Object;>;
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
static void reportFailedPackagePrefix(sun.tools.java.Environment, sun.tools.tree.Expression);
descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Expression;)V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
invokestatic sun.tools.tree.FieldExpression.reportFailedPackagePrefix:(Lsun/tools/java/Environment;Lsun/tools/tree/Expression;Z)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 env Lsun/tools/java/Environment;
0 2 1 right Lsun/tools/tree/Expression;
MethodParameters:
Name Flags
env
right
static void reportFailedPackagePrefix(sun.tools.java.Environment, sun.tools.tree.Expression, boolean);
descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Expression;Z)V
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
astore 3
start local 3 1: goto 3
2: StackMap locals: sun.tools.tree.Expression
StackMap stack:
aload 3
checkcast sun.tools.tree.UnaryExpression
getfield sun.tools.tree.UnaryExpression.right:Lsun/tools/tree/Expression;
astore 3
3: StackMap locals:
StackMap stack:
aload 3
instanceof sun.tools.tree.UnaryExpression
ifne 2
4: aload 3
checkcast sun.tools.tree.IdentifierExpression
astore 4
start local 4 5: aload 0
aload 4
getfield sun.tools.tree.IdentifierExpression.id:Lsun/tools/java/Identifier;
invokevirtual sun.tools.java.Environment.resolve:(Lsun/tools/java/Identifier;)Lsun/tools/java/Identifier;
pop
6: goto 11
StackMap locals: sun.tools.java.Environment sun.tools.tree.Expression int sun.tools.tree.Expression sun.tools.tree.IdentifierExpression
StackMap stack: sun.tools.java.AmbiguousClass
7: astore 5
start local 5 8: aload 0
aload 1
getfield sun.tools.tree.Expression.where:J
ldc "ambig.class"
aload 5
getfield sun.tools.java.AmbiguousClass.name1:Lsun/tools/java/Identifier;
aload 5
getfield sun.tools.java.AmbiguousClass.name2:Lsun/tools/java/Identifier;
invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
9: return
end local 5 10: StackMap locals:
StackMap stack: sun.tools.java.ClassNotFound
pop
11: StackMap locals:
StackMap stack:
aload 3
aload 1
if_acmpne 17
12: iload 2
ifeq 15
13: aload 0
aload 4
getfield sun.tools.tree.IdentifierExpression.where:J
ldc "undef.class"
aload 4
getfield sun.tools.tree.IdentifierExpression.id:Lsun/tools/java/Identifier;
invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;)V
14: goto 21
15: StackMap locals:
StackMap stack:
aload 0
aload 4
getfield sun.tools.tree.IdentifierExpression.where:J
ldc "undef.var.or.class"
aload 4
getfield sun.tools.tree.IdentifierExpression.id:Lsun/tools/java/Identifier;
invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;)V
16: goto 21
17: StackMap locals:
StackMap stack:
iload 2
ifeq 20
18: aload 0
aload 4
getfield sun.tools.tree.IdentifierExpression.where:J
ldc "undef.class.or.package"
aload 4
getfield sun.tools.tree.IdentifierExpression.id:Lsun/tools/java/Identifier;
invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;)V
19: goto 21
20: StackMap locals:
StackMap stack:
aload 0
aload 4
getfield sun.tools.tree.IdentifierExpression.where:J
ldc "undef.var.class.or.package"
aload 4
getfield sun.tools.tree.IdentifierExpression.id:Lsun/tools/java/Identifier;
invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;)V
21: 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 22 0 env Lsun/tools/java/Environment;
0 22 1 right Lsun/tools/tree/Expression;
0 22 2 mustBeType Z
1 22 3 idp Lsun/tools/tree/Expression;
5 22 4 ie Lsun/tools/tree/IdentifierExpression;
8 10 5 e Lsun/tools/java/AmbiguousClass;
Exception table:
from to target type
5 6 7 Class sun.tools.java.AmbiguousClass
5 6 10 Class sun.tools.java.ClassNotFound
MethodParameters:
Name Flags
env
right
mustBeType
private sun.tools.tree.Expression implementFieldAccess(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.tree.Expression, boolean);
descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Expression;Z)Lsun/tools/tree/Expression;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 2
invokevirtual sun.tools.tree.FieldExpression.accessBase:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/java/ClassDefinition;
astore 5
start local 5 1: aload 5
ifnull 15
2: aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.isFinal:()Z
ifeq 6
3: aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getValue:()Lsun/tools/tree/Node;
checkcast sun.tools.tree.Expression
astore 6
start local 6 4: aload 6
ifnull 6
aload 6
invokevirtual sun.tools.tree.Expression.isConstant:()Z
ifeq 6
iload 4
ifne 6
5: aload 6
aload 2
invokevirtual sun.tools.tree.Expression.copyInline:(Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
areturn
end local 6 6: StackMap locals: sun.tools.java.ClassDefinition
StackMap stack:
aload 5
aload 1
aload 2
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
aload 0
invokevirtual sun.tools.tree.FieldExpression.isQualSuper:()Z
invokevirtual sun.tools.java.ClassDefinition.getAccessMember:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/MemberDefinition;Z)Lsun/tools/java/MemberDefinition;
astore 6
start local 6 7: iload 4
ifne 15
8: aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.isStatic:()Z
ifeq 13
9: iconst_0
anewarray sun.tools.tree.Expression
astore 7
start local 7 10: new sun.tools.tree.MethodExpression
dup
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aconst_null
aload 6
aload 7
invokespecial sun.tools.tree.MethodExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/java/MemberDefinition;[Lsun/tools/tree/Expression;)V
11: astore 8
start local 8 12: new sun.tools.tree.CommaExpression
dup
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 3
aload 8
invokespecial sun.tools.tree.CommaExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/tree/Expression;)V
areturn
end local 8 end local 7 13: StackMap locals: sun.tools.java.MemberDefinition
StackMap stack:
iconst_1
anewarray sun.tools.tree.Expression
dup
iconst_0
aload 3
aastore
astore 7
start local 7 14: new sun.tools.tree.MethodExpression
dup
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aconst_null
aload 6
aload 7
invokespecial sun.tools.tree.MethodExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/java/MemberDefinition;[Lsun/tools/tree/Expression;)V
areturn
end local 7 end local 6 15: StackMap locals:
StackMap stack:
aconst_null
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 16 0 this Lsun/tools/tree/FieldExpression;
0 16 1 env Lsun/tools/java/Environment;
0 16 2 ctx Lsun/tools/tree/Context;
0 16 3 base Lsun/tools/tree/Expression;
0 16 4 isLHS Z
1 16 5 abase Lsun/tools/java/ClassDefinition;
4 6 6 e Lsun/tools/tree/Expression;
7 15 6 af Lsun/tools/java/MemberDefinition;
10 13 7 args [Lsun/tools/tree/Expression;
12 13 8 call Lsun/tools/tree/Expression;
14 15 7 args [Lsun/tools/tree/Expression;
MethodParameters:
Name Flags
env
ctx
base
isLHS
private sun.tools.java.ClassDefinition accessBase(sun.tools.java.Environment, sun.tools.tree.Context);
descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/java/ClassDefinition;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.isPrivate:()Z
ifeq 6
1: aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
astore 3
start local 3 2: aload 2
getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
astore 4
start local 4 3: aload 3
aload 4
if_acmpne 5
4: aconst_null
areturn
5: StackMap locals: sun.tools.java.ClassDefinition sun.tools.java.ClassDefinition
StackMap stack:
aload 3
areturn
end local 4 end local 3 6: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.isProtected:()Z
ifeq 14
7: aload 0
getfield sun.tools.tree.FieldExpression.superBase:Lsun/tools/java/ClassDefinition;
ifnonnull 9
8: aconst_null
areturn
9: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
astore 3
start local 3 10: aload 2
getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
astore 4
start local 4 11: aload 3
aload 4
invokevirtual sun.tools.java.ClassDefinition.inSamePackage:(Lsun/tools/java/ClassDefinition;)Z
ifeq 13
12: aconst_null
areturn
13: StackMap locals: sun.tools.java.ClassDefinition sun.tools.java.ClassDefinition
StackMap stack:
aload 0
getfield sun.tools.tree.FieldExpression.superBase:Lsun/tools/java/ClassDefinition;
areturn
end local 4 end local 3 14: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lsun/tools/tree/FieldExpression;
0 15 1 env Lsun/tools/java/Environment;
0 15 2 ctx Lsun/tools/tree/Context;
2 6 3 cdef Lsun/tools/java/ClassDefinition;
3 6 4 ctxClass Lsun/tools/java/ClassDefinition;
10 14 3 cdef Lsun/tools/java/ClassDefinition;
11 14 4 ctxClass Lsun/tools/java/ClassDefinition;
MethodParameters:
Name Flags
env
ctx
static boolean isTypeAccessible(long, sun.tools.java.Environment, sun.tools.java.Type, sun.tools.java.ClassDefinition);
descriptor: (JLsun/tools/java/Environment;Lsun/tools/java/Type;Lsun/tools/java/ClassDefinition;)Z
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=6, args_size=4
start local 0 start local 2 start local 3 start local 4 0: aload 3
invokevirtual sun.tools.java.Type.getTypeCode:()I
tableswitch { // 9 - 10
9: 7
10: 1
default: 8
}
1: StackMap locals:
StackMap stack:
aload 3
invokevirtual sun.tools.java.Type.getClassName:()Lsun/tools/java/Identifier;
pop
2: aload 2
aload 3
invokevirtual sun.tools.java.Environment.getClassDefinition:(Lsun/tools/java/Type;)Lsun/tools/java/ClassDefinition;
astore 5
start local 5 3: aload 4
aload 2
aload 5
invokevirtual sun.tools.java.ClassDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
invokevirtual sun.tools.java.ClassDefinition.canAccess:(Lsun/tools/java/Environment;Lsun/tools/java/ClassDeclaration;)Z
4: ireturn
end local 5 5: StackMap locals:
StackMap stack: sun.tools.java.ClassNotFound
pop
6: iconst_1
ireturn
7: StackMap locals:
StackMap stack:
lload 0
aload 2
aload 3
invokevirtual sun.tools.java.Type.getElementType:()Lsun/tools/java/Type;
aload 4
invokestatic sun.tools.tree.FieldExpression.isTypeAccessible:(JLsun/tools/java/Environment;Lsun/tools/java/Type;Lsun/tools/java/ClassDefinition;)Z
ireturn
8: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 where J
0 9 2 env Lsun/tools/java/Environment;
0 9 3 t Lsun/tools/java/Type;
0 9 4 c Lsun/tools/java/ClassDefinition;
3 5 5 def Lsun/tools/java/ClassDefinition;
Exception table:
from to target type
1 4 5 Class sun.tools.java.ClassNotFound
MethodParameters:
Name Flags
where
env
t
c
private sun.tools.tree.Vset checkCommon(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.tree.Vset, java.util.Hashtable<java.lang.Object, java.lang.Object>, sun.tools.tree.UnaryExpression, boolean);
descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;Lsun/tools/tree/UnaryExpression;Z)Lsun/tools/tree/Vset;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=16, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
getstatic sun.tools.tree.FieldExpression.idClass:Lsun/tools/java/Identifier;
if_acmpne 53
1: aload 0
getfield sun.tools.tree.FieldExpression.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;
astore 7
start local 7 2: aload 7
bipush 10
invokevirtual sun.tools.java.Type.isType:(I)Z
ifne 25
aload 7
bipush 9
invokevirtual sun.tools.java.Type.isType:(I)Z
ifne 25
3: aload 7
bipush 13
invokevirtual sun.tools.java.Type.isType:(I)Z
ifeq 6
4: aload 0
getstatic sun.tools.java.Type.tClassDesc:Lsun/tools/java/Type;
putfield sun.tools.tree.FieldExpression.type:Lsun/tools/java/Type;
5: aload 3
areturn
6: StackMap locals: sun.tools.java.Type
StackMap stack:
aconst_null
astore 8
start local 8 7: aload 7
invokevirtual sun.tools.java.Type.getTypeCode:()I
tableswitch { // 0 - 11
0: 9
1: 10
2: 11
3: 12
4: 13
5: 15
6: 14
7: 16
8: 17
9: 17
10: 17
11: 8
default: 17
}
8: StackMap locals: java.lang.String
StackMap stack:
ldc "Void"
astore 8
goto 19
9: StackMap locals:
StackMap stack:
ldc "Boolean"
astore 8
goto 19
10: StackMap locals:
StackMap stack:
ldc "Byte"
astore 8
goto 19
11: StackMap locals:
StackMap stack:
ldc "Character"
astore 8
goto 19
12: StackMap locals:
StackMap stack:
ldc "Short"
astore 8
goto 19
13: StackMap locals:
StackMap stack:
ldc "Integer"
astore 8
goto 19
14: StackMap locals:
StackMap stack:
ldc "Float"
astore 8
goto 19
15: StackMap locals:
StackMap stack:
ldc "Long"
astore 8
goto 19
16: StackMap locals:
StackMap stack:
ldc "Double"
astore 8
goto 19
17: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.where:J
ldc "invalid.type.expr"
invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;)V
18: aload 3
areturn
19: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
getstatic sun.tools.tree.FieldExpression.idJavaLang:Lsun/tools/java/Identifier;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 8
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic sun.tools.java.Identifier.lookup:(Ljava/lang/String;)Lsun/tools/java/Identifier;
astore 9
start local 9 20: new sun.tools.tree.TypeExpression
dup
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 9
invokestatic sun.tools.java.Type.tClass:(Lsun/tools/java/Identifier;)Lsun/tools/java/Type;
invokespecial sun.tools.tree.TypeExpression.<init>:(JLsun/tools/java/Type;)V
astore 10
start local 10 21: aload 0
new sun.tools.tree.FieldExpression
dup
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 10
getstatic sun.tools.tree.FieldExpression.idTYPE:Lsun/tools/java/Identifier;
invokespecial sun.tools.tree.FieldExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/java/Identifier;)V
putfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
22: aload 0
getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
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
23: aload 0
aload 0
getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
putfield sun.tools.tree.FieldExpression.type:Lsun/tools/java/Type;
24: aload 3
areturn
end local 10 end local 9 end local 8 25: StackMap locals:
StackMap stack:
aload 7
invokevirtual sun.tools.java.Type.isVoidArray:()Z
ifeq 29
26: aload 0
getstatic sun.tools.java.Type.tClassDesc:Lsun/tools/java/Type;
putfield sun.tools.tree.FieldExpression.type:Lsun/tools/java/Type;
27: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.where:J
ldc "void.array"
invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;)V
28: aload 3
areturn
29: StackMap locals:
StackMap stack:
aload 2
getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getWhere:()J
lstore 8
start local 8 30: aload 2
getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
astore 10
start local 10 31: aload 10
lload 8
invokevirtual sun.tools.java.ClassDefinition.getClassLiteralLookup:(J)Lsun/tools/java/MemberDefinition;
astore 11
start local 11 32: aload 7
invokevirtual sun.tools.java.Type.getTypeSignature:()Ljava/lang/String;
astore 12
start local 12 33: aload 7
bipush 10
invokevirtual sun.tools.java.Type.isType:(I)Z
ifeq 38
34: aload 12
iconst_1
aload 12
invokevirtual java.lang.String.length:()I
iconst_1
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
35: bipush 47
bipush 46
invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
36: astore 13
start local 13 37: goto 39
end local 13 38: StackMap locals: sun.tools.tree.FieldExpression sun.tools.java.Environment sun.tools.tree.Context sun.tools.tree.Vset java.util.Hashtable sun.tools.tree.UnaryExpression int sun.tools.java.Type long sun.tools.java.ClassDefinition sun.tools.java.MemberDefinition java.lang.String
StackMap stack:
aload 12
bipush 47
bipush 46
invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
astore 13
start local 13 39: StackMap locals: java.lang.String
StackMap stack:
aload 10
invokevirtual sun.tools.java.ClassDefinition.isInterface:()Z
ifeq 44
40: aload 0
41: aload 0
aload 1
aload 2
aload 11
aload 13
invokevirtual sun.tools.tree.FieldExpression.makeClassLiteralInlineRef:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/MemberDefinition;Ljava/lang/String;)Lsun/tools/tree/Expression;
42: putfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
43: goto 50
44: StackMap locals:
StackMap stack:
aload 11
invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
astore 14
start local 14 45: aload 1
aload 2
aload 13
aload 14
invokestatic sun.tools.tree.FieldExpression.getClassLiteralCache:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Ljava/lang/String;Lsun/tools/java/ClassDefinition;)Lsun/tools/java/MemberDefinition;
46: astore 15
start local 15 47: aload 0
48: aload 0
aload 1
aload 2
aload 11
aload 15
aload 13
invokevirtual sun.tools.tree.FieldExpression.makeClassLiteralCacheRef:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/MemberDefinition;Lsun/tools/java/MemberDefinition;Ljava/lang/String;)Lsun/tools/tree/Expression;
49: putfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
end local 15 end local 14 50: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
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
51: aload 0
aload 0
getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
putfield sun.tools.tree.FieldExpression.type:Lsun/tools/java/Type;
52: aload 3
areturn
end local 13 end local 12 end local 11 end local 10 end local 8 end local 7 53: StackMap locals: sun.tools.tree.FieldExpression sun.tools.java.Environment sun.tools.tree.Context sun.tools.tree.Vset java.util.Hashtable sun.tools.tree.UnaryExpression int
StackMap stack:
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
ifnull 59
54: aload 0
aload 0
aload 1
aload 2
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
iload 6
invokevirtual sun.tools.tree.FieldExpression.implementFieldAccess:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Expression;Z)Lsun/tools/tree/Expression;
putfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
55: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
ifnonnull 57
56: aload 3
goto 58
StackMap locals:
StackMap stack:
57: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
aload 1
aload 2
aload 3
aload 4
aload 0
invokevirtual sun.tools.tree.Expression.checkAmbigName:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;Lsun/tools/tree/UnaryExpression;)Lsun/tools/tree/Vset;
58: StackMap locals:
StackMap stack: sun.tools.tree.Vset
areturn
59: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
aload 1
aload 2
aload 3
aload 4
aload 0
invokevirtual sun.tools.tree.Expression.checkAmbigName:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;Lsun/tools/tree/UnaryExpression;)Lsun/tools/tree/Vset;
astore 3
60: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
getstatic sun.tools.java.Type.tPackage:Lsun/tools/java/Type;
if_acmpne 72
61: aload 5
ifnonnull 64
62: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
invokestatic sun.tools.tree.FieldExpression.reportFailedPackagePrefix:(Lsun/tools/java/Environment;Lsun/tools/tree/Expression;)V
63: aload 3
areturn
64: StackMap locals:
StackMap stack:
aload 0
invokestatic sun.tools.tree.FieldExpression.toIdentifier:(Lsun/tools/tree/Expression;)Lsun/tools/java/Identifier;
astore 7
start local 7 65: aload 7
ifnull 70
aload 1
aload 7
invokevirtual sun.tools.java.Environment.classExists:(Lsun/tools/java/Identifier;)Z
ifeq 70
66: aload 5
new sun.tools.tree.TypeExpression
dup
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 7
invokestatic sun.tools.java.Type.tClass:(Lsun/tools/java/Identifier;)Lsun/tools/java/Type;
invokespecial sun.tools.tree.TypeExpression.<init>:(JLsun/tools/java/Type;)V
putfield sun.tools.tree.UnaryExpression.right:Lsun/tools/tree/Expression;
67: aload 2
getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
astore 8
start local 8 68: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 8
aload 5
getfield sun.tools.tree.UnaryExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
invokevirtual sun.tools.java.Environment.resolve:(JLsun/tools/java/ClassDefinition;Lsun/tools/java/Type;)Z
pop
69: aload 3
areturn
end local 8 70: StackMap locals: sun.tools.java.Identifier
StackMap stack:
aload 0
getstatic sun.tools.java.Type.tPackage:Lsun/tools/java/Type;
putfield sun.tools.tree.FieldExpression.type:Lsun/tools/java/Type;
71: aload 3
areturn
end local 7 72: StackMap locals:
StackMap stack:
aload 2
getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
astore 7
start local 7 73: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
instanceof sun.tools.tree.TypeExpression
istore 8
start local 8 74: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
bipush 10
invokevirtual sun.tools.java.Type.isType:(I)Z
ifne 94
75: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
bipush 9
invokevirtual sun.tools.java.Type.isType:(I)Z
ifeq 90
aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
getstatic sun.tools.tree.FieldExpression.idLength:Lsun/tools/java/Identifier;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 90
76: aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 1
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
aload 7
invokestatic sun.tools.tree.FieldExpression.isTypeAccessible:(JLsun/tools/java/Environment;Lsun/tools/java/Type;Lsun/tools/java/ClassDefinition;)Z
ifne 86
77: aload 7
invokevirtual sun.tools.java.ClassDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
astore 9
start local 9 78: iload 8
ifeq 83
79: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
ldc "no.type.access"
80: aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
invokevirtual sun.tools.java.Type.toString:()Ljava/lang/String;
aload 9
81: invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
82: goto 86
83: StackMap locals: sun.tools.java.ClassDefinition int sun.tools.java.ClassDeclaration
StackMap stack:
aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
ldc "cant.access.member.type"
84: aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
invokevirtual sun.tools.java.Type.toString:()Ljava/lang/String;
aload 9
85: invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
end local 9 86: StackMap locals:
StackMap stack:
aload 0
getstatic sun.tools.java.Type.tInt:Lsun/tools/java/Type;
putfield sun.tools.tree.FieldExpression.type:Lsun/tools/java/Type;
87: aload 0
new sun.tools.tree.LengthExpression
dup
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
invokespecial sun.tools.tree.LengthExpression.<init>:(JLsun/tools/tree/Expression;)V
putfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
88: aload 3
89: areturn
90: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
bipush 13
invokevirtual sun.tools.java.Type.isType:(I)Z
ifne 92
91: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
ldc "invalid.field.reference"
aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
92: StackMap locals:
StackMap stack:
aload 3
93: areturn
94: StackMap locals:
StackMap stack:
aload 7
astore 9
start local 9 95: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
instanceof sun.tools.tree.FieldExpression
ifeq 103
96: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
checkcast sun.tools.tree.FieldExpression
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
astore 10
start local 10 97: aload 10
getstatic sun.tools.tree.FieldExpression.idThis:Lsun/tools/java/Identifier;
if_acmpne 100
98: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
checkcast sun.tools.tree.FieldExpression
getfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
astore 9
99: goto 103
StackMap locals: sun.tools.java.ClassDefinition sun.tools.java.Identifier
StackMap stack:
100: aload 10
getstatic sun.tools.tree.FieldExpression.idSuper:Lsun/tools/java/Identifier;
if_acmpne 103
101: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
checkcast sun.tools.tree.FieldExpression
getfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
astore 9
102: aload 0
aload 9
putfield sun.tools.tree.FieldExpression.superBase:Lsun/tools/java/ClassDefinition;
end local 10 103: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
invokevirtual sun.tools.java.Environment.getClassDefinition:(Lsun/tools/java/Type;)Lsun/tools/java/ClassDefinition;
putfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
104: aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
getstatic sun.tools.tree.FieldExpression.idThis:Lsun/tools/java/Identifier;
if_acmpeq 105
aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
getstatic sun.tools.tree.FieldExpression.idSuper:Lsun/tools/java/Identifier;
if_acmpne 117
105: StackMap locals:
StackMap stack:
iload 8
ifne 107
106: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.where:J
ldc "invalid.type.expr"
invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;)V
107: StackMap locals:
StackMap stack:
aload 2
getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.isSynthetic:()Z
ifeq 109
108: new sun.tools.java.CompilerError
dup
ldc "synthetic qualified this"
invokespecial sun.tools.java.CompilerError.<init>:(Ljava/lang/String;)V
athrow
109: StackMap locals:
StackMap stack:
aload 0
aload 2
aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 0
getfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
aconst_null
iconst_1
invokevirtual sun.tools.tree.Context.findOuterLink:(Lsun/tools/java/Environment;JLsun/tools/java/ClassDefinition;Lsun/tools/java/MemberDefinition;Z)Lsun/tools/tree/Expression;
putfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
110: aload 0
getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
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
111: aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
getstatic sun.tools.tree.FieldExpression.idSuper:Lsun/tools/java/Identifier;
if_acmpne 114
112: aload 0
aload 0
getfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
invokevirtual sun.tools.java.ClassDefinition.getSuperClass:()Lsun/tools/java/ClassDeclaration;
invokevirtual sun.tools.java.ClassDeclaration.getType:()Lsun/tools/java/Type;
putfield sun.tools.tree.FieldExpression.type:Lsun/tools/java/Type;
113: goto 115
114: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
invokevirtual sun.tools.java.ClassDefinition.getType:()Lsun/tools/java/Type;
putfield sun.tools.tree.FieldExpression.type:Lsun/tools/java/Type;
115: StackMap locals:
StackMap stack:
aload 3
116: areturn
117: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
aload 1
aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
aload 9
invokevirtual sun.tools.java.ClassDefinition.getVariable:(Lsun/tools/java/Environment;Lsun/tools/java/Identifier;Lsun/tools/java/ClassDefinition;)Lsun/tools/java/MemberDefinition;
putfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
118: aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
ifnonnull 123
iload 8
ifeq 123
aload 5
ifnull 123
119: aload 0
aload 0
getfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
aload 1
aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
invokevirtual sun.tools.java.ClassDefinition.getInnerClass:(Lsun/tools/java/Environment;Lsun/tools/java/Identifier;)Lsun/tools/java/MemberDefinition;
putfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
120: aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
ifnull 123
121: aload 0
aload 1
aload 2
aload 3
aload 4
aload 5
invokevirtual sun.tools.tree.FieldExpression.checkInnerClass:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;Lsun/tools/tree/UnaryExpression;)Lsun/tools/tree/Vset;
122: areturn
123: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
ifnonnull 132
124: aload 0
aload 0
getfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
aload 1
aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
invokevirtual sun.tools.java.ClassDefinition.findAnyMethod:(Lsun/tools/java/Environment;Lsun/tools/java/Identifier;)Lsun/tools/java/MemberDefinition;
dup_x1
putfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
ifnull 129
125: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
ldc "invalid.field"
126: aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
127: invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
128: goto 130
129: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
ldc "no.such.field"
aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
aload 0
getfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
130: StackMap locals:
StackMap stack:
aload 3
131: areturn
132: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 1
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
aload 9
invokestatic sun.tools.tree.FieldExpression.isTypeAccessible:(JLsun/tools/java/Environment;Lsun/tools/java/Type;Lsun/tools/java/ClassDefinition;)Z
ifne 142
133: aload 9
invokevirtual sun.tools.java.ClassDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
astore 10
start local 10 134: iload 8
ifeq 139
135: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
ldc "no.type.access"
136: aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
invokevirtual sun.tools.java.Type.toString:()Ljava/lang/String;
aload 10
137: invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
138: goto 142
139: StackMap locals: sun.tools.java.ClassDeclaration
StackMap stack:
aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
ldc "cant.access.member.type"
140: aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
invokevirtual sun.tools.java.Type.toString:()Ljava/lang/String;
aload 10
141: invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
end local 10 142: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getType:()Lsun/tools/java/Type;
putfield sun.tools.tree.FieldExpression.type:Lsun/tools/java/Type;
143: aload 9
aload 1
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.ClassDefinition.canAccess:(Lsun/tools/java/Environment;Lsun/tools/java/MemberDefinition;)Z
ifne 149
144: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
ldc "no.field.access"
145: aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
aload 0
getfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
aload 9
invokevirtual sun.tools.java.ClassDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
146: invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
147: aload 3
148: areturn
149: StackMap locals:
StackMap stack:
iload 8
ifeq 153
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.isStatic:()Z
ifne 153
150: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
ldc "no.static.field.access"
aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
aload 0
getfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
151: aload 3
152: areturn
153: StackMap locals:
StackMap stack:
aload 0
aload 0
aload 1
aload 2
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
iload 6
invokevirtual sun.tools.tree.FieldExpression.implementFieldAccess:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Expression;Z)Lsun/tools/tree/Expression;
putfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
154: aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.isProtected:()Z
ifeq 165
155: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
instanceof sun.tools.tree.SuperExpression
ifne 165
156: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
instanceof sun.tools.tree.FieldExpression
ifeq 158
157: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
checkcast sun.tools.tree.FieldExpression
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
getstatic sun.tools.tree.FieldExpression.idSuper:Lsun/tools/java/Identifier;
if_acmpeq 165
158: StackMap locals:
StackMap stack:
aload 9
aload 1
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
invokevirtual sun.tools.java.ClassDefinition.protectedAccess:(Lsun/tools/java/Environment;Lsun/tools/java/MemberDefinition;Lsun/tools/java/Type;)Z
ifne 165
159: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
ldc "invalid.protected.field.use"
160: aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getName:()Lsun/tools/java/Identifier;
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
161: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
162: invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
163: aload 3
164: areturn
165: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.isStatic:()Z
ifne 168
166: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.op:I
bipush 82
if_icmpne 168
aload 3
aload 2
invokevirtual sun.tools.tree.Context.getThisNumber:()I
invokevirtual sun.tools.tree.Vset.testVar:(I)Z
ifne 168
167: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
ldc "access.inst.before.super"
aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;)V
168: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
aload 1
invokevirtual sun.tools.java.MemberDefinition.reportDeprecated:(Lsun/tools/java/Environment;)Z
ifeq 172
169: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
ldc "warn.field.is.deprecated"
170: aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
171: invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
172: StackMap locals:
StackMap stack:
aload 9
aload 7
if_acmpne 180
173: aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
astore 10
start local 10 174: aload 10
invokevirtual sun.tools.java.ClassDefinition.isPackagePrivate:()Z
ifeq 180
175: aload 10
invokevirtual sun.tools.java.ClassDefinition.getName:()Lsun/tools/java/Identifier;
invokevirtual sun.tools.java.Identifier.getQualifier:()Lsun/tools/java/Identifier;
176: aload 9
invokevirtual sun.tools.java.ClassDefinition.getName:()Lsun/tools/java/Identifier;
invokevirtual sun.tools.java.Identifier.getQualifier:()Lsun/tools/java/Identifier;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 180
177: aload 0
178: aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
aload 0
getfield sun.tools.tree.FieldExpression.clazz:Lsun/tools/java/ClassDefinition;
aload 1
invokestatic sun.tools.java.MemberDefinition.makeProxyMember:(Lsun/tools/java/MemberDefinition;Lsun/tools/java/ClassDefinition;Lsun/tools/java/Environment;)Lsun/tools/java/MemberDefinition;
179: putfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
end local 10 180: StackMap locals:
StackMap stack:
aload 9
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
invokevirtual sun.tools.java.ClassDefinition.addDependency:(Lsun/tools/java/ClassDeclaration;)V
end local 9 181: goto 189
StackMap locals: sun.tools.tree.FieldExpression sun.tools.java.Environment sun.tools.tree.Context sun.tools.tree.Vset java.util.Hashtable sun.tools.tree.UnaryExpression int sun.tools.java.ClassDefinition int
StackMap stack: sun.tools.java.ClassNotFound
182: astore 9
start local 9 183: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
ldc "class.not.found"
aload 9
getfield sun.tools.java.ClassNotFound.name:Lsun/tools/java/Identifier;
aload 2
getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
end local 9 184: goto 189
185: StackMap locals:
StackMap stack: sun.tools.java.AmbiguousMember
astore 9
start local 9 186: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
ldc "ambig.field"
187: aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
aload 9
getfield sun.tools.java.AmbiguousMember.field1:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
aload 9
getfield sun.tools.java.AmbiguousMember.field2:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
188: invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
end local 9 189: StackMap locals:
StackMap stack:
aload 3
areturn
end local 8 end local 7 end local 6 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 190 0 this Lsun/tools/tree/FieldExpression;
0 190 1 env Lsun/tools/java/Environment;
0 190 2 ctx Lsun/tools/tree/Context;
0 190 3 vset Lsun/tools/tree/Vset;
0 190 4 exp Ljava/util/Hashtable<Ljava/lang/Object;Ljava/lang/Object;>;
0 190 5 loc Lsun/tools/tree/UnaryExpression;
0 190 6 isLHS Z
2 53 7 t Lsun/tools/java/Type;
7 25 8 wrc Ljava/lang/String;
20 25 9 wid Lsun/tools/java/Identifier;
21 25 10 wcls Lsun/tools/tree/Expression;
30 53 8 fwhere J
31 53 10 fcls Lsun/tools/java/ClassDefinition;
32 53 11 lookup Lsun/tools/java/MemberDefinition;
33 53 12 sig Ljava/lang/String;
37 38 13 className Ljava/lang/String;
39 53 13 className Ljava/lang/String;
45 50 14 inClass Lsun/tools/java/ClassDefinition;
47 50 15 cfld Lsun/tools/java/MemberDefinition;
65 72 7 nm Lsun/tools/java/Identifier;
68 70 8 ctxClass Lsun/tools/java/ClassDefinition;
73 190 7 ctxClass Lsun/tools/java/ClassDefinition;
74 190 8 staticRef Z
78 86 9 cdecl Lsun/tools/java/ClassDeclaration;
95 181 9 sourceClass Lsun/tools/java/ClassDefinition;
97 103 10 id Lsun/tools/java/Identifier;
134 142 10 cdecl Lsun/tools/java/ClassDeclaration;
174 180 10 declarer Lsun/tools/java/ClassDefinition;
183 184 9 e Lsun/tools/java/ClassNotFound;
186 189 9 e Lsun/tools/java/AmbiguousMember;
Exception table:
from to target type
74 89 182 Class sun.tools.java.ClassNotFound
90 93 182 Class sun.tools.java.ClassNotFound
94 116 182 Class sun.tools.java.ClassNotFound
117 122 182 Class sun.tools.java.ClassNotFound
123 131 182 Class sun.tools.java.ClassNotFound
132 148 182 Class sun.tools.java.ClassNotFound
149 152 182 Class sun.tools.java.ClassNotFound
153 164 182 Class sun.tools.java.ClassNotFound
165 181 182 Class sun.tools.java.ClassNotFound
74 89 185 Class sun.tools.java.AmbiguousMember
90 93 185 Class sun.tools.java.AmbiguousMember
94 116 185 Class sun.tools.java.AmbiguousMember
117 122 185 Class sun.tools.java.AmbiguousMember
123 131 185 Class sun.tools.java.AmbiguousMember
132 148 185 Class sun.tools.java.AmbiguousMember
149 152 185 Class sun.tools.java.AmbiguousMember
153 164 185 Class sun.tools.java.AmbiguousMember
165 181 185 Class sun.tools.java.AmbiguousMember
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/UnaryExpression;Z)Lsun/tools/tree/Vset;
MethodParameters:
Name Flags
env
ctx
vset
exp
loc
isLHS
public sun.tools.tree.FieldUpdater getAssigner(sun.tools.java.Environment, sun.tools.tree.Context);
descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/FieldUpdater;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual sun.tools.tree.FieldExpression.accessBase:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/java/ClassDefinition;
astore 3
start local 3 3: aload 3
ifnull 9
4: aload 3
aload 1
aload 2
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
aload 0
invokevirtual sun.tools.tree.FieldExpression.isQualSuper:()Z
invokevirtual sun.tools.java.ClassDefinition.getUpdateMember:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/MemberDefinition;Z)Lsun/tools/java/MemberDefinition;
astore 4
start local 4 5: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
ifnonnull 6
aconst_null
goto 7
StackMap locals: sun.tools.java.ClassDefinition sun.tools.java.MemberDefinition
StackMap stack:
6: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
aload 2
invokevirtual sun.tools.tree.Expression.copyInline:(Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
StackMap locals:
StackMap stack: sun.tools.tree.Expression
7: astore 5
start local 5 8: new sun.tools.tree.FieldUpdater
dup
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
aload 5
aconst_null
aload 4
invokespecial sun.tools.tree.FieldUpdater.<init>:(JLsun/tools/java/MemberDefinition;Lsun/tools/tree/Expression;Lsun/tools/java/MemberDefinition;Lsun/tools/java/MemberDefinition;)V
areturn
end local 5 end local 4 9: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lsun/tools/tree/FieldExpression;
0 10 1 env Lsun/tools/java/Environment;
0 10 2 ctx Lsun/tools/tree/Context;
3 10 3 abase Lsun/tools/java/ClassDefinition;
5 9 4 setter Lsun/tools/java/MemberDefinition;
8 9 5 base Lsun/tools/tree/Expression;
MethodParameters:
Name Flags
env
ctx
public sun.tools.tree.FieldUpdater getUpdater(sun.tools.java.Environment, sun.tools.tree.Context);
descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/FieldUpdater;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual sun.tools.tree.FieldExpression.accessBase:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/java/ClassDefinition;
astore 3
start local 3 3: aload 3
ifnull 10
4: aload 3
aload 1
aload 2
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
aload 0
invokevirtual sun.tools.tree.FieldExpression.isQualSuper:()Z
invokevirtual sun.tools.java.ClassDefinition.getAccessMember:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/MemberDefinition;Z)Lsun/tools/java/MemberDefinition;
astore 4
start local 4 5: aload 3
aload 1
aload 2
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
aload 0
invokevirtual sun.tools.tree.FieldExpression.isQualSuper:()Z
invokevirtual sun.tools.java.ClassDefinition.getUpdateMember:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/MemberDefinition;Z)Lsun/tools/java/MemberDefinition;
astore 5
start local 5 6: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
ifnonnull 7
aconst_null
goto 8
StackMap locals: sun.tools.java.ClassDefinition sun.tools.java.MemberDefinition sun.tools.java.MemberDefinition
StackMap stack:
7: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
aload 2
invokevirtual sun.tools.tree.Expression.copyInline:(Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
StackMap locals:
StackMap stack: sun.tools.tree.Expression
8: astore 6
start local 6 9: new sun.tools.tree.FieldUpdater
dup
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
aload 6
aload 4
aload 5
invokespecial sun.tools.tree.FieldUpdater.<init>:(JLsun/tools/java/MemberDefinition;Lsun/tools/tree/Expression;Lsun/tools/java/MemberDefinition;Lsun/tools/java/MemberDefinition;)V
areturn
end local 6 end local 5 end local 4 10: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/tools/tree/FieldExpression;
0 11 1 env Lsun/tools/java/Environment;
0 11 2 ctx Lsun/tools/tree/Context;
3 11 3 abase Lsun/tools/java/ClassDefinition;
5 10 4 getter Lsun/tools/java/MemberDefinition;
6 10 5 setter Lsun/tools/java/MemberDefinition;
9 10 6 base Lsun/tools/tree/Expression;
MethodParameters:
Name Flags
env
ctx
private sun.tools.tree.Vset checkInnerClass(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.tree.Vset, java.util.Hashtable<java.lang.Object, java.lang.Object>, sun.tools.tree.UnaryExpression);
descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;Lsun/tools/tree/UnaryExpression;)Lsun/tools/tree/Vset;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=10, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getInnerClass:()Lsun/tools/java/ClassDefinition;
astore 6
start local 6 1: aload 0
aload 6
invokevirtual sun.tools.java.ClassDefinition.getType:()Lsun/tools/java/Type;
putfield sun.tools.tree.FieldExpression.type:Lsun/tools/java/Type;
2: aload 6
invokevirtual sun.tools.java.ClassDefinition.isTopLevel:()Z
ifne 4
3: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
ldc "inner.static.ref"
aload 6
invokevirtual sun.tools.java.ClassDefinition.getName:()Lsun/tools/java/Identifier;
invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;)V
4: StackMap locals: sun.tools.java.ClassDefinition
StackMap stack:
new sun.tools.tree.TypeExpression
dup
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 0
getfield sun.tools.tree.FieldExpression.type:Lsun/tools/java/Type;
invokespecial sun.tools.tree.TypeExpression.<init>:(JLsun/tools/java/Type;)V
astore 7
start local 7 5: aload 2
getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
astore 8
start local 8 6: aload 8
aload 1
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.ClassDefinition.canAccess:(Lsun/tools/java/Environment;Lsun/tools/java/MemberDefinition;)Z
ifne 13
7: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
invokevirtual sun.tools.java.Environment.getClassDefinition:(Lsun/tools/java/Type;)Lsun/tools/java/ClassDefinition;
astore 9
start local 9 8: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
ldc "no.type.access"
9: aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
aload 9
aload 8
invokevirtual sun.tools.java.ClassDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
10: invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
11: aload 3
12: areturn
end local 9 13: StackMap locals: sun.tools.tree.Expression sun.tools.java.ClassDefinition
StackMap stack:
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.isProtected:()Z
ifeq 24
14: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
instanceof sun.tools.tree.SuperExpression
ifne 24
15: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
instanceof sun.tools.tree.FieldExpression
ifeq 17
16: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
checkcast sun.tools.tree.FieldExpression
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
getstatic sun.tools.tree.FieldExpression.idSuper:Lsun/tools/java/Identifier;
if_acmpeq 24
17: StackMap locals:
StackMap stack:
aload 8
aload 1
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
invokevirtual sun.tools.java.ClassDefinition.protectedAccess:(Lsun/tools/java/Environment;Lsun/tools/java/MemberDefinition;Lsun/tools/java/Type;)Z
ifne 24
18: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
ldc "invalid.protected.field.use"
19: aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getName:()Lsun/tools/java/Identifier;
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
20: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
21: invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
22: aload 3
23: areturn
24: StackMap locals:
StackMap stack:
aload 6
aload 8
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 1
invokevirtual sun.tools.java.ClassDefinition.noteUsedBy:(Lsun/tools/java/ClassDefinition;JLsun/tools/java/Environment;)V
25: goto 28
StackMap locals:
StackMap stack: sun.tools.java.ClassNotFound
26: astore 9
start local 9 27: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
ldc "class.not.found"
aload 9
getfield sun.tools.java.ClassNotFound.name:Lsun/tools/java/Identifier;
aload 2
getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)V
end local 9 28: StackMap locals:
StackMap stack:
aload 8
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
invokevirtual sun.tools.java.ClassDefinition.addDependency:(Lsun/tools/java/ClassDeclaration;)V
29: aload 5
ifnonnull 31
30: 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;
areturn
31: StackMap locals:
StackMap stack:
aload 5
aload 7
putfield sun.tools.tree.UnaryExpression.right:Lsun/tools/tree/Expression;
32: aload 3
areturn
end local 8 end local 7 end local 6 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 33 0 this Lsun/tools/tree/FieldExpression;
0 33 1 env Lsun/tools/java/Environment;
0 33 2 ctx Lsun/tools/tree/Context;
0 33 3 vset Lsun/tools/tree/Vset;
0 33 4 exp Ljava/util/Hashtable<Ljava/lang/Object;Ljava/lang/Object;>;
0 33 5 loc Lsun/tools/tree/UnaryExpression;
1 33 6 inner Lsun/tools/java/ClassDefinition;
5 33 7 te Lsun/tools/tree/Expression;
6 33 8 ctxClass Lsun/tools/java/ClassDefinition;
8 13 9 clazz Lsun/tools/java/ClassDefinition;
27 28 9 e Lsun/tools/java/ClassNotFound;
Exception table:
from to target type
6 12 26 Class sun.tools.java.ClassNotFound
13 23 26 Class sun.tools.java.ClassNotFound
24 25 26 Class sun.tools.java.ClassNotFound
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/UnaryExpression;)Lsun/tools/tree/Vset;
MethodParameters:
Name Flags
env
ctx
vset
exp
loc
public sun.tools.tree.Vset checkLHS(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=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
ifnull 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: istore 5
start local 5 3: aload 0
aload 1
aload 2
aload 3
aload 4
aconst_null
iconst_1
invokevirtual sun.tools.tree.FieldExpression.checkCommon:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;Lsun/tools/tree/UnaryExpression;Z)Lsun/tools/tree/Vset;
pop
4: aload 0
getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
ifnull 6
5: aload 0
aload 1
aload 2
aload 3
aload 4
invokespecial sun.tools.tree.UnaryExpression.checkLHS:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;)Lsun/tools/tree/Vset;
areturn
6: StackMap locals: int
StackMap stack:
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
ifnull 18
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.isFinal:()Z
ifeq 18
iload 5
ifne 18
7: aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.isBlankFinal:()Z
ifeq 17
8: aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.isStatic:()Z
ifeq 12
9: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
ifnull 15
10: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
ldc "qualified.static.final.assign"
invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;)V
11: goto 15
12: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
ifnull 15
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.op:I
bipush 82
if_icmpeq 15
13: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
ldc "bad.qualified.final.assign"
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getName:()Lsun/tools/java/Identifier;
invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;)V
14: aload 3
areturn
15: StackMap locals:
StackMap stack:
aload 1
aload 2
aload 3
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokestatic sun.tools.tree.FieldExpression.checkFinalAssign:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;JLsun/tools/java/MemberDefinition;)Lsun/tools/tree/Vset;
astore 3
16: goto 18
17: StackMap locals:
StackMap stack:
aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
ldc "assign.to.final"
aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;)V
18: 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 19 0 this Lsun/tools/tree/FieldExpression;
0 19 1 env Lsun/tools/java/Environment;
0 19 2 ctx Lsun/tools/tree/Context;
0 19 3 vset Lsun/tools/tree/Vset;
0 19 4 exp Ljava/util/Hashtable<Ljava/lang/Object;Ljava/lang/Object;>;
3 19 5 hadField Z
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.Vset checkAssignOp(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.tree.Vset, java.util.Hashtable<java.lang.Object, java.lang.Object>, sun.tools.tree.Expression);
descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;Lsun/tools/tree/Expression;)Lsun/tools/tree/Vset;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 1
aload 2
aload 3
aload 4
aconst_null
iconst_1
invokevirtual sun.tools.tree.FieldExpression.checkCommon:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;Lsun/tools/tree/UnaryExpression;Z)Lsun/tools/tree/Vset;
pop
1: aload 0
getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
ifnull 3
2: aload 0
aload 1
aload 2
aload 3
aload 4
invokespecial sun.tools.tree.UnaryExpression.checkLHS:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;Ljava/util/Hashtable;)Lsun/tools/tree/Vset;
areturn
3: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
ifnull 5
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.isFinal:()Z
ifeq 5
4: aload 1
aload 0
getfield sun.tools.tree.FieldExpression.where:J
ldc "assign.to.final"
aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;)V
5: 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 6 0 this Lsun/tools/tree/FieldExpression;
0 6 1 env Lsun/tools/java/Environment;
0 6 2 ctx Lsun/tools/tree/Context;
0 6 3 vset Lsun/tools/tree/Vset;
0 6 4 exp Ljava/util/Hashtable<Ljava/lang/Object;Ljava/lang/Object;>;
0 6 5 outside 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/Expression;)Lsun/tools/tree/Vset;
MethodParameters:
Name Flags
env
ctx
vset
exp
outside
public static sun.tools.tree.Vset checkFinalAssign(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.tree.Vset, long, sun.tools.java.MemberDefinition);
descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/tree/Vset;JLsun/tools/java/MemberDefinition;)Lsun/tools/tree/Vset;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=8, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 5 0: aload 5
invokevirtual sun.tools.java.MemberDefinition.isBlankFinal:()Z
ifeq 9
1: aload 5
invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
aload 1
getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
if_acmpne 9
2: aload 1
aload 5
invokevirtual sun.tools.tree.Context.getFieldNumber:(Lsun/tools/java/MemberDefinition;)I
istore 6
start local 6 3: iload 6
iflt 6
aload 2
iload 6
invokevirtual sun.tools.tree.Vset.testVarUnassigned:(I)Z
ifeq 6
4: aload 2
iload 6
invokevirtual sun.tools.tree.Vset.addVar:(I)Lsun/tools/tree/Vset;
astore 2
5: goto 11
6: StackMap locals: int
StackMap stack:
aload 5
invokevirtual sun.tools.java.MemberDefinition.getName:()Lsun/tools/java/Identifier;
astore 7
start local 7 7: aload 0
lload 3
ldc "assign.to.blank.final"
aload 7
invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;)V
end local 7 end local 6 8: goto 11
9: StackMap locals:
StackMap stack:
aload 5
invokevirtual sun.tools.java.MemberDefinition.getName:()Lsun/tools/java/Identifier;
astore 6
start local 6 10: aload 0
lload 3
ldc "assign.to.final"
aload 6
invokevirtual sun.tools.java.Environment.error:(JLjava/lang/String;Ljava/lang/Object;)V
end local 6 11: StackMap locals:
StackMap stack:
aload 2
areturn
end local 5 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 env Lsun/tools/java/Environment;
0 12 1 ctx Lsun/tools/tree/Context;
0 12 2 vset Lsun/tools/tree/Vset;
0 12 3 where J
0 12 5 field Lsun/tools/java/MemberDefinition;
3 8 6 number I
7 8 7 id Lsun/tools/java/Identifier;
10 11 6 id Lsun/tools/java/Identifier;
MethodParameters:
Name Flags
env
ctx
vset
where
field
private static sun.tools.java.MemberDefinition getClassLiteralCache(sun.tools.java.Environment, sun.tools.tree.Context, java.lang.String, sun.tools.java.ClassDefinition);
descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Ljava/lang/String;Lsun/tools/java/ClassDefinition;)Lsun/tools/java/MemberDefinition;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=12, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
ldc "["
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifne 3
1: new java.lang.StringBuilder
dup
ldc "class$"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
bipush 46
bipush 36
invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 4
start local 4 2: goto 8
end local 4 3: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "array$"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
iconst_1
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 4
start local 4 4: aload 4
bipush 91
bipush 36
invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
astore 4
5: aload 2
ldc ";"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 8
6: aload 4
iconst_0
aload 4
invokevirtual java.lang.String.length:()I
iconst_1
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 4
7: aload 4
bipush 46
bipush 36
invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
astore 4
8: StackMap locals: java.lang.String
StackMap stack:
aload 4
invokestatic sun.tools.java.Identifier.lookup:(Ljava/lang/String;)Lsun/tools/java/Identifier;
astore 5
start local 5 9: aload 3
aload 0
aload 5
aload 3
invokevirtual sun.tools.java.ClassDefinition.getVariable:(Lsun/tools/java/Environment;Lsun/tools/java/Identifier;Lsun/tools/java/ClassDefinition;)Lsun/tools/java/MemberDefinition;
astore 6
start local 6 10: goto 15
end local 6 StackMap locals: sun.tools.java.Environment sun.tools.tree.Context java.lang.String sun.tools.java.ClassDefinition java.lang.String sun.tools.java.Identifier
StackMap stack: sun.tools.java.ClassNotFound
11: pop
12: aconst_null
areturn
13: StackMap locals:
StackMap stack: sun.tools.java.AmbiguousMember
pop
14: aconst_null
areturn
start local 6 15: StackMap locals: sun.tools.java.MemberDefinition
StackMap stack:
aload 6
ifnull 17
aload 6
invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
aload 3
if_acmpne 17
16: aload 6
areturn
17: StackMap locals:
StackMap stack:
aload 0
aload 0
aload 3
invokevirtual sun.tools.java.ClassDefinition.getWhere:()J
18: aload 3
aconst_null
19: ldc 524296
20: getstatic sun.tools.java.Type.tClassDesc:Lsun/tools/java/Type;
aload 5
21: aconst_null
aconst_null
aconst_null
22: invokevirtual sun.tools.java.Environment.makeMemberDefinition:(Lsun/tools/java/Environment;JLsun/tools/java/ClassDefinition;Ljava/lang/String;ILsun/tools/java/Type;Lsun/tools/java/Identifier;[Lsun/tools/java/IdentifierToken;[Lsun/tools/java/IdentifierToken;Ljava/lang/Object;)Lsun/tools/java/MemberDefinition;
areturn
end local 6 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 env Lsun/tools/java/Environment;
0 23 1 ctx Lsun/tools/tree/Context;
0 23 2 className Ljava/lang/String;
0 23 3 c Lsun/tools/java/ClassDefinition;
2 3 4 lname Ljava/lang/String;
4 23 4 lname Ljava/lang/String;
9 23 5 fname Lsun/tools/java/Identifier;
10 11 6 cfld Lsun/tools/java/MemberDefinition;
15 23 6 cfld Lsun/tools/java/MemberDefinition;
Exception table:
from to target type
9 10 11 Class sun.tools.java.ClassNotFound
9 10 13 Class sun.tools.java.AmbiguousMember
MethodParameters:
Name Flags
env
ctx
className
c
private sun.tools.tree.Expression makeClassLiteralCacheRef(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.java.MemberDefinition, sun.tools.java.MemberDefinition, java.lang.String);
descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/MemberDefinition;Lsun/tools/java/MemberDefinition;Ljava/lang/String;)Lsun/tools/tree/Expression;
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=13, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: new sun.tools.tree.TypeExpression
dup
aload 0
getfield sun.tools.tree.FieldExpression.where:J
1: aload 4
invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
2: invokevirtual sun.tools.java.ClassDefinition.getType:()Lsun/tools/java/Type;
3: invokespecial sun.tools.tree.TypeExpression.<init>:(JLsun/tools/java/Type;)V
astore 6
start local 6 4: new sun.tools.tree.FieldExpression
dup
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 6
aload 4
invokespecial sun.tools.tree.FieldExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/java/MemberDefinition;)V
astore 7
start local 7 5: new sun.tools.tree.NotEqualExpression
dup
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 7
aload 2
invokevirtual sun.tools.tree.Expression.copyInline:(Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
6: new sun.tools.tree.NullExpression
dup
aload 0
getfield sun.tools.tree.FieldExpression.where:J
invokespecial sun.tools.tree.NullExpression.<init>:(J)V
7: invokespecial sun.tools.tree.NotEqualExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/tree/Expression;)V
8: astore 8
start local 8 9: new sun.tools.tree.TypeExpression
dup
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 3
invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
invokevirtual sun.tools.java.ClassDefinition.getType:()Lsun/tools/java/Type;
invokespecial sun.tools.tree.TypeExpression.<init>:(JLsun/tools/java/Type;)V
10: astore 9
start local 9 11: new sun.tools.tree.StringExpression
dup
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 5
invokespecial sun.tools.tree.StringExpression.<init>:(JLjava/lang/String;)V
astore 10
start local 10 12: iconst_1
anewarray sun.tools.tree.Expression
dup
iconst_0
aload 10
aastore
astore 11
start local 11 13: new sun.tools.tree.MethodExpression
dup
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 9
14: aload 3
aload 11
15: invokespecial sun.tools.tree.MethodExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/java/MemberDefinition;[Lsun/tools/tree/Expression;)V
astore 12
start local 12 16: new sun.tools.tree.AssignExpression
dup
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 7
aload 2
invokevirtual sun.tools.tree.Expression.copyInline:(Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
17: aload 12
18: invokespecial sun.tools.tree.AssignExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/tree/Expression;)V
astore 12
19: new sun.tools.tree.ConditionalExpression
dup
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 8
aload 7
aload 12
invokespecial sun.tools.tree.ConditionalExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/tree/Expression;Lsun/tools/tree/Expression;)V
areturn
end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 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 20 0 this Lsun/tools/tree/FieldExpression;
0 20 1 env Lsun/tools/java/Environment;
0 20 2 ctx Lsun/tools/tree/Context;
0 20 3 lookup Lsun/tools/java/MemberDefinition;
0 20 4 cfld Lsun/tools/java/MemberDefinition;
0 20 5 className Ljava/lang/String;
4 20 6 ccls Lsun/tools/tree/Expression;
5 20 7 cache Lsun/tools/tree/Expression;
9 20 8 cacheOK Lsun/tools/tree/Expression;
11 20 9 lcls Lsun/tools/tree/Expression;
12 20 10 name Lsun/tools/tree/Expression;
13 20 11 namearg [Lsun/tools/tree/Expression;
16 20 12 setCache Lsun/tools/tree/Expression;
MethodParameters:
Name Flags
env
ctx
lookup
cfld
className
private sun.tools.tree.Expression makeClassLiteralInlineRef(sun.tools.java.Environment, sun.tools.tree.Context, sun.tools.java.MemberDefinition, java.lang.String);
descriptor: (Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/java/MemberDefinition;Ljava/lang/String;)Lsun/tools/tree/Expression;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: new sun.tools.tree.TypeExpression
dup
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 3
invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
invokevirtual sun.tools.java.ClassDefinition.getType:()Lsun/tools/java/Type;
invokespecial sun.tools.tree.TypeExpression.<init>:(JLsun/tools/java/Type;)V
1: astore 5
start local 5 2: new sun.tools.tree.StringExpression
dup
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 4
invokespecial sun.tools.tree.StringExpression.<init>:(JLjava/lang/String;)V
astore 6
start local 6 3: iconst_1
anewarray sun.tools.tree.Expression
dup
iconst_0
aload 6
aastore
astore 7
start local 7 4: new sun.tools.tree.MethodExpression
dup
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 5
5: aload 3
aload 7
6: invokespecial sun.tools.tree.MethodExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/java/MemberDefinition;[Lsun/tools/tree/Expression;)V
astore 8
start local 8 7: aload 8
areturn
end local 8 end local 7 end local 6 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 8 0 this Lsun/tools/tree/FieldExpression;
0 8 1 env Lsun/tools/java/Environment;
0 8 2 ctx Lsun/tools/tree/Context;
0 8 3 lookup Lsun/tools/java/MemberDefinition;
0 8 4 className Ljava/lang/String;
2 8 5 lcls Lsun/tools/tree/Expression;
3 8 6 name Lsun/tools/tree/Expression;
4 8 7 namearg [Lsun/tools/tree/Expression;
7 8 8 getClass Lsun/tools/tree/Expression;
MethodParameters:
Name Flags
env
ctx
lookup
className
public boolean isConstant();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
ifnull 2
1: aload 0
getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
invokevirtual sun.tools.tree.Expression.isConstant:()Z
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
ifnull 6
3: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
ifnull 5
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
instanceof sun.tools.tree.TypeExpression
ifne 5
4: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.op:I
bipush 82
if_icmpne 6
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.where:J
aload 0
getfield sun.tools.tree.FieldExpression.where:J
lcmp
ifne 6
5: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.isConstant:()Z
ireturn
6: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/tools/tree/FieldExpression;
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=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
ifnull 2
1: aload 0
getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
aload 1
aload 2
invokevirtual sun.tools.tree.Expression.inline:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual sun.tools.tree.FieldExpression.inlineValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
astore 3
start local 3 3: aload 3
instanceof sun.tools.tree.FieldExpression
ifeq 7
4: aload 3
checkcast sun.tools.tree.FieldExpression
astore 4
start local 4 5: aload 4
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
ifnull 7
aload 4
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.op:I
bipush 82
if_icmpne 7
6: aconst_null
areturn
end local 4 7: StackMap locals: sun.tools.tree.Expression
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/tools/tree/FieldExpression;
0 8 1 env Lsun/tools/java/Environment;
0 8 2 ctx Lsun/tools/tree/Context;
3 8 3 e Lsun/tools/tree/Expression;
5 7 4 fe Lsun/tools/tree/FieldExpression;
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=6, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
ifnull 2
1: aload 0
getfield sun.tools.tree.FieldExpression.implementation: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:
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
ifnonnull 5
3: aload 0
4: areturn
5: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.isFinal:()Z
ifeq 12
6: aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
aload 1
invokevirtual sun.tools.java.MemberDefinition.getValue:(Lsun/tools/java/Environment;)Lsun/tools/tree/Node;
checkcast sun.tools.tree.Expression
astore 3
start local 3 7: aload 3
ifnull 12
aload 3
invokevirtual sun.tools.tree.Expression.isConstant:()Z
ifeq 12
8: aload 3
aload 2
invokevirtual sun.tools.tree.Expression.copyInline:(Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
astore 3
9: aload 3
aload 0
getfield sun.tools.tree.FieldExpression.where:J
putfield sun.tools.tree.Expression.where:J
10: new sun.tools.tree.CommaExpression
dup
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
aload 3
invokespecial sun.tools.tree.CommaExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/tree/Expression;)V
aload 1
aload 2
invokevirtual sun.tools.tree.CommaExpression.inlineValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
11: areturn
end local 3 12: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
ifnull 20
13: aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.isStatic:()Z
ifeq 19
14: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
aload 1
aload 2
invokevirtual sun.tools.tree.Expression.inline:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
astore 3
start local 3 15: aload 0
aconst_null
putfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
16: aload 3
ifnull 20
17: new sun.tools.tree.CommaExpression
dup
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 3
aload 0
invokespecial sun.tools.tree.CommaExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/tree/Expression;)V
18: areturn
end local 3 19: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield sun.tools.tree.FieldExpression.right: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;
putfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
20: StackMap locals:
StackMap stack:
aload 0
21: areturn
22: StackMap locals:
StackMap stack: sun.tools.java.ClassNotFound
astore 3
start local 3 23: new sun.tools.java.CompilerError
dup
aload 3
invokespecial sun.tools.java.CompilerError.<init>:(Ljava/lang/Exception;)V
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lsun/tools/tree/FieldExpression;
0 24 1 env Lsun/tools/java/Environment;
0 24 2 ctx Lsun/tools/tree/Context;
7 12 3 e Lsun/tools/tree/Expression;
15 19 3 e Lsun/tools/tree/Expression;
23 24 3 e Lsun/tools/java/ClassNotFound;
Exception table:
from to target type
2 4 22 Class sun.tools.java.ClassNotFound
5 11 22 Class sun.tools.java.ClassNotFound
12 18 22 Class sun.tools.java.ClassNotFound
19 21 22 Class sun.tools.java.ClassNotFound
MethodParameters:
Name Flags
env
ctx
public sun.tools.tree.Expression inlineLHS(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=6, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
ifnull 2
1: aload 0
getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
aload 1
aload 2
invokevirtual sun.tools.tree.Expression.inlineLHS:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
ifnull 9
3: aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.isStatic:()Z
ifeq 8
4: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
aload 1
aload 2
invokevirtual sun.tools.tree.Expression.inline:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
astore 3
start local 3 5: aload 0
aconst_null
putfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
6: aload 3
ifnull 9
7: new sun.tools.tree.CommaExpression
dup
aload 0
getfield sun.tools.tree.FieldExpression.where:J
aload 3
aload 0
invokespecial sun.tools.tree.CommaExpression.<init>:(JLsun/tools/tree/Expression;Lsun/tools/tree/Expression;)V
areturn
end local 3 8: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield sun.tools.tree.FieldExpression.right: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;
putfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
9: StackMap locals:
StackMap stack:
aload 0
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lsun/tools/tree/FieldExpression;
0 10 1 env Lsun/tools/java/Environment;
0 10 2 ctx Lsun/tools/tree/Context;
5 8 3 e Lsun/tools/tree/Expression;
MethodParameters:
Name Flags
env
ctx
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=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
ifnull 2
1: aload 0
getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
aload 1
invokevirtual sun.tools.tree.Expression.copyInline:(Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokespecial sun.tools.tree.UnaryExpression.copyInline:(Lsun/tools/tree/Context;)Lsun/tools/tree/Expression;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/tools/tree/FieldExpression;
0 3 1 ctx Lsun/tools/tree/Context;
MethodParameters:
Name Flags
ctx
public int costInline(int, sun.tools.java.Environment, sun.tools.tree.Context);
descriptor: (ILsun/tools/java/Environment;Lsun/tools/tree/Context;)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
ifnull 2
1: aload 0
getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
iload 1
aload 2
aload 3
invokevirtual sun.tools.tree.Expression.costInline:(ILsun/tools/java/Environment;Lsun/tools/tree/Context;)I
ireturn
2: StackMap locals:
StackMap stack:
aload 3
ifnonnull 6
3: iconst_3
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
ifnonnull 4
iconst_0
goto 5
4: StackMap locals:
StackMap stack: int
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
iload 1
aload 2
aload 3
invokevirtual sun.tools.tree.Expression.costInline:(ILsun/tools/java/Environment;Lsun/tools/tree/Context;)I
5: StackMap locals: sun.tools.tree.FieldExpression int sun.tools.java.Environment sun.tools.tree.Context
StackMap stack: int int
iadd
ireturn
6: StackMap locals:
StackMap stack:
aload 3
getfield sun.tools.tree.Context.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getClassDefinition:()Lsun/tools/java/ClassDefinition;
astore 4
start local 4 7: aload 4
aload 2
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.getClassDeclaration:()Lsun/tools/java/ClassDeclaration;
invokevirtual sun.tools.java.ClassDefinition.permitInlinedAccess:(Lsun/tools/java/Environment;Lsun/tools/java/ClassDeclaration;)Z
ifeq 16
8: aload 4
aload 2
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.ClassDefinition.permitInlinedAccess:(Lsun/tools/java/Environment;Lsun/tools/java/MemberDefinition;)Z
ifeq 16
9: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
ifnonnull 11
10: iconst_3
ireturn
11: StackMap locals: sun.tools.java.ClassDefinition
StackMap stack:
aload 2
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
getfield sun.tools.tree.Expression.type:Lsun/tools/java/Type;
invokevirtual sun.tools.java.Environment.getClassDeclaration:(Lsun/tools/java/Type;)Lsun/tools/java/ClassDeclaration;
astore 5
start local 5 12: aload 4
aload 2
aload 5
invokevirtual sun.tools.java.ClassDefinition.permitInlinedAccess:(Lsun/tools/java/Environment;Lsun/tools/java/ClassDeclaration;)Z
ifeq 16
13: iconst_3
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
iload 1
aload 2
aload 3
invokevirtual sun.tools.tree.Expression.costInline:(ILsun/tools/java/Environment;Lsun/tools/tree/Context;)I
iadd
14: ireturn
end local 5 15: StackMap locals:
StackMap stack: sun.tools.java.ClassNotFound
pop
16: StackMap locals:
StackMap stack:
iload 1
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lsun/tools/tree/FieldExpression;
0 17 1 thresh I
0 17 2 env Lsun/tools/java/Environment;
0 17 3 ctx Lsun/tools/tree/Context;
7 17 4 ctxClass Lsun/tools/java/ClassDefinition;
12 15 5 rt Lsun/tools/java/ClassDeclaration;
Exception table:
from to target type
7 10 15 Class sun.tools.java.ClassNotFound
11 14 15 Class sun.tools.java.ClassNotFound
MethodParameters:
Name Flags
thresh
env
ctx
int codeLValue(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;)I
flags: (0x0000)
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
ifnull 2
1: new sun.tools.java.CompilerError
dup
ldc "codeLValue"
invokespecial sun.tools.java.CompilerError.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.isStatic:()Z
ifeq 7
3: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
ifnull 6
4: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
aload 1
aload 2
aload 3
invokevirtual sun.tools.tree.Expression.code:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/asm/Assembler;)V
5: iconst_1
ireturn
6: StackMap locals:
StackMap stack:
iconst_0
ireturn
7: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
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
8: iconst_1
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/tools/tree/FieldExpression;
0 9 1 env Lsun/tools/java/Environment;
0 9 2 ctx Lsun/tools/tree/Context;
0 9 3 asm Lsun/tools/asm/Assembler;
MethodParameters:
Name Flags
env
ctx
asm
void codeLoad(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: (0x0000)
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
ifnonnull 2
1: new sun.tools.java.CompilerError
dup
ldc "should not be null"
invokespecial sun.tools.java.CompilerError.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.isStatic:()Z
ifeq 5
3: aload 3
aload 0
getfield sun.tools.tree.FieldExpression.where:J
sipush 178
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
4: goto 6
5: StackMap locals:
StackMap stack:
aload 3
aload 0
getfield sun.tools.tree.FieldExpression.where:J
sipush 180
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
6: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/tools/tree/FieldExpression;
0 7 1 env Lsun/tools/java/Environment;
0 7 2 ctx Lsun/tools/tree/Context;
0 7 3 asm Lsun/tools/asm/Assembler;
MethodParameters:
Name Flags
env
ctx
asm
void codeStore(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: (0x0000)
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.java.MemberDefinition.isStatic:()Z
ifeq 3
1: aload 3
aload 0
getfield sun.tools.tree.FieldExpression.where:J
sipush 179
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
2: goto 4
3: StackMap locals:
StackMap stack:
aload 3
aload 0
getfield sun.tools.tree.FieldExpression.where:J
sipush 181
aload 0
getfield sun.tools.tree.FieldExpression.field:Lsun/tools/java/MemberDefinition;
invokevirtual sun.tools.asm.Assembler.add:(JILjava/lang/Object;)V
4: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/tools/tree/FieldExpression;
0 5 1 env Lsun/tools/java/Environment;
0 5 2 ctx Lsun/tools/tree/Context;
0 5 3 asm Lsun/tools/asm/Assembler;
MethodParameters:
Name Flags
env
ctx
asm
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=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
aload 3
invokevirtual sun.tools.tree.FieldExpression.codeLValue:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/asm/Assembler;)I
pop
1: aload 0
aload 1
aload 2
aload 3
invokevirtual sun.tools.tree.FieldExpression.codeLoad:(Lsun/tools/java/Environment;Lsun/tools/tree/Context;Lsun/tools/asm/Assembler;)V
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/tools/tree/FieldExpression;
0 3 1 env Lsun/tools/java/Environment;
0 3 2 ctx Lsun/tools/tree/Context;
0 3 3 asm Lsun/tools/asm/Assembler;
MethodParameters:
Name Flags
env
ctx
asm
public void print(java.io.PrintStream);
descriptor: (Ljava/io/PrintStream;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ldc "("
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
1: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
ifnull 4
2: aload 0
getfield sun.tools.tree.FieldExpression.right:Lsun/tools/tree/Expression;
aload 1
invokevirtual sun.tools.tree.Expression.print:(Ljava/io/PrintStream;)V
3: goto 5
4: StackMap locals:
StackMap stack:
aload 1
ldc "<empty>"
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
5: StackMap locals:
StackMap stack:
aload 1
new java.lang.StringBuilder
dup
ldc "."
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield sun.tools.tree.FieldExpression.id:Lsun/tools/java/Identifier;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
6: aload 0
getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
ifnull 9
7: aload 1
ldc "/IMPL="
invokevirtual java.io.PrintStream.print:(Ljava/lang/String;)V
8: aload 0
getfield sun.tools.tree.FieldExpression.implementation:Lsun/tools/tree/Expression;
aload 1
invokevirtual sun.tools.tree.Expression.print:(Ljava/io/PrintStream;)V
9: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lsun/tools/tree/FieldExpression;
0 10 1 out Ljava/io/PrintStream;
MethodParameters:
Name Flags
out
}
SourceFile: "FieldExpression.java"