public abstract class com.sun.tools.javac.jvm.StringConcat
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: com.sun.tools.javac.jvm.StringConcat
super_class: java.lang.Object
{
private static final int MAX_INDY_CONCAT_ARG_SLOTS;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 200
private static final char TAG_ARG;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final char TAG_CONST;
descriptor: C
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
protected final com.sun.tools.javac.jvm.Gen gen;
descriptor: Lcom/sun/tools/javac/jvm/Gen;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final com.sun.tools.javac.code.Symtab syms;
descriptor: Lcom/sun/tools/javac/code/Symtab;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final com.sun.tools.javac.util.Names names;
descriptor: Lcom/sun/tools/javac/util/Names;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final com.sun.tools.javac.tree.TreeMaker make;
descriptor: Lcom/sun/tools/javac/tree/TreeMaker;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final com.sun.tools.javac.code.Types types;
descriptor: Lcom/sun/tools/javac/code/Types;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final java.util.Map<com.sun.tools.javac.code.Type, com.sun.tools.javac.code.Symbol> sbAppends;
descriptor: Ljava/util/Map;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Signature: Ljava/util/Map<Lcom/sun/tools/javac/code/Type;Lcom/sun/tools/javac/code/Symbol;>;
protected final com.sun.tools.javac.comp.Resolve rs;
descriptor: Lcom/sun/tools/javac/comp/Resolve;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected static final com.sun.tools.javac.util.Context$Key<com.sun.tools.javac.jvm.StringConcat> concatKey;
descriptor: Lcom/sun/tools/javac/util/Context$Key;
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
Signature: Lcom/sun/tools/javac/util/Context$Key<Lcom/sun/tools/javac/jvm/StringConcat;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new com.sun.tools.javac.util.Context$Key
dup
invokespecial com.sun.tools.javac.util.Context$Key.<init>:()V
putstatic com.sun.tools.javac.jvm.StringConcat.concatKey:Lcom/sun/tools/javac/util/Context$Key;
return
LocalVariableTable:
Start End Slot Name Signature
public static com.sun.tools.javac.jvm.StringConcat instance(com.sun.tools.javac.util.Context);
descriptor: (Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/jvm/StringConcat;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getstatic com.sun.tools.javac.jvm.StringConcat.concatKey:Lcom/sun/tools/javac/util/Context$Key;
invokevirtual com.sun.tools.javac.util.Context.get:(Lcom/sun/tools/javac/util/Context$Key;)Ljava/lang/Object;
checkcast com.sun.tools.javac.jvm.StringConcat
astore 1
start local 1 1: aload 1
ifnonnull 3
2: aload 0
invokestatic com.sun.tools.javac.jvm.StringConcat.makeConcat:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/jvm/StringConcat;
astore 1
3: StackMap locals: com.sun.tools.javac.jvm.StringConcat
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 context Lcom/sun/tools/javac/util/Context;
1 4 1 instance Lcom/sun/tools/javac/jvm/StringConcat;
MethodParameters:
Name Flags
context
private static com.sun.tools.javac.jvm.StringConcat makeConcat(com.sun.tools.javac.util.Context);
descriptor: (Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/jvm/StringConcat;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=4, args_size=1
start local 0 0: aload 0
invokestatic com.sun.tools.javac.jvm.Target.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/jvm/Target;
astore 1
start local 1 1: aload 0
invokestatic com.sun.tools.javac.util.Options.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/util/Options;
ldc "stringConcat"
invokevirtual com.sun.tools.javac.util.Options.get:(Ljava/lang/String;)Ljava/lang/String;
astore 2
start local 2 2: aload 1
invokevirtual com.sun.tools.javac.jvm.Target.hasStringConcatFactory:()Z
ifeq 6
3: aload 2
ifnonnull 9
4: ldc "indyWithConstants"
astore 2
5: goto 9
6: StackMap locals: com.sun.tools.javac.jvm.Target java.lang.String
StackMap stack:
aload 2
ifnull 8
ldc "inline"
aload 2
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 8
7: ldc "StringConcatFactory-based string concat is requested on a platform that does not support it."
invokestatic com.sun.tools.javac.util.Assert.error:(Ljava/lang/String;)V
8: StackMap locals:
StackMap stack:
ldc "inline"
astore 2
9: StackMap locals:
StackMap stack:
aload 2
dup
astore 3
invokevirtual java.lang.String.hashCode:()I
lookupswitch { // 3
-1183997287: 10
3236986: 11
671408335: 12
default: 16
}
StackMap locals: java.lang.String
StackMap stack:
10: aload 3
ldc "inline"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 13
goto 16
StackMap locals:
StackMap stack:
11: aload 3
ldc "indy"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 14
goto 16
StackMap locals:
StackMap stack:
12: aload 3
ldc "indyWithConstants"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 15
goto 16
13: StackMap locals:
StackMap stack:
new com.sun.tools.javac.jvm.StringConcat$Inline
dup
aload 0
invokespecial com.sun.tools.javac.jvm.StringConcat$Inline.<init>:(Lcom/sun/tools/javac/util/Context;)V
areturn
14: StackMap locals:
StackMap stack:
new com.sun.tools.javac.jvm.StringConcat$IndyPlain
dup
aload 0
invokespecial com.sun.tools.javac.jvm.StringConcat$IndyPlain.<init>:(Lcom/sun/tools/javac/util/Context;)V
areturn
15: StackMap locals:
StackMap stack:
new com.sun.tools.javac.jvm.StringConcat$IndyConstants
dup
aload 0
invokespecial com.sun.tools.javac.jvm.StringConcat$IndyConstants.<init>:(Lcom/sun/tools/javac/util/Context;)V
areturn
16: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "Unknown stringConcat: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic com.sun.tools.javac.util.Assert.error:(Ljava/lang/String;)V
17: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "Unknown stringConcat: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 context Lcom/sun/tools/javac/util/Context;
1 18 1 target Lcom/sun/tools/javac/jvm/Target;
2 18 2 opt Ljava/lang/String;
MethodParameters:
Name Flags
context
protected void <init>(com.sun.tools.javac.util.Context);
descriptor: (Lcom/sun/tools/javac/util/Context;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 1
getstatic com.sun.tools.javac.jvm.StringConcat.concatKey:Lcom/sun/tools/javac/util/Context$Key;
aload 0
invokevirtual com.sun.tools.javac.util.Context.put:(Lcom/sun/tools/javac/util/Context$Key;Ljava/lang/Object;)V
2: aload 0
aload 1
invokestatic com.sun.tools.javac.jvm.Gen.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/jvm/Gen;
putfield com.sun.tools.javac.jvm.StringConcat.gen:Lcom/sun/tools/javac/jvm/Gen;
3: aload 0
aload 1
invokestatic com.sun.tools.javac.code.Symtab.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/code/Symtab;
putfield com.sun.tools.javac.jvm.StringConcat.syms:Lcom/sun/tools/javac/code/Symtab;
4: aload 0
aload 1
invokestatic com.sun.tools.javac.code.Types.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/code/Types;
putfield com.sun.tools.javac.jvm.StringConcat.types:Lcom/sun/tools/javac/code/Types;
5: aload 0
aload 1
invokestatic com.sun.tools.javac.util.Names.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/util/Names;
putfield com.sun.tools.javac.jvm.StringConcat.names:Lcom/sun/tools/javac/util/Names;
6: aload 0
aload 1
invokestatic com.sun.tools.javac.tree.TreeMaker.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/tree/TreeMaker;
putfield com.sun.tools.javac.jvm.StringConcat.make:Lcom/sun/tools/javac/tree/TreeMaker;
7: aload 0
aload 1
invokestatic com.sun.tools.javac.comp.Resolve.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/comp/Resolve;
putfield com.sun.tools.javac.jvm.StringConcat.rs:Lcom/sun/tools/javac/comp/Resolve;
8: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield com.sun.tools.javac.jvm.StringConcat.sbAppends:Ljava/util/Map;
9: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/sun/tools/javac/jvm/StringConcat;
0 10 1 context Lcom/sun/tools/javac/util/Context;
MethodParameters:
Name Flags
context
public abstract com.sun.tools.javac.jvm.Items$Item makeConcat(com.sun.tools.javac.tree.JCTree$JCAssignOp);
descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCAssignOp;)Lcom/sun/tools/javac/jvm/Items$Item;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
tree
public abstract com.sun.tools.javac.jvm.Items$Item makeConcat(com.sun.tools.javac.tree.JCTree$JCBinary);
descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCBinary;)Lcom/sun/tools/javac/jvm/Items$Item;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
tree
protected com.sun.tools.javac.util.List<com.sun.tools.javac.tree.JCTree> collectAll(com.sun.tools.javac.tree.JCTree);
descriptor: (Lcom/sun/tools/javac/tree/JCTree;)Lcom/sun/tools/javac/util/List;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.jvm.StringConcat.collect:(Lcom/sun/tools/javac/tree/JCTree;Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/javac/jvm/StringConcat;
0 1 1 tree Lcom/sun/tools/javac/tree/JCTree;
Signature: (Lcom/sun/tools/javac/tree/JCTree;)Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree;>;
MethodParameters:
Name Flags
tree
protected com.sun.tools.javac.util.List<com.sun.tools.javac.tree.JCTree> collectAll(com.sun.tools.javac.tree.JCTree$JCExpression, com.sun.tools.javac.tree.JCTree$JCExpression);
descriptor: (Lcom/sun/tools/javac/tree/JCTree$JCExpression;Lcom/sun/tools/javac/tree/JCTree$JCExpression;)Lcom/sun/tools/javac/util/List;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: invokestatic com.sun.tools.javac.util.List.nil:()Lcom/sun/tools/javac/util/List;
1: aload 0
aload 1
invokevirtual com.sun.tools.javac.jvm.StringConcat.collectAll:(Lcom/sun/tools/javac/tree/JCTree;)Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.appendList:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
2: aload 0
aload 2
invokevirtual com.sun.tools.javac.jvm.StringConcat.collectAll:(Lcom/sun/tools/javac/tree/JCTree;)Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.appendList:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
3: areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/javac/jvm/StringConcat;
0 4 1 lhs Lcom/sun/tools/javac/tree/JCTree$JCExpression;
0 4 2 rhs Lcom/sun/tools/javac/tree/JCTree$JCExpression;
Signature: (Lcom/sun/tools/javac/tree/JCTree$JCExpression;Lcom/sun/tools/javac/tree/JCTree$JCExpression;)Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree;>;
MethodParameters:
Name Flags
lhs
rhs
private com.sun.tools.javac.util.List<com.sun.tools.javac.tree.JCTree> collect(com.sun.tools.javac.tree.JCTree, com.sun.tools.javac.util.List<com.sun.tools.javac.tree.JCTree>);
descriptor: (Lcom/sun/tools/javac/tree/JCTree;Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokestatic com.sun.tools.javac.tree.TreeInfo.skipParens:(Lcom/sun/tools/javac/tree/JCTree;)Lcom/sun/tools/javac/tree/JCTree;
astore 1
1: aload 1
getstatic com.sun.tools.javac.tree.JCTree$Tag.PLUS:Lcom/sun/tools/javac/tree/JCTree$Tag;
invokevirtual com.sun.tools.javac.tree.JCTree.hasTag:(Lcom/sun/tools/javac/tree/JCTree$Tag;)Z
ifeq 8
aload 1
getfield com.sun.tools.javac.tree.JCTree.type:Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.code.Type.constValue:()Ljava/lang/Object;
ifnonnull 8
2: aload 1
checkcast com.sun.tools.javac.tree.JCTree$JCBinary
astore 3
start local 3 3: aload 3
getfield com.sun.tools.javac.tree.JCTree$JCBinary.operator:Lcom/sun/tools/javac/code/Symbol$OperatorSymbol;
getfield com.sun.tools.javac.code.Symbol$OperatorSymbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
getstatic com.sun.tools.javac.code.Kinds$Kind.MTH:Lcom/sun/tools/javac/code/Kinds$Kind;
if_acmpne 8
aload 3
getfield com.sun.tools.javac.tree.JCTree$JCBinary.operator:Lcom/sun/tools/javac/code/Symbol$OperatorSymbol;
getfield com.sun.tools.javac.code.Symbol$OperatorSymbol.opcode:I
sipush 256
if_icmpne 8
4: aload 2
5: aload 0
aload 3
getfield com.sun.tools.javac.tree.JCTree$JCBinary.lhs:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
aload 2
invokevirtual com.sun.tools.javac.jvm.StringConcat.collect:(Lcom/sun/tools/javac/tree/JCTree;Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.appendList:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
6: aload 0
aload 3
getfield com.sun.tools.javac.tree.JCTree$JCBinary.rhs:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
aload 2
invokevirtual com.sun.tools.javac.jvm.StringConcat.collect:(Lcom/sun/tools/javac/tree/JCTree;Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.appendList:(Lcom/sun/tools/javac/util/List;)Lcom/sun/tools/javac/util/List;
7: areturn
end local 3 8: StackMap locals:
StackMap stack:
aload 2
aload 1
invokevirtual com.sun.tools.javac.util.List.append:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/List;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/sun/tools/javac/jvm/StringConcat;
0 9 1 tree Lcom/sun/tools/javac/tree/JCTree;
0 9 2 res Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree;>;
3 8 3 op Lcom/sun/tools/javac/tree/JCTree$JCBinary;
Signature: (Lcom/sun/tools/javac/tree/JCTree;Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree;>;)Lcom/sun/tools/javac/util/List<Lcom/sun/tools/javac/tree/JCTree;>;
MethodParameters:
Name Flags
tree
res
com.sun.tools.javac.code.Type sharpestAccessible(com.sun.tools.javac.code.Type);
descriptor: (Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
flags: (0x0000)
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 1
getstatic com.sun.tools.javac.code.TypeTag.ARRAY:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.Type.hasTag:(Lcom/sun/tools/javac/code/TypeTag;)Z
ifeq 2
1: aload 0
getfield com.sun.tools.javac.jvm.StringConcat.types:Lcom/sun/tools/javac/code/Types;
aload 0
aload 0
getfield com.sun.tools.javac.jvm.StringConcat.types:Lcom/sun/tools/javac/code/Types;
aload 1
invokevirtual com.sun.tools.javac.code.Types.elemtype:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.jvm.StringConcat.sharpestAccessible:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
invokevirtual com.sun.tools.javac.code.Types.makeArrayType:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type$ArrayType;
areturn
2: StackMap locals:
StackMap stack:
aload 1
astore 2
start local 2 3: goto 5
4: StackMap locals: com.sun.tools.javac.code.Type
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.StringConcat.types:Lcom/sun/tools/javac/code/Types;
aload 2
invokevirtual com.sun.tools.javac.code.Types.supertype:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
astore 2
5: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.javac.jvm.StringConcat.rs:Lcom/sun/tools/javac/comp/Resolve;
aload 0
getfield com.sun.tools.javac.jvm.StringConcat.gen:Lcom/sun/tools/javac/jvm/Gen;
invokevirtual com.sun.tools.javac.jvm.Gen.getAttrEnv:()Lcom/sun/tools/javac/comp/Env;
aload 2
invokevirtual com.sun.tools.javac.code.Type.asElement:()Lcom/sun/tools/javac/code/Symbol$TypeSymbol;
invokevirtual com.sun.tools.javac.comp.Resolve.isAccessible:(Lcom/sun/tools/javac/comp/Env;Lcom/sun/tools/javac/code/Symbol$TypeSymbol;)Z
ifeq 4
6: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/tools/javac/jvm/StringConcat;
0 7 1 originalType Lcom/sun/tools/javac/code/Type;
3 7 2 type Lcom/sun/tools/javac/code/Type;
MethodParameters:
Name Flags
originalType
}
SourceFile: "StringConcat.java"
NestMembers:
com.sun.tools.javac.jvm.StringConcat$Indy com.sun.tools.javac.jvm.StringConcat$IndyConstants com.sun.tools.javac.jvm.StringConcat$IndyPlain com.sun.tools.javac.jvm.StringConcat$Inline
InnerClasses:
public final Kind = com.sun.tools.javac.code.Kinds$Kind of com.sun.tools.javac.code.Kinds
public OperatorSymbol = com.sun.tools.javac.code.Symbol$OperatorSymbol of com.sun.tools.javac.code.Symbol
public abstract TypeSymbol = com.sun.tools.javac.code.Symbol$TypeSymbol of com.sun.tools.javac.code.Symbol
public ArrayType = com.sun.tools.javac.code.Type$ArrayType of com.sun.tools.javac.code.Type
abstract Item = com.sun.tools.javac.jvm.Items$Item of com.sun.tools.javac.jvm.Items
private abstract Indy = com.sun.tools.javac.jvm.StringConcat$Indy of com.sun.tools.javac.jvm.StringConcat
private final IndyConstants = com.sun.tools.javac.jvm.StringConcat$IndyConstants of com.sun.tools.javac.jvm.StringConcat
private IndyPlain = com.sun.tools.javac.jvm.StringConcat$IndyPlain of com.sun.tools.javac.jvm.StringConcat
private Inline = com.sun.tools.javac.jvm.StringConcat$Inline of com.sun.tools.javac.jvm.StringConcat
public JCAssignOp = com.sun.tools.javac.tree.JCTree$JCAssignOp of com.sun.tools.javac.tree.JCTree
public JCBinary = com.sun.tools.javac.tree.JCTree$JCBinary of com.sun.tools.javac.tree.JCTree
public abstract JCExpression = com.sun.tools.javac.tree.JCTree$JCExpression of com.sun.tools.javac.tree.JCTree
public final Tag = com.sun.tools.javac.tree.JCTree$Tag of com.sun.tools.javac.tree.JCTree
public Key = com.sun.tools.javac.util.Context$Key of com.sun.tools.javac.util.Context