final class com.sun.tools.javac.comp.TypeEnter$HeaderPhase extends com.sun.tools.javac.comp.TypeEnter$AbstractHeaderPhase
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: com.sun.tools.javac.comp.TypeEnter$HeaderPhase
super_class: com.sun.tools.javac.comp.TypeEnter$AbstractHeaderPhase
{
final com.sun.tools.javac.comp.TypeEnter this$0;
descriptor: Lcom/sun/tools/javac/comp/TypeEnter;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
public void <init>(com.sun.tools.javac.comp.TypeEnter);
descriptor: (Lcom/sun/tools/javac/comp/TypeEnter;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=2
start local 0 // com.sun.tools.javac.comp.TypeEnter$HeaderPhase this
0: .line 854
aload 0 /* this */
aload 1
putfield com.sun.tools.javac.comp.TypeEnter$HeaderPhase.this$0:Lcom/sun/tools/javac/comp/TypeEnter;
1: .line 855
aload 0 /* this */
aload 1
getstatic com.sun.tools.javac.util.Dependencies$CompletionCause.HEADER_PHASE:Lcom/sun/tools/javac/util/Dependencies$CompletionCause;
new com.sun.tools.javac.comp.TypeEnter$RecordPhase
dup
aload 1
invokespecial com.sun.tools.javac.comp.TypeEnter$RecordPhase.<init>:(Lcom/sun/tools/javac/comp/TypeEnter;)V
invokespecial com.sun.tools.javac.comp.TypeEnter$AbstractHeaderPhase.<init>:(Lcom/sun/tools/javac/comp/TypeEnter;Lcom/sun/tools/javac/util/Dependencies$CompletionCause;Lcom/sun/tools/javac/comp/TypeEnter$Phase;)V
2: .line 856
return
end local 0 // com.sun.tools.javac.comp.TypeEnter$HeaderPhase this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/javac/comp/TypeEnter$HeaderPhase;
MethodParameters:
Name Flags
this$0 final
protected void runPhase(com.sun.tools.javac.comp.Env<com.sun.tools.javac.comp.AttrContext>);
descriptor: (Lcom/sun/tools/javac/comp/Env;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=9, args_size=2
start local 0 // com.sun.tools.javac.comp.TypeEnter$HeaderPhase this
start local 1 // com.sun.tools.javac.comp.Env env
0: .line 860
aload 1 /* env */
getfield com.sun.tools.javac.comp.Env.enclClass:Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;
astore 2 /* tree */
start local 2 // com.sun.tools.javac.tree.JCTree$JCClassDecl tree
1: .line 861
aload 2 /* tree */
getfield com.sun.tools.javac.tree.JCTree$JCClassDecl.sym:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
astore 3 /* sym */
start local 3 // com.sun.tools.javac.code.Symbol$ClassSymbol sym
2: .line 862
aload 3 /* sym */
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.type:Lcom/sun/tools/javac/code/Type;
checkcast com.sun.tools.javac.code.Type$ClassType
pop
3: .line 865
aload 0 /* this */
aload 2 /* tree */
aload 1 /* env */
invokevirtual com.sun.tools.javac.comp.TypeEnter$HeaderPhase.baseEnv:(Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;Lcom/sun/tools/javac/comp/Env;)Lcom/sun/tools/javac/comp/Env;
astore 4 /* baseEnv */
start local 4 // com.sun.tools.javac.comp.Env baseEnv
4: .line 867
aload 2 /* tree */
getfield com.sun.tools.javac.tree.JCTree$JCClassDecl.extending:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
ifnull 6
5: .line 868
aload 0 /* this */
getfield com.sun.tools.javac.comp.TypeEnter$HeaderPhase.this$0:Lcom/sun/tools/javac/comp/TypeEnter;
getfield com.sun.tools.javac.comp.TypeEnter.annotate:Lcom/sun/tools/javac/comp/Annotate;
aload 2 /* tree */
getfield com.sun.tools.javac.tree.JCTree$JCClassDecl.extending:Lcom/sun/tools/javac/tree/JCTree$JCExpression;
aload 4 /* baseEnv */
aload 3 /* sym */
aload 2 /* tree */
invokevirtual com.sun.tools.javac.tree.JCTree$JCClassDecl.pos:()Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
invokevirtual com.sun.tools.javac.comp.Annotate.queueScanTreeAndTypeAnnotate:(Lcom/sun/tools/javac/tree/JCTree;Lcom/sun/tools/javac/comp/Env;Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;)V
6: .line 869
StackMap locals: com.sun.tools.javac.tree.JCTree$JCClassDecl com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.comp.Env
StackMap stack:
aload 2 /* tree */
getfield com.sun.tools.javac.tree.JCTree$JCClassDecl.implementing:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 9
StackMap locals: com.sun.tools.javac.comp.TypeEnter$HeaderPhase com.sun.tools.javac.comp.Env com.sun.tools.javac.tree.JCTree$JCClassDecl com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.comp.Env top java.util.Iterator
StackMap stack:
7: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.tree.JCTree$JCExpression
astore 5 /* impl */
start local 5 // com.sun.tools.javac.tree.JCTree$JCExpression impl
8: .line 870
aload 0 /* this */
getfield com.sun.tools.javac.comp.TypeEnter$HeaderPhase.this$0:Lcom/sun/tools/javac/comp/TypeEnter;
getfield com.sun.tools.javac.comp.TypeEnter.annotate:Lcom/sun/tools/javac/comp/Annotate;
aload 5 /* impl */
aload 4 /* baseEnv */
aload 3 /* sym */
aload 2 /* tree */
invokevirtual com.sun.tools.javac.tree.JCTree$JCClassDecl.pos:()Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
invokevirtual com.sun.tools.javac.comp.Annotate.queueScanTreeAndTypeAnnotate:(Lcom/sun/tools/javac/tree/JCTree;Lcom/sun/tools/javac/comp/Env;Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;)V
end local 5 // com.sun.tools.javac.tree.JCTree$JCExpression impl
9: .line 869
StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
10: .line 871
aload 0 /* this */
getfield com.sun.tools.javac.comp.TypeEnter$HeaderPhase.this$0:Lcom/sun/tools/javac/comp/TypeEnter;
getfield com.sun.tools.javac.comp.TypeEnter.annotate:Lcom/sun/tools/javac/comp/Annotate;
invokevirtual com.sun.tools.javac.comp.Annotate.flush:()V
11: .line 873
aload 0 /* this */
aload 1 /* env */
aload 4 /* baseEnv */
invokevirtual com.sun.tools.javac.comp.TypeEnter$HeaderPhase.attribSuperTypes:(Lcom/sun/tools/javac/comp/Env;Lcom/sun/tools/javac/comp/Env;)V
12: .line 875
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 5 /* interfaceSet */
start local 5 // java.util.Set interfaceSet
13: .line 877
aload 2 /* tree */
getfield com.sun.tools.javac.tree.JCTree$JCClassDecl.implementing:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 7
goto 18
StackMap locals: com.sun.tools.javac.comp.TypeEnter$HeaderPhase com.sun.tools.javac.comp.Env com.sun.tools.javac.tree.JCTree$JCClassDecl com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.comp.Env java.util.Set top java.util.Iterator
StackMap stack:
14: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.tree.JCTree$JCExpression
astore 6 /* iface */
start local 6 // com.sun.tools.javac.tree.JCTree$JCExpression iface
15: .line 878
aload 6 /* iface */
getfield com.sun.tools.javac.tree.JCTree$JCExpression.type:Lcom/sun/tools/javac/code/Type;
astore 8 /* it */
start local 8 // com.sun.tools.javac.code.Type it
16: .line 879
aload 8 /* it */
getstatic com.sun.tools.javac.code.TypeTag.CLASS:Lcom/sun/tools/javac/code/TypeTag;
invokevirtual com.sun.tools.javac.code.Type.hasTag:(Lcom/sun/tools/javac/code/TypeTag;)Z
ifeq 18
17: .line 880
aload 0 /* this */
getfield com.sun.tools.javac.comp.TypeEnter$HeaderPhase.this$0:Lcom/sun/tools/javac/comp/TypeEnter;
getfield com.sun.tools.javac.comp.TypeEnter.chk:Lcom/sun/tools/javac/comp/Check;
aload 6 /* iface */
invokevirtual com.sun.tools.javac.tree.JCTree$JCExpression.pos:()Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
aload 0 /* this */
getfield com.sun.tools.javac.comp.TypeEnter$HeaderPhase.this$0:Lcom/sun/tools/javac/comp/TypeEnter;
getfield com.sun.tools.javac.comp.TypeEnter.types:Lcom/sun/tools/javac/code/Types;
aload 8 /* it */
invokevirtual com.sun.tools.javac.code.Types.erasure:(Lcom/sun/tools/javac/code/Type;)Lcom/sun/tools/javac/code/Type;
aload 5 /* interfaceSet */
invokevirtual com.sun.tools.javac.comp.Check.checkNotRepeated:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/code/Type;Ljava/util/Set;)V
end local 8 // com.sun.tools.javac.code.Type it
end local 6 // com.sun.tools.javac.tree.JCTree$JCExpression iface
18: .line 877
StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 14
19: .line 883
aload 0 /* this */
getfield com.sun.tools.javac.comp.TypeEnter$HeaderPhase.this$0:Lcom/sun/tools/javac/comp/TypeEnter;
getfield com.sun.tools.javac.comp.TypeEnter.annotate:Lcom/sun/tools/javac/comp/Annotate;
aload 2 /* tree */
getfield com.sun.tools.javac.tree.JCTree$JCClassDecl.mods:Lcom/sun/tools/javac/tree/JCTree$JCModifiers;
getfield com.sun.tools.javac.tree.JCTree$JCModifiers.annotations:Lcom/sun/tools/javac/util/List;
aload 4 /* baseEnv */
20: .line 884
aload 3 /* sym */
aload 2 /* tree */
invokevirtual com.sun.tools.javac.tree.JCTree$JCClassDecl.pos:()Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
21: .line 883
invokevirtual com.sun.tools.javac.comp.Annotate.annotateLater:(Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/comp/Env;Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;)V
22: .line 885
aload 0 /* this */
getfield com.sun.tools.javac.comp.TypeEnter$HeaderPhase.this$0:Lcom/sun/tools/javac/comp/TypeEnter;
getfield com.sun.tools.javac.comp.TypeEnter.attr:Lcom/sun/tools/javac/comp/Attr;
aload 2 /* tree */
getfield com.sun.tools.javac.tree.JCTree$JCClassDecl.typarams:Lcom/sun/tools/javac/util/List;
aload 4 /* baseEnv */
iconst_0
invokevirtual com.sun.tools.javac.comp.Attr.attribTypeVariables:(Lcom/sun/tools/javac/util/List;Lcom/sun/tools/javac/comp/Env;Z)V
23: .line 887
aload 2 /* tree */
getfield com.sun.tools.javac.tree.JCTree$JCClassDecl.typarams:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 7
goto 26
StackMap locals:
StackMap stack:
24: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.tree.JCTree$JCTypeParameter
astore 6 /* tp */
start local 6 // com.sun.tools.javac.tree.JCTree$JCTypeParameter tp
25: .line 888
aload 0 /* this */
getfield com.sun.tools.javac.comp.TypeEnter$HeaderPhase.this$0:Lcom/sun/tools/javac/comp/TypeEnter;
getfield com.sun.tools.javac.comp.TypeEnter.annotate:Lcom/sun/tools/javac/comp/Annotate;
aload 6 /* tp */
aload 4 /* baseEnv */
aload 3 /* sym */
aload 2 /* tree */
invokevirtual com.sun.tools.javac.tree.JCTree$JCClassDecl.pos:()Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
invokevirtual com.sun.tools.javac.comp.Annotate.queueScanTreeAndTypeAnnotate:(Lcom/sun/tools/javac/tree/JCTree;Lcom/sun/tools/javac/comp/Env;Lcom/sun/tools/javac/code/Symbol;Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;)V
end local 6 // com.sun.tools.javac.tree.JCTree$JCTypeParameter tp
26: .line 887
StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 24
27: .line 894
aload 3 /* sym */
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
getstatic com.sun.tools.javac.code.Kinds$Kind.PCK:Lcom/sun/tools/javac/code/Kinds$Kind;
if_acmpne 30
aload 3 /* sym */
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
aload 1 /* env */
getfield com.sun.tools.javac.comp.Env.toplevel:Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;
getfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.modle:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
getfield com.sun.tools.javac.code.Symbol$ModuleSymbol.unnamedPackage:Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
if_acmpeq 30
28: .line 895
aload 0 /* this */
getfield com.sun.tools.javac.comp.TypeEnter$HeaderPhase.this$0:Lcom/sun/tools/javac/comp/TypeEnter;
getfield com.sun.tools.javac.comp.TypeEnter.syms:Lcom/sun/tools/javac/code/Symtab;
aload 1 /* env */
getfield com.sun.tools.javac.comp.Env.toplevel:Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;
getfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.modle:Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;
aload 3 /* sym */
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.fullname:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.code.Symtab.packageExists:(Lcom/sun/tools/javac/code/Symbol$ModuleSymbol;Lcom/sun/tools/javac/util/Name;)Z
ifeq 30
29: .line 896
aload 0 /* this */
getfield com.sun.tools.javac.comp.TypeEnter$HeaderPhase.this$0:Lcom/sun/tools/javac/comp/TypeEnter;
getfield com.sun.tools.javac.comp.TypeEnter.log:Lcom/sun/tools/javac/util/Log;
aload 2 /* tree */
getfield com.sun.tools.javac.tree.JCTree$JCClassDecl.pos:I
aload 3 /* sym */
invokestatic com.sun.tools.javac.code.Kinds.kindName:(Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/code/Kinds$KindName;
aload 3 /* sym */
invokestatic com.sun.tools.javac.resources.CompilerProperties$Errors.ClashWithPkgOfSameName:(Lcom/sun/tools/javac/code/Kinds$KindName;Lcom/sun/tools/javac/code/Symbol;)Lcom/sun/tools/javac/util/JCDiagnostic$Error;
invokevirtual com.sun.tools.javac.util.Log.error:(ILcom/sun/tools/javac/util/JCDiagnostic$Error;)V
30: .line 898
StackMap locals: com.sun.tools.javac.comp.TypeEnter$HeaderPhase com.sun.tools.javac.comp.Env com.sun.tools.javac.tree.JCTree$JCClassDecl com.sun.tools.javac.code.Symbol$ClassSymbol com.sun.tools.javac.comp.Env java.util.Set
StackMap stack:
aload 3 /* sym */
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.owner:Lcom/sun/tools/javac/code/Symbol;
getfield com.sun.tools.javac.code.Symbol.kind:Lcom/sun/tools/javac/code/Kinds$Kind;
getstatic com.sun.tools.javac.code.Kinds$Kind.PCK:Lcom/sun/tools/javac/code/Kinds$Kind;
if_acmpne 33
aload 3 /* sym */
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.flags_field:J
lconst_1
land
lconst_0
lcmp
ifne 33
31: .line 899
aload 1 /* env */
getfield com.sun.tools.javac.comp.Env.toplevel:Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;
getfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.sourcefile:Ljavax/tools/JavaFileObject;
aload 3 /* sym */
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.name:Lcom/sun/tools/javac/util/Name;
invokevirtual com.sun.tools.javac.util.Name.toString:()Ljava/lang/String;
getstatic javax.tools.JavaFileObject$Kind.SOURCE:Ljavax/tools/JavaFileObject$Kind;
invokeinterface javax.tools.JavaFileObject.isNameCompatible:(Ljava/lang/String;Ljavax/tools/JavaFileObject$Kind;)Z
ifne 33
32: .line 900
aload 3 /* sym */
dup
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.flags_field:J
ldc 17592186044416
lor
putfield com.sun.tools.javac.code.Symbol$ClassSymbol.flags_field:J
33: .line 902
StackMap locals:
StackMap stack:
return
end local 5 // java.util.Set interfaceSet
end local 4 // com.sun.tools.javac.comp.Env baseEnv
end local 3 // com.sun.tools.javac.code.Symbol$ClassSymbol sym
end local 2 // com.sun.tools.javac.tree.JCTree$JCClassDecl tree
end local 1 // com.sun.tools.javac.comp.Env env
end local 0 // com.sun.tools.javac.comp.TypeEnter$HeaderPhase this
LocalVariableTable:
Start End Slot Name Signature
0 34 0 this Lcom/sun/tools/javac/comp/TypeEnter$HeaderPhase;
0 34 1 env Lcom/sun/tools/javac/comp/Env<Lcom/sun/tools/javac/comp/AttrContext;>;
1 34 2 tree Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;
2 34 3 sym Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
4 34 4 baseEnv Lcom/sun/tools/javac/comp/Env<Lcom/sun/tools/javac/comp/AttrContext;>;
8 9 5 impl Lcom/sun/tools/javac/tree/JCTree$JCExpression;
13 34 5 interfaceSet Ljava/util/Set<Lcom/sun/tools/javac/code/Type;>;
15 18 6 iface Lcom/sun/tools/javac/tree/JCTree$JCExpression;
16 18 8 it Lcom/sun/tools/javac/code/Type;
25 26 6 tp Lcom/sun/tools/javac/tree/JCTree$JCTypeParameter;
Signature: (Lcom/sun/tools/javac/comp/Env<Lcom/sun/tools/javac/comp/AttrContext;>;)V
MethodParameters:
Name Flags
env
}
SourceFile: "TypeEnter.java"
NestHost: com.sun.tools.javac.comp.TypeEnter
InnerClasses:
public final Kind = com.sun.tools.javac.code.Kinds$Kind of com.sun.tools.javac.code.Kinds
public final KindName = com.sun.tools.javac.code.Kinds$KindName of com.sun.tools.javac.code.Kinds
public ClassSymbol = com.sun.tools.javac.code.Symbol$ClassSymbol of com.sun.tools.javac.code.Symbol
public ModuleSymbol = com.sun.tools.javac.code.Symbol$ModuleSymbol of com.sun.tools.javac.code.Symbol
public ClassType = com.sun.tools.javac.code.Type$ClassType of com.sun.tools.javac.code.Type
private abstract AbstractHeaderPhase = com.sun.tools.javac.comp.TypeEnter$AbstractHeaderPhase of com.sun.tools.javac.comp.TypeEnter
private final HeaderPhase = com.sun.tools.javac.comp.TypeEnter$HeaderPhase of com.sun.tools.javac.comp.TypeEnter
abstract Phase = com.sun.tools.javac.comp.TypeEnter$Phase of com.sun.tools.javac.comp.TypeEnter
private final RecordPhase = com.sun.tools.javac.comp.TypeEnter$RecordPhase of com.sun.tools.javac.comp.TypeEnter
public Errors = com.sun.tools.javac.resources.CompilerProperties$Errors of com.sun.tools.javac.resources.CompilerProperties
public JCAnnotation = com.sun.tools.javac.tree.JCTree$JCAnnotation of com.sun.tools.javac.tree.JCTree
public JCClassDecl = com.sun.tools.javac.tree.JCTree$JCClassDecl of com.sun.tools.javac.tree.JCTree
public JCCompilationUnit = com.sun.tools.javac.tree.JCTree$JCCompilationUnit 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 JCModifiers = com.sun.tools.javac.tree.JCTree$JCModifiers of com.sun.tools.javac.tree.JCTree
public JCTypeParameter = com.sun.tools.javac.tree.JCTree$JCTypeParameter of com.sun.tools.javac.tree.JCTree
public final CompletionCause = com.sun.tools.javac.util.Dependencies$CompletionCause of com.sun.tools.javac.util.Dependencies
public abstract DiagnosticPosition = com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition of com.sun.tools.javac.util.JCDiagnostic
public final Error = com.sun.tools.javac.util.JCDiagnostic$Error of com.sun.tools.javac.util.JCDiagnostic
public final Kind = javax.tools.JavaFileObject$Kind of javax.tools.JavaFileObject