public class jdk.javadoc.internal.tool.JavadocTool extends com.sun.tools.javac.main.JavaCompiler
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: jdk.javadoc.internal.tool.JavadocTool
super_class: com.sun.tools.javac.main.JavaCompiler
{
jdk.javadoc.internal.tool.ToolEnvironment toolEnv;
descriptor: Ljdk/javadoc/internal/tool/ToolEnvironment;
flags: (0x0000)
final jdk.javadoc.internal.tool.Messager messager;
descriptor: Ljdk/javadoc/internal/tool/Messager;
flags: (0x0010) ACC_FINAL
final com.sun.tools.javac.code.ClassFinder javadocFinder;
descriptor: Lcom/sun/tools/javac/code/ClassFinder;
flags: (0x0010) ACC_FINAL
final com.sun.tools.javac.code.DeferredCompletionFailureHandler dcfh;
descriptor: Lcom/sun/tools/javac/code/DeferredCompletionFailureHandler;
flags: (0x0010) ACC_FINAL
final com.sun.tools.javac.comp.Enter javadocEnter;
descriptor: Lcom/sun/tools/javac/comp/Enter;
flags: (0x0010) ACC_FINAL
final java.util.Set<javax.tools.JavaFileObject> uniquefiles;
descriptor: Ljava/util/Set;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/Set<Ljavax/tools/JavaFileObject;>;
static final boolean surrogatesSupported;
descriptor: Z
flags: (0x0018) ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: invokestatic jdk.javadoc.internal.tool.JavadocTool.surrogatesSupported:()Z
putstatic jdk.javadoc.internal.tool.JavadocTool.surrogatesSupported:Z
return
LocalVariableTable:
Start End Slot Name Signature
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
aload 1
invokespecial com.sun.tools.javac.main.JavaCompiler.<init>:(Lcom/sun/tools/javac/util/Context;)V
1: aload 0
aload 1
invokestatic jdk.javadoc.internal.tool.Messager.instance0:(Lcom/sun/tools/javac/util/Context;)Ljdk/javadoc/internal/tool/Messager;
putfield jdk.javadoc.internal.tool.JavadocTool.messager:Ljdk/javadoc/internal/tool/Messager;
2: aload 0
aload 1
invokestatic jdk.javadoc.internal.tool.JavadocClassFinder.instance:(Lcom/sun/tools/javac/util/Context;)Ljdk/javadoc/internal/tool/JavadocClassFinder;
putfield jdk.javadoc.internal.tool.JavadocTool.javadocFinder:Lcom/sun/tools/javac/code/ClassFinder;
3: aload 0
aload 1
invokestatic com.sun.tools.javac.code.DeferredCompletionFailureHandler.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/code/DeferredCompletionFailureHandler;
putfield jdk.javadoc.internal.tool.JavadocTool.dcfh:Lcom/sun/tools/javac/code/DeferredCompletionFailureHandler;
4: aload 0
aload 1
invokestatic jdk.javadoc.internal.tool.JavadocEnter.instance:(Lcom/sun/tools/javac/util/Context;)Ljdk/javadoc/internal/tool/JavadocEnter;
putfield jdk.javadoc.internal.tool.JavadocTool.javadocEnter:Lcom/sun/tools/javac/comp/Enter;
5: aload 0
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putfield jdk.javadoc.internal.tool.JavadocTool.uniquefiles:Ljava/util/Set;
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljdk/javadoc/internal/tool/JavadocTool;
0 7 1 context Lcom/sun/tools/javac/util/Context;
MethodParameters:
Name Flags
context
protected boolean ();
descriptor: ()Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/javadoc/internal/tool/JavadocTool;
public static jdk.javadoc.internal.tool.JavadocTool make0(com.sun.tools.javac.util.Context);
descriptor: (Lcom/sun/tools/javac/util/Context;)Ljdk/javadoc/internal/tool/JavadocTool;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aconst_null
astore 1
start local 1 1: aload 0
invokestatic jdk.javadoc.internal.tool.JavadocClassFinder.preRegister:(Lcom/sun/tools/javac/util/Context;)V
2: aload 0
invokestatic jdk.javadoc.internal.tool.JavadocEnter.preRegister:(Lcom/sun/tools/javac/util/Context;)V
3: aload 0
invokestatic jdk.javadoc.internal.tool.JavadocMemberEnter.preRegister:(Lcom/sun/tools/javac/util/Context;)V
4: aload 0
invokestatic jdk.javadoc.internal.tool.JavadocTodo.preRegister:(Lcom/sun/tools/javac/util/Context;)V
5: aload 0
invokestatic jdk.javadoc.internal.tool.Messager.instance0:(Lcom/sun/tools/javac/util/Context;)Ljdk/javadoc/internal/tool/Messager;
astore 1
6: new jdk.javadoc.internal.tool.JavadocTool
dup
aload 0
invokespecial jdk.javadoc.internal.tool.JavadocTool.<init>:(Lcom/sun/tools/javac/util/Context;)V
7: areturn
8: StackMap locals: com.sun.tools.javac.util.Context jdk.javadoc.internal.tool.Messager
StackMap stack: com.sun.tools.javac.code.Symbol$CompletionFailure
astore 2
start local 2 9: aload 1
iconst_m1
aload 2
invokevirtual com.sun.tools.javac.code.Symbol$CompletionFailure.getMessage:()Ljava/lang/String;
iconst_0
anewarray java.lang.Object
invokevirtual jdk.javadoc.internal.tool.Messager.error:(ILjava/lang/String;[Ljava/lang/Object;)V
10: aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 context Lcom/sun/tools/javac/util/Context;
1 11 1 messager Ljdk/javadoc/internal/tool/Messager;
9 11 2 ex Lcom/sun/tools/javac/code/Symbol$CompletionFailure;
Exception table:
from to target type
1 7 8 Class com.sun.tools.javac.code.Symbol$CompletionFailure
MethodParameters:
Name Flags
context
public jdk.javadoc.doclet.DocletEnvironment getEnvironment(java.util.Map<jdk.javadoc.internal.tool.ToolOption, java.lang.Object>, java.util.List<java.lang.String>, java.lang.Iterable<? extends javax.tools.JavaFileObject>);
descriptor: (Ljava/util/Map;Ljava/util/List;Ljava/lang/Iterable;)Ljdk/javadoc/doclet/DocletEnvironment;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=12, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.context:Lcom/sun/tools/javac/util/Context;
invokestatic jdk.javadoc.internal.tool.ToolEnvironment.instance:(Lcom/sun/tools/javac/util/Context;)Ljdk/javadoc/internal/tool/ToolEnvironment;
putfield jdk.javadoc.internal.tool.JavadocTool.toolEnv:Ljdk/javadoc/internal/tool/ToolEnvironment;
1: aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.toolEnv:Ljdk/javadoc/internal/tool/ToolEnvironment;
aload 1
invokevirtual jdk.javadoc.internal.tool.ToolEnvironment.initialize:(Ljava/util/Map;)V
2: new jdk.javadoc.internal.tool.ElementsTable
dup
aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.context:Lcom/sun/tools/javac/util/Context;
aload 1
invokespecial jdk.javadoc.internal.tool.ElementsTable.<init>:(Lcom/sun/tools/javac/util/Context;Ljava/util/Map;)V
astore 4
start local 4 3: aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.javadocFinder:Lcom/sun/tools/javac/code/ClassFinder;
aload 4
getfield jdk.javadoc.internal.tool.ElementsTable.xclasses:Z
ifeq 5
4: getstatic com.sun.tools.javac.code.Symbol$Completer.NULL_COMPLETER:Lcom/sun/tools/javac/code/Symbol$Completer;
goto 6
5: StackMap locals: jdk.javadoc.internal.tool.JavadocTool java.util.Map java.util.List java.lang.Iterable jdk.javadoc.internal.tool.ElementsTable
StackMap stack: com.sun.tools.javac.code.ClassFinder
aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.sourceCompleter:Lcom/sun/tools/javac/code/Symbol$Completer;
6: StackMap locals: jdk.javadoc.internal.tool.JavadocTool java.util.Map java.util.List java.lang.Iterable jdk.javadoc.internal.tool.ElementsTable
StackMap stack: com.sun.tools.javac.code.ClassFinder com.sun.tools.javac.code.Symbol$Completer
putfield com.sun.tools.javac.code.ClassFinder.sourceCompleter:Lcom/sun/tools/javac/code/Symbol$Completer;
7: aload 4
getfield jdk.javadoc.internal.tool.ElementsTable.xclasses:Z
ifeq 19
8: aload 2
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 13
StackMap locals: jdk.javadoc.internal.tool.JavadocTool java.util.Map java.util.List java.lang.Iterable jdk.javadoc.internal.tool.ElementsTable top java.util.Iterator
StackMap stack:
9: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 5
start local 5 10: aload 0
aload 5
invokevirtual jdk.javadoc.internal.tool.JavadocTool.isValidPackageName:(Ljava/lang/String;)Z
ifne 13
11: aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.messager:Ljdk/javadoc/internal/tool/Messager;
ldc "main.illegal_class_name"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 5
aastore
invokevirtual jdk.javadoc.internal.tool.Messager.getText:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
astore 7
start local 7 12: new jdk.javadoc.internal.tool.ToolException
dup
getstatic jdk.javadoc.internal.tool.Main$Result.CMDERR:Ljdk/javadoc/internal/tool/Main$Result;
aload 7
invokespecial jdk.javadoc.internal.tool.ToolException.<init>:(Ljdk/javadoc/internal/tool/Main$Result;Ljava/lang/String;)V
athrow
end local 7 end local 5 13: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
14: aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.messager:Ljdk/javadoc/internal/tool/Messager;
invokevirtual jdk.javadoc.internal.tool.Messager.hasErrors:()Z
ifeq 16
15: aconst_null
areturn
16: StackMap locals: jdk.javadoc.internal.tool.JavadocTool java.util.Map java.util.List java.lang.Iterable jdk.javadoc.internal.tool.ElementsTable
StackMap stack:
aload 4
aload 2
invokevirtual jdk.javadoc.internal.tool.ElementsTable.setClassArgList:(Ljava/util/List;)Ljdk/javadoc/internal/tool/ElementsTable;
pop
17: aload 4
invokevirtual jdk.javadoc.internal.tool.ElementsTable.analyze:()V
18: new jdk.javadoc.internal.tool.DocEnvImpl
dup
aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.toolEnv:Ljdk/javadoc/internal/tool/ToolEnvironment;
aload 4
invokespecial jdk.javadoc.internal.tool.DocEnvImpl.<init>:(Ljdk/javadoc/internal/tool/ToolEnvironment;Ljdk/javadoc/internal/tool/ElementsTable;)V
areturn
19: StackMap locals:
StackMap stack:
new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 5
start local 5 20: aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.toolEnv:Ljdk/javadoc/internal/tool/ToolEnvironment;
getfield jdk.javadoc.internal.tool.ToolEnvironment.fileManager:Ljavax/tools/JavaFileManager;
instanceof javax.tools.StandardJavaFileManager
ifeq 22
21: aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.toolEnv:Ljdk/javadoc/internal/tool/ToolEnvironment;
getfield jdk.javadoc.internal.tool.ToolEnvironment.fileManager:Ljavax/tools/JavaFileManager;
checkcast javax.tools.StandardJavaFileManager
goto 23
22: StackMap locals: com.sun.tools.javac.util.ListBuffer
StackMap stack:
aconst_null
23: StackMap locals:
StackMap stack: javax.tools.StandardJavaFileManager
astore 6
start local 6 24: new java.util.LinkedHashSet
dup
invokespecial java.util.LinkedHashSet.<init>:()V
astore 7
start local 7 25: aload 2
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 9
goto 41
StackMap locals: jdk.javadoc.internal.tool.JavadocTool java.util.Map java.util.List java.lang.Iterable jdk.javadoc.internal.tool.ElementsTable com.sun.tools.javac.util.ListBuffer javax.tools.StandardJavaFileManager java.util.Set top java.util.Iterator
StackMap stack:
26: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 8
start local 8 27: aload 6
ifnull 30
aload 8
ldc ".java"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 30
aload 0
aload 8
invokevirtual jdk.javadoc.internal.tool.JavadocTool.isRegularFile:(Ljava/lang/String;)Z
ifeq 30
28: aload 0
aload 6
iconst_1
anewarray java.lang.String
dup
iconst_0
aload 8
aastore
invokeinterface javax.tools.StandardJavaFileManager.getJavaFileObjects:([Ljava/lang/String;)Ljava/lang/Iterable;
aload 5
iconst_1
invokevirtual jdk.javadoc.internal.tool.JavadocTool.parse:(Ljava/lang/Iterable;Lcom/sun/tools/javac/util/ListBuffer;Z)V
29: goto 41
StackMap locals: jdk.javadoc.internal.tool.JavadocTool java.util.Map java.util.List java.lang.Iterable jdk.javadoc.internal.tool.ElementsTable com.sun.tools.javac.util.ListBuffer javax.tools.StandardJavaFileManager java.util.Set java.lang.String java.util.Iterator
StackMap stack:
30: aload 0
aload 8
invokevirtual jdk.javadoc.internal.tool.JavadocTool.isValidPackageName:(Ljava/lang/String;)Z
ifeq 33
31: aload 7
aload 8
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
32: goto 41
StackMap locals:
StackMap stack:
33: aload 8
ldc ".java"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifeq 39
34: aload 6
ifnonnull 37
35: aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.messager:Ljdk/javadoc/internal/tool/Messager;
ldc "main.assertion.error"
iconst_1
anewarray java.lang.Object
dup
iconst_0
ldc "fm == null"
aastore
invokevirtual jdk.javadoc.internal.tool.Messager.getText:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
astore 10
start local 10 36: new jdk.javadoc.internal.tool.ToolException
dup
getstatic jdk.javadoc.internal.tool.Main$Result.ABNORMAL:Ljdk/javadoc/internal/tool/Main$Result;
aload 10
invokespecial jdk.javadoc.internal.tool.ToolException.<init>:(Ljdk/javadoc/internal/tool/Main$Result;Ljava/lang/String;)V
athrow
end local 10 37: StackMap locals:
StackMap stack:
aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.messager:Ljdk/javadoc/internal/tool/Messager;
ldc "main.file_not_found"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 8
aastore
invokevirtual jdk.javadoc.internal.tool.Messager.getText:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
astore 10
start local 10 38: new jdk.javadoc.internal.tool.ToolException
dup
getstatic jdk.javadoc.internal.tool.Main$Result.ERROR:Ljdk/javadoc/internal/tool/Main$Result;
aload 10
invokespecial jdk.javadoc.internal.tool.ToolException.<init>:(Ljdk/javadoc/internal/tool/Main$Result;Ljava/lang/String;)V
athrow
end local 10 39: StackMap locals:
StackMap stack:
aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.messager:Ljdk/javadoc/internal/tool/Messager;
ldc "main.illegal_package_name"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 8
aastore
invokevirtual jdk.javadoc.internal.tool.Messager.getText:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
astore 10
start local 10 40: new jdk.javadoc.internal.tool.ToolException
dup
getstatic jdk.javadoc.internal.tool.Main$Result.CMDERR:Ljdk/javadoc/internal/tool/Main$Result;
aload 10
invokespecial jdk.javadoc.internal.tool.ToolException.<init>:(Ljdk/javadoc/internal/tool/Main$Result;Ljava/lang/String;)V
athrow
end local 10 end local 8 41: StackMap locals: jdk.javadoc.internal.tool.JavadocTool java.util.Map java.util.List java.lang.Iterable jdk.javadoc.internal.tool.ElementsTable com.sun.tools.javac.util.ListBuffer javax.tools.StandardJavaFileManager java.util.Set top java.util.Iterator
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 26
42: aload 0
aload 3
aload 5
iconst_1
invokevirtual jdk.javadoc.internal.tool.JavadocTool.parse:(Ljava/lang/Iterable;Lcom/sun/tools/javac/util/ListBuffer;Z)V
43: aload 4
aload 7
invokevirtual jdk.javadoc.internal.tool.ElementsTable.packages:(Ljava/util/Collection;)Ljdk/javadoc/internal/tool/ElementsTable;
44: aload 5
invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
invokevirtual jdk.javadoc.internal.tool.ElementsTable.classTrees:(Lcom/sun/tools/javac/util/List;)Ljdk/javadoc/internal/tool/ElementsTable;
45: invokevirtual jdk.javadoc.internal.tool.ElementsTable.scanSpecifiedItems:()Ljdk/javadoc/internal/tool/ElementsTable;
pop
46: aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.messager:Ljdk/javadoc/internal/tool/Messager;
invokevirtual jdk.javadoc.internal.tool.Messager.hasErrors:()Z
ifeq 48
47: aconst_null
areturn
48: StackMap locals: jdk.javadoc.internal.tool.JavadocTool java.util.Map java.util.List java.lang.Iterable jdk.javadoc.internal.tool.ElementsTable com.sun.tools.javac.util.ListBuffer javax.tools.StandardJavaFileManager java.util.Set
StackMap stack:
new com.sun.tools.javac.util.ListBuffer
dup
invokespecial com.sun.tools.javac.util.ListBuffer.<init>:()V
astore 8
start local 8 49: aload 8
aload 5
invokevirtual com.sun.tools.javac.util.ListBuffer.addAll:(Ljava/util/Collection;)Z
pop
50: aload 0
aload 4
invokevirtual jdk.javadoc.internal.tool.ElementsTable.getFilesToParse:()Ljava/util/List;
aload 8
iconst_0
invokevirtual jdk.javadoc.internal.tool.JavadocTool.parse:(Ljava/lang/Iterable;Lcom/sun/tools/javac/util/ListBuffer;Z)V
51: aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.modules:Lcom/sun/tools/javac/comp/Modules;
invokevirtual com.sun.tools.javac.comp.Modules.newRound:()V
52: aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.modules:Lcom/sun/tools/javac/comp/Modules;
aload 8
invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.comp.Modules.initModules:(Lcom/sun/tools/javac/util/List;)V
53: aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.messager:Ljdk/javadoc/internal/tool/Messager;
invokevirtual jdk.javadoc.internal.tool.Messager.hasErrors:()Z
ifeq 55
54: aconst_null
areturn
55: StackMap locals: com.sun.tools.javac.util.ListBuffer
StackMap stack:
aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.toolEnv:Ljdk/javadoc/internal/tool/ToolEnvironment;
ldc "main.Building_tree"
invokevirtual jdk.javadoc.internal.tool.ToolEnvironment.notice:(Ljava/lang/String;)V
56: aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.javadocEnter:Lcom/sun/tools/javac/comp/Enter;
aload 8
invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.comp.Enter.main:(Lcom/sun/tools/javac/util/List;)V
57: aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.messager:Ljdk/javadoc/internal/tool/Messager;
invokevirtual jdk.javadoc.internal.tool.Messager.hasErrors:()Z
ifeq 59
58: aconst_null
areturn
59: StackMap locals:
StackMap stack:
aload 4
aload 0
aload 5
invokevirtual com.sun.tools.javac.util.ListBuffer.toList:()Lcom/sun/tools/javac/util/List;
invokevirtual jdk.javadoc.internal.tool.JavadocTool.listClasses:(Ljava/util/List;)Ljava/util/List;
invokevirtual jdk.javadoc.internal.tool.ElementsTable.setClassDeclList:(Ljava/util/List;)Ljdk/javadoc/internal/tool/ElementsTable;
pop
60: aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.dcfh:Lcom/sun/tools/javac/code/DeferredCompletionFailureHandler;
aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.dcfh:Lcom/sun/tools/javac/code/DeferredCompletionFailureHandler;
getfield com.sun.tools.javac.code.DeferredCompletionFailureHandler.userCodeHandler:Lcom/sun/tools/javac/code/DeferredCompletionFailureHandler$Handler;
invokevirtual com.sun.tools.javac.code.DeferredCompletionFailureHandler.setHandler:(Lcom/sun/tools/javac/code/DeferredCompletionFailureHandler$Handler;)Lcom/sun/tools/javac/code/DeferredCompletionFailureHandler$Handler;
pop
61: aload 4
invokevirtual jdk.javadoc.internal.tool.ElementsTable.analyze:()V
62: aload 4
invokevirtual jdk.javadoc.internal.tool.ElementsTable.getIncludedElements:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 10
goto 68
StackMap locals: jdk.javadoc.internal.tool.JavadocTool java.util.Map java.util.List java.lang.Iterable jdk.javadoc.internal.tool.ElementsTable com.sun.tools.javac.util.ListBuffer javax.tools.StandardJavaFileManager java.util.Set com.sun.tools.javac.util.ListBuffer top java.util.Iterator
StackMap stack:
63: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast javax.lang.model.element.Element
astore 9
start local 9 64: aload 9
invokeinterface javax.lang.model.element.Element.getKind:()Ljavax/lang/model/element/ElementKind;
getstatic javax.lang.model.element.ElementKind.PACKAGE:Ljavax/lang/model/element/ElementKind;
if_acmpne 68
65: aload 9
checkcast com.sun.tools.javac.code.Symbol$PackageSymbol
astore 11
start local 11 66: aload 11
getfield com.sun.tools.javac.code.Symbol$PackageSymbol.package_info:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
ifnull 68
67: aload 11
getfield com.sun.tools.javac.code.Symbol$PackageSymbol.package_info:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
invokevirtual com.sun.tools.javac.code.Symbol$ClassSymbol.complete:()V
end local 11 end local 9 68: StackMap locals:
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 63
end local 8 end local 7 end local 6 69: goto 80
StackMap locals: jdk.javadoc.internal.tool.JavadocTool java.util.Map java.util.List java.lang.Iterable jdk.javadoc.internal.tool.ElementsTable com.sun.tools.javac.util.ListBuffer
StackMap stack: com.sun.tools.javac.code.Symbol$CompletionFailure
70: astore 6
start local 6 71: new jdk.javadoc.internal.tool.ToolException
dup
getstatic jdk.javadoc.internal.tool.Main$Result.ABNORMAL:Ljdk/javadoc/internal/tool/Main$Result;
aload 6
invokevirtual com.sun.tools.javac.code.Symbol$CompletionFailure.getMessage:()Ljava/lang/String;
aload 6
invokespecial jdk.javadoc.internal.tool.ToolException.<init>:(Ljdk/javadoc/internal/tool/Main$Result;Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 6 72: StackMap locals:
StackMap stack: com.sun.tools.javac.util.Abort
astore 6
start local 6 73: aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.messager:Ljdk/javadoc/internal/tool/Messager;
invokevirtual jdk.javadoc.internal.tool.Messager.hasErrors:()Z
ifeq 75
74: new jdk.javadoc.internal.tool.ToolException
dup
getstatic jdk.javadoc.internal.tool.Main$Result.ABNORMAL:Ljdk/javadoc/internal/tool/Main$Result;
ldc ""
aload 6
invokespecial jdk.javadoc.internal.tool.ToolException.<init>:(Ljdk/javadoc/internal/tool/Main$Result;Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
75: StackMap locals: com.sun.tools.javac.util.Abort
StackMap stack:
aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.messager:Ljdk/javadoc/internal/tool/Messager;
ldc "main.internal.error"
iconst_0
anewarray java.lang.Object
invokevirtual jdk.javadoc.internal.tool.Messager.getText:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
astore 7
start local 7 76: aload 6
invokevirtual com.sun.tools.javac.util.Abort.getCause:()Ljava/lang/Throwable;
ifnonnull 77
aload 6
goto 78
StackMap locals: java.lang.String
StackMap stack:
77: aload 6
invokevirtual com.sun.tools.javac.util.Abort.getCause:()Ljava/lang/Throwable;
StackMap locals:
StackMap stack: java.lang.Throwable
78: astore 8
start local 8 79: new jdk.javadoc.internal.tool.ToolException
dup
getstatic jdk.javadoc.internal.tool.Main$Result.ABNORMAL:Ljdk/javadoc/internal/tool/Main$Result;
aload 7
aload 8
invokespecial jdk.javadoc.internal.tool.ToolException.<init>:(Ljdk/javadoc/internal/tool/Main$Result;Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 8 end local 7 end local 6 80: StackMap locals:
StackMap stack:
aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.messager:Ljdk/javadoc/internal/tool/Messager;
invokevirtual jdk.javadoc.internal.tool.Messager.hasErrors:()Z
ifeq 82
81: aconst_null
areturn
82: StackMap locals:
StackMap stack:
aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.toolEnv:Ljdk/javadoc/internal/tool/ToolEnvironment;
new jdk.javadoc.internal.tool.DocEnvImpl
dup
aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.toolEnv:Ljdk/javadoc/internal/tool/ToolEnvironment;
aload 4
invokespecial jdk.javadoc.internal.tool.DocEnvImpl.<init>:(Ljdk/javadoc/internal/tool/ToolEnvironment;Ljdk/javadoc/internal/tool/ElementsTable;)V
putfield jdk.javadoc.internal.tool.ToolEnvironment.docEnv:Ljdk/javadoc/internal/tool/DocEnvImpl;
83: aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.toolEnv:Ljdk/javadoc/internal/tool/ToolEnvironment;
getfield jdk.javadoc.internal.tool.ToolEnvironment.docEnv:Ljdk/javadoc/internal/tool/DocEnvImpl;
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 84 0 this Ljdk/javadoc/internal/tool/JavadocTool;
0 84 1 jdtoolOpts Ljava/util/Map<Ljdk/javadoc/internal/tool/ToolOption;Ljava/lang/Object;>;
0 84 2 javaNames Ljava/util/List<Ljava/lang/String;>;
0 84 3 fileObjects Ljava/lang/Iterable<+Ljavax/tools/JavaFileObject;>;
3 84 4 etable Ljdk/javadoc/internal/tool/ElementsTable;
10 13 5 arg Ljava/lang/String;
12 13 7 text Ljava/lang/String;
20 84 5 classTrees Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;>;
24 69 6 fm Ljavax/tools/StandardJavaFileManager;
25 69 7 packageNames Ljava/util/Set<Ljava/lang/String;>;
27 41 8 arg Ljava/lang/String;
36 37 10 text Ljava/lang/String;
38 39 10 text Ljava/lang/String;
40 41 10 text Ljava/lang/String;
49 69 8 allTrees Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;>;
64 68 9 e Ljavax/lang/model/element/Element;
66 68 11 packge Lcom/sun/tools/javac/code/Symbol$PackageSymbol;
71 72 6 cf Lcom/sun/tools/javac/code/Symbol$CompletionFailure;
73 80 6 abort Lcom/sun/tools/javac/util/Abort;
76 80 7 text Ljava/lang/String;
79 80 8 t Ljava/lang/Throwable;
Exception table:
from to target type
20 47 70 Class com.sun.tools.javac.code.Symbol$CompletionFailure
48 54 70 Class com.sun.tools.javac.code.Symbol$CompletionFailure
55 58 70 Class com.sun.tools.javac.code.Symbol$CompletionFailure
59 69 70 Class com.sun.tools.javac.code.Symbol$CompletionFailure
20 47 72 Class com.sun.tools.javac.util.Abort
48 54 72 Class com.sun.tools.javac.util.Abort
55 58 72 Class com.sun.tools.javac.util.Abort
59 69 72 Class com.sun.tools.javac.util.Abort
Exceptions:
throws jdk.javadoc.internal.tool.ToolException
Signature: (Ljava/util/Map<Ljdk/javadoc/internal/tool/ToolOption;Ljava/lang/Object;>;Ljava/util/List<Ljava/lang/String;>;Ljava/lang/Iterable<+Ljavax/tools/JavaFileObject;>;)Ljdk/javadoc/doclet/DocletEnvironment;
MethodParameters:
Name Flags
jdtoolOpts
javaNames
fileObjects
private boolean isRegularFile(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
iconst_0
anewarray java.lang.String
invokestatic java.nio.file.Paths.get:(Ljava/lang/String;[Ljava/lang/String;)Ljava/nio/file/Path;
iconst_0
anewarray java.nio.file.LinkOption
invokestatic java.nio.file.Files.isRegularFile:(Ljava/nio/file/Path;[Ljava/nio/file/LinkOption;)Z
1: ireturn
2: StackMap locals:
StackMap stack: java.nio.file.InvalidPathException
pop
3: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljdk/javadoc/internal/tool/JavadocTool;
0 4 1 s Ljava/lang/String;
Exception table:
from to target type
0 1 2 Class java.nio.file.InvalidPathException
MethodParameters:
Name Flags
s
boolean isValidPackageName(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0000)
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ldc "/"
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 6
1: aload 1
ldc "/"
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
astore 2
start local 2 2: aload 2
arraylength
iconst_2
if_icmpne 5
3: aload 0
aload 2
iconst_0
aaload
invokevirtual jdk.javadoc.internal.tool.JavadocTool.isValidPackageName0:(Ljava/lang/String;)Z
ifeq 4
aload 0
aload 2
iconst_1
aaload
invokevirtual jdk.javadoc.internal.tool.JavadocTool.isValidPackageName0:(Ljava/lang/String;)Z
ifeq 4
iconst_1
ireturn
StackMap locals: java.lang.String[]
StackMap stack:
4: iconst_0
ireturn
5: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 2 6: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual jdk.javadoc.internal.tool.JavadocTool.isValidPackageName0:(Ljava/lang/String;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljdk/javadoc/internal/tool/JavadocTool;
0 7 1 s Ljava/lang/String;
2 6 2 a [Ljava/lang/String;
MethodParameters:
Name Flags
s
private boolean isValidPackageName0(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
bipush 46
invokevirtual java.lang.String.indexOf:(I)I
istore 2
start local 2 1: goto 6
2: StackMap locals: int
StackMap stack:
aload 1
iconst_0
iload 2
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokestatic jdk.javadoc.internal.tool.JavadocTool.isValidClassName:(Ljava/lang/String;)Z
ifne 4
3: iconst_0
ireturn
4: StackMap locals:
StackMap stack:
aload 1
iload 2
iconst_1
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 1
5: aload 1
bipush 46
invokevirtual java.lang.String.indexOf:(I)I
istore 2
StackMap locals:
StackMap stack:
6: iload 2
iconst_m1
if_icmpne 2
end local 2 7: aload 1
invokestatic jdk.javadoc.internal.tool.JavadocTool.isValidClassName:(Ljava/lang/String;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljdk/javadoc/internal/tool/JavadocTool;
0 8 1 s Ljava/lang/String;
1 7 2 index I
MethodParameters:
Name Flags
s
private void parse(java.lang.Iterable<? extends javax.tools.JavaFileObject>, com.sun.tools.javac.util.ListBuffer<com.sun.tools.javac.tree.JCTree$JCCompilationUnit>, );
descriptor: (Ljava/lang/Iterable;Lcom/sun/tools/javac/util/ListBuffer;Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokeinterface java.lang.Iterable.iterator:()Ljava/util/Iterator;
astore 5
goto 6
StackMap locals: jdk.javadoc.internal.tool.JavadocTool java.lang.Iterable com.sun.tools.javac.util.ListBuffer int top java.util.Iterator
StackMap stack:
1: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast javax.tools.JavaFileObject
astore 4
start local 4 2: aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.uniquefiles:Ljava/util/Set;
aload 4
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
ifeq 6
3: iload 3
ifeq 5
4: aload 0
getfield jdk.javadoc.internal.tool.JavadocTool.toolEnv:Ljdk/javadoc/internal/tool/ToolEnvironment;
ldc "main.Loading_source_file"
aload 4
invokeinterface javax.tools.JavaFileObject.getName:()Ljava/lang/String;
invokevirtual jdk.javadoc.internal.tool.ToolEnvironment.notice:(Ljava/lang/String;Ljava/lang/String;)V
5: StackMap locals: jdk.javadoc.internal.tool.JavadocTool java.lang.Iterable com.sun.tools.javac.util.ListBuffer int javax.tools.JavaFileObject java.util.Iterator
StackMap stack:
aload 2
aload 0
aload 4
invokevirtual jdk.javadoc.internal.tool.JavadocTool.parse:(Ljavax/tools/JavaFileObject;)Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;
invokevirtual com.sun.tools.javac.util.ListBuffer.append:(Ljava/lang/Object;)Lcom/sun/tools/javac/util/ListBuffer;
pop
end local 4 6: StackMap locals: jdk.javadoc.internal.tool.JavadocTool java.lang.Iterable com.sun.tools.javac.util.ListBuffer int top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
7: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljdk/javadoc/internal/tool/JavadocTool;
0 8 1 files Ljava/lang/Iterable<+Ljavax/tools/JavaFileObject;>;
0 8 2 trees Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;>;
0 8 3 trace Z
2 6 4 fo Ljavax/tools/JavaFileObject;
Signature: (Ljava/lang/Iterable<+Ljavax/tools/JavaFileObject;>;Lcom/sun/tools/javac/util/ListBuffer<Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;>;Z)V
MethodParameters:
Name Flags
files
trees
trace
private static boolean surrogatesSupported();
descriptor: ()Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: bipush 97
invokestatic java.lang.Character.isHighSurrogate:(C)Z
pop
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack: java.lang.NoSuchMethodError
pop
3: iconst_0
ireturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
0 1 2 Class java.lang.NoSuchMethodError
public static boolean isValidClassName(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.String.length:()I
iconst_1
if_icmpge 1
iconst_0
ireturn
1: StackMap locals:
StackMap stack:
aload 0
ldc "package-info"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 2
iconst_1
ireturn
2: StackMap locals:
StackMap stack:
getstatic jdk.javadoc.internal.tool.JavadocTool.surrogatesSupported:Z
ifeq 14
3: aload 0
iconst_0
invokevirtual java.lang.String.codePointAt:(I)I
istore 1
start local 1 4: iload 1
invokestatic java.lang.Character.isJavaIdentifierStart:(I)Z
ifne 6
5: iconst_0
ireturn
6: StackMap locals: int
StackMap stack:
iload 1
invokestatic java.lang.Character.charCount:(I)I
istore 2
start local 2 7: goto 12
8: StackMap locals: int
StackMap stack:
aload 0
iload 2
invokevirtual java.lang.String.codePointAt:(I)I
istore 1
9: iload 1
invokestatic java.lang.Character.isJavaIdentifierPart:(I)Z
ifne 11
10: iconst_0
ireturn
11: StackMap locals:
StackMap stack:
iload 2
iload 1
invokestatic java.lang.Character.charCount:(I)I
iadd
istore 2
StackMap locals:
StackMap stack:
12: iload 2
aload 0
invokevirtual java.lang.String.length:()I
if_icmplt 8
end local 2 end local 1 13: goto 22
14: StackMap locals:
StackMap stack:
aload 0
iconst_0
invokevirtual java.lang.String.charAt:(I)C
invokestatic java.lang.Character.isJavaIdentifierStart:(C)Z
ifne 16
15: iconst_0
ireturn
16: StackMap locals:
StackMap stack:
iconst_1
istore 1
start local 1 17: goto 21
18: StackMap locals: int
StackMap stack:
aload 0
iload 1
invokevirtual java.lang.String.charAt:(I)C
invokestatic java.lang.Character.isJavaIdentifierPart:(C)Z
ifne 20
19: iconst_0
ireturn
20: StackMap locals:
StackMap stack:
iinc 1 1
StackMap locals:
StackMap stack:
21: iload 1
aload 0
invokevirtual java.lang.String.length:()I
if_icmplt 18
end local 1 22: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 s Ljava/lang/String;
4 13 1 cp I
7 13 2 j I
17 22 1 j I
MethodParameters:
Name Flags
s
java.util.List<com.sun.tools.javac.tree.JCTree$JCClassDecl> listClasses(java.util.List<com.sun.tools.javac.tree.JCTree$JCCompilationUnit>);
descriptor: (Ljava/util/List;)Ljava/util/List;
flags: (0x0000)
Code:
stack=2, locals=7, args_size=2
start local 0 start local 1 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 2
start local 2 1: aload 1
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 8
StackMap locals: jdk.javadoc.internal.tool.JavadocTool java.util.List java.util.List top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.tree.JCTree$JCCompilationUnit
astore 3
start local 3 3: aload 3
getfield com.sun.tools.javac.tree.JCTree$JCCompilationUnit.defs:Lcom/sun/tools/javac/util/List;
invokevirtual com.sun.tools.javac.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 7
StackMap locals: jdk.javadoc.internal.tool.JavadocTool java.util.List java.util.List com.sun.tools.javac.tree.JCTree$JCCompilationUnit java.util.Iterator top java.util.Iterator
StackMap stack:
4: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.tools.javac.tree.JCTree
astore 5
start local 5 5: aload 5
getstatic com.sun.tools.javac.tree.JCTree$Tag.CLASSDEF:Lcom/sun/tools/javac/tree/JCTree$Tag;
invokevirtual com.sun.tools.javac.tree.JCTree.hasTag:(Lcom/sun/tools/javac/tree/JCTree$Tag;)Z
ifeq 7
6: aload 2
aload 5
checkcast com.sun.tools.javac.tree.JCTree$JCClassDecl
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 5 7: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
end local 3 8: StackMap locals: jdk.javadoc.internal.tool.JavadocTool java.util.List java.util.List top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
9: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljdk/javadoc/internal/tool/JavadocTool;
0 10 1 trees Ljava/util/List<Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;>;
1 10 2 result Ljava/util/List<Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;>;
3 8 3 t Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;
5 7 5 def Lcom/sun/tools/javac/tree/JCTree;
Signature: (Ljava/util/List<Lcom/sun/tools/javac/tree/JCTree$JCCompilationUnit;>;)Ljava/util/List<Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;>;
MethodParameters:
Name Flags
trees
}
SourceFile: "JavadocTool.java"
InnerClasses:
public abstract Handler = com.sun.tools.javac.code.DeferredCompletionFailureHandler$Handler of com.sun.tools.javac.code.DeferredCompletionFailureHandler
public ClassSymbol = com.sun.tools.javac.code.Symbol$ClassSymbol of com.sun.tools.javac.code.Symbol
public abstract Completer = com.sun.tools.javac.code.Symbol$Completer of com.sun.tools.javac.code.Symbol
public CompletionFailure = com.sun.tools.javac.code.Symbol$CompletionFailure of com.sun.tools.javac.code.Symbol
public PackageSymbol = com.sun.tools.javac.code.Symbol$PackageSymbol of com.sun.tools.javac.code.Symbol
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 final Tag = com.sun.tools.javac.tree.JCTree$Tag of com.sun.tools.javac.tree.JCTree
public final Result = jdk.javadoc.internal.tool.Main$Result of jdk.javadoc.internal.tool.Main