public class org.graalvm.compiler.options.processor.OptionProcessor extends org.graalvm.compiler.processor.AbstractProcessor
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.graalvm.compiler.options.processor.OptionProcessor
super_class: org.graalvm.compiler.processor.AbstractProcessor
{
private static final java.lang.String OPTION_CLASS_NAME;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "org.graalvm.compiler.options.Option"
private static final java.lang.String OPTION_KEY_CLASS_NAME;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "org.graalvm.compiler.options.OptionKey"
private static final java.lang.String OPTION_TYPE_CLASS_NAME;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "org.graalvm.compiler.options.OptionType"
private static final java.lang.String OPTION_DESCRIPTOR_CLASS_NAME;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "org.graalvm.compiler.options.OptionDescriptor"
private static final java.lang.String OPTION_DESCRIPTORS_CLASS_NAME;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "org.graalvm.compiler.options.OptionDescriptors"
private final java.util.Set<javax.lang.model.element.Element> processed;
descriptor: Ljava/util/Set;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Set<Ljavax/lang/model/element/Element;>;
private javax.lang.model.type.TypeMirror optionTypeMirror;
descriptor: Ljavax/lang/model/type/TypeMirror;
flags: (0x0002) ACC_PRIVATE
private javax.lang.model.type.TypeMirror optionKeyTypeMirror;
descriptor: Ljavax/lang/model/type/TypeMirror;
flags: (0x0002) ACC_PRIVATE
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/graalvm/compiler/options/processor/OptionProcessor;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic org.graalvm.compiler.options.processor.OptionProcessor.$assertionsDisabled:Z
3: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.graalvm.compiler.processor.AbstractProcessor.<init>:()V
1: aload 0
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putfield org.graalvm.compiler.options.processor.OptionProcessor.processed:Ljava/util/Set;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/graalvm/compiler/options/processor/OptionProcessor;
public javax.lang.model.SourceVersion getSupportedSourceVersion();
descriptor: ()Ljavax/lang/model/SourceVersion;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: invokestatic javax.lang.model.SourceVersion.latest:()Ljavax/lang/model/SourceVersion;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/compiler/options/processor/OptionProcessor;
private void processElement(javax.lang.model.element.Element, org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo);
descriptor: (Ljavax/lang/model/element/Element;Lorg/graalvm/compiler/options/processor/OptionProcessor$OptionsInfo;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=11, locals=27, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokeinterface javax.lang.model.element.Element.getModifiers:()Ljava/util/Set;
getstatic javax.lang.model.element.Modifier.STATIC:Ljavax/lang/model/element/Modifier;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 3
1: aload 0
getfield org.graalvm.compiler.options.processor.OptionProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getMessager:()Ljavax/annotation/processing/Messager;
getstatic javax.tools.Diagnostic$Kind.ERROR:Ljavax/tools/Diagnostic$Kind;
ldc "Option field must be static"
aload 1
invokeinterface javax.annotation.processing.Messager.printMessage:(Ljavax/tools/Diagnostic$Kind;Ljava/lang/CharSequence;Ljavax/lang/model/element/Element;)V
2: return
3: StackMap locals:
StackMap stack:
aload 1
invokeinterface javax.lang.model.element.Element.getModifiers:()Ljava/util/Set;
getstatic javax.lang.model.element.Modifier.PRIVATE:Ljavax/lang/model/element/Modifier;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 6
4: aload 0
getfield org.graalvm.compiler.options.processor.OptionProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getMessager:()Ljavax/annotation/processing/Messager;
getstatic javax.tools.Diagnostic$Kind.ERROR:Ljavax/tools/Diagnostic$Kind;
ldc "Option field cannot be private"
aload 1
invokeinterface javax.annotation.processing.Messager.printMessage:(Ljavax/tools/Diagnostic$Kind;Ljava/lang/CharSequence;Ljavax/lang/model/element/Element;)V
5: return
6: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 0
getfield org.graalvm.compiler.options.processor.OptionProcessor.optionTypeMirror:Ljavax/lang/model/type/TypeMirror;
invokevirtual org.graalvm.compiler.options.processor.OptionProcessor.getAnnotation:(Ljavax/lang/model/element/Element;Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/element/AnnotationMirror;
astore 3
start local 3 7: getstatic org.graalvm.compiler.options.processor.OptionProcessor.$assertionsDisabled:Z
ifne 8
aload 3
ifnonnull 8
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
8: StackMap locals: javax.lang.model.element.AnnotationMirror
StackMap stack:
getstatic org.graalvm.compiler.options.processor.OptionProcessor.$assertionsDisabled:Z
ifne 9
aload 1
instanceof javax.lang.model.element.VariableElement
ifne 9
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
9: StackMap locals:
StackMap stack:
getstatic org.graalvm.compiler.options.processor.OptionProcessor.$assertionsDisabled:Z
ifne 10
aload 1
invokeinterface javax.lang.model.element.Element.getKind:()Ljavax/lang/model/element/ElementKind;
getstatic javax.lang.model.element.ElementKind.FIELD:Ljavax/lang/model/element/ElementKind;
if_acmpeq 10
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
10: StackMap locals:
StackMap stack:
aload 1
checkcast javax.lang.model.element.VariableElement
astore 4
start local 4 11: aload 4
invokeinterface javax.lang.model.element.VariableElement.getSimpleName:()Ljavax/lang/model/element/Name;
invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
astore 5
start local 5 12: aload 0
getfield org.graalvm.compiler.options.processor.OptionProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getTypeUtils:()Ljavax/lang/model/util/Types;
astore 6
start local 6 13: aload 4
invokeinterface javax.lang.model.element.VariableElement.asType:()Ljavax/lang/model/type/TypeMirror;
astore 7
start local 7 14: aload 7
invokeinterface javax.lang.model.type.TypeMirror.getKind:()Ljavax/lang/model/type/TypeKind;
getstatic javax.lang.model.type.TypeKind.DECLARED:Ljavax/lang/model/type/TypeKind;
if_acmpeq 17
15: aload 0
getfield org.graalvm.compiler.options.processor.OptionProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getMessager:()Ljavax/annotation/processing/Messager;
getstatic javax.tools.Diagnostic$Kind.ERROR:Ljavax/tools/Diagnostic$Kind;
ldc "Option field must be of type org.graalvm.compiler.options.OptionKey"
aload 1
invokeinterface javax.annotation.processing.Messager.printMessage:(Ljavax/tools/Diagnostic$Kind;Ljava/lang/CharSequence;Ljavax/lang/model/element/Element;)V
16: return
17: StackMap locals: org.graalvm.compiler.options.processor.OptionProcessor javax.lang.model.element.Element org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo javax.lang.model.element.AnnotationMirror javax.lang.model.element.VariableElement java.lang.String javax.lang.model.util.Types javax.lang.model.type.TypeMirror
StackMap stack:
aload 7
checkcast javax.lang.model.type.DeclaredType
astore 8
start local 8 18: aload 6
aload 7
aload 6
aload 0
getfield org.graalvm.compiler.options.processor.OptionProcessor.optionKeyTypeMirror:Ljavax/lang/model/type/TypeMirror;
invokeinterface javax.lang.model.util.Types.erasure:(Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/type/TypeMirror;
invokeinterface javax.lang.model.util.Types.isSubtype:(Ljavax/lang/model/type/TypeMirror;Ljavax/lang/model/type/TypeMirror;)Z
ifne 22
19: ldc "Option field type %s is not a subclass of %s"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 7
aastore
dup
iconst_1
aload 0
getfield org.graalvm.compiler.options.processor.OptionProcessor.optionKeyTypeMirror:Ljavax/lang/model/type/TypeMirror;
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
astore 9
start local 9 20: aload 0
getfield org.graalvm.compiler.options.processor.OptionProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getMessager:()Ljavax/annotation/processing/Messager;
getstatic javax.tools.Diagnostic$Kind.ERROR:Ljavax/tools/Diagnostic$Kind;
aload 9
aload 1
invokeinterface javax.annotation.processing.Messager.printMessage:(Ljavax/tools/Diagnostic$Kind;Ljava/lang/CharSequence;Ljavax/lang/model/element/Element;)V
21: return
end local 9 22: StackMap locals: javax.lang.model.type.DeclaredType
StackMap stack:
aload 4
invokeinterface javax.lang.model.element.VariableElement.getModifiers:()Ljava/util/Set;
getstatic javax.lang.model.element.Modifier.STATIC:Ljavax/lang/model/element/Modifier;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 25
23: aload 0
getfield org.graalvm.compiler.options.processor.OptionProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getMessager:()Ljavax/annotation/processing/Messager;
getstatic javax.tools.Diagnostic$Kind.ERROR:Ljavax/tools/Diagnostic$Kind;
ldc "Option field must be static"
aload 1
invokeinterface javax.annotation.processing.Messager.printMessage:(Ljavax/tools/Diagnostic$Kind;Ljava/lang/CharSequence;Ljavax/lang/model/element/Element;)V
24: return
25: StackMap locals:
StackMap stack:
aload 4
invokeinterface javax.lang.model.element.VariableElement.getModifiers:()Ljava/util/Set;
getstatic javax.lang.model.element.Modifier.PRIVATE:Ljavax/lang/model/element/Modifier;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 28
26: aload 0
getfield org.graalvm.compiler.options.processor.OptionProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getMessager:()Ljavax/annotation/processing/Messager;
getstatic javax.tools.Diagnostic$Kind.ERROR:Ljavax/tools/Diagnostic$Kind;
ldc "Option field cannot be private"
aload 1
invokeinterface javax.annotation.processing.Messager.printMessage:(Ljavax/tools/Diagnostic$Kind;Ljava/lang/CharSequence;Ljavax/lang/model/element/Element;)V
27: return
28: StackMap locals:
StackMap stack:
aload 3
ldc "name"
ldc Ljava/lang/String;
invokestatic org.graalvm.compiler.options.processor.OptionProcessor.getAnnotationValue:(Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;
checkcast java.lang.String
astore 9
start local 9 29: aload 9
ldc ""
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 31
30: aload 5
astore 9
31: StackMap locals: java.lang.String
StackMap stack:
aload 9
iconst_0
invokevirtual java.lang.String.charAt:(I)C
invokestatic java.lang.Character.isUpperCase:(C)Z
ifne 34
32: aload 0
getfield org.graalvm.compiler.options.processor.OptionProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getMessager:()Ljavax/annotation/processing/Messager;
getstatic javax.tools.Diagnostic$Kind.ERROR:Ljavax/tools/Diagnostic$Kind;
ldc "Option name must start with an upper case letter"
aload 1
invokeinterface javax.annotation.processing.Messager.printMessage:(Ljavax/tools/Diagnostic$Kind;Ljava/lang/CharSequence;Ljavax/lang/model/element/Element;)V
33: return
34: StackMap locals:
StackMap stack:
aload 8
astore 10
start local 10 35: goto 39
36: StackMap locals: javax.lang.model.type.DeclaredType
StackMap stack:
aload 6
aload 8
invokeinterface javax.lang.model.util.Types.directSupertypes:(Ljavax/lang/model/type/TypeMirror;)Ljava/util/List;
astore 11
start local 11 37: getstatic org.graalvm.compiler.options.processor.OptionProcessor.$assertionsDisabled:Z
ifne 38
aload 11
invokeinterface java.util.List.isEmpty:()Z
ifeq 38
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
38: StackMap locals: java.util.List
StackMap stack:
aload 11
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast javax.lang.model.type.DeclaredType
astore 10
end local 11 39: StackMap locals:
StackMap stack:
aload 6
aload 6
aload 10
invokeinterface javax.lang.model.util.Types.erasure:(Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/type/TypeMirror;
aload 6
aload 0
getfield org.graalvm.compiler.options.processor.OptionProcessor.optionKeyTypeMirror:Ljavax/lang/model/type/TypeMirror;
invokeinterface javax.lang.model.util.Types.erasure:(Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/type/TypeMirror;
invokeinterface javax.lang.model.util.Types.isSameType:(Ljavax/lang/model/type/TypeMirror;Ljavax/lang/model/type/TypeMirror;)Z
ifeq 36
40: getstatic org.graalvm.compiler.options.processor.OptionProcessor.$assertionsDisabled:Z
ifne 41
aload 10
invokeinterface javax.lang.model.type.DeclaredType.getTypeArguments:()Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 41
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
41: StackMap locals:
StackMap stack:
aload 10
invokeinterface javax.lang.model.type.DeclaredType.getTypeArguments:()Ljava/util/List;
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast javax.lang.model.type.TypeMirror
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
astore 11
start local 11 42: aload 11
ldc "java.lang."
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 44
43: aload 11
ldc "java.lang."
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 11
44: StackMap locals: java.lang.String
StackMap stack:
aload 1
invokeinterface javax.lang.model.element.Element.getEnclosingElement:()Ljavax/lang/model/element/Element;
astore 12
start local 12 45: ldc ""
astore 13
start local 13 46: ldc ""
astore 14
start local 14 47: aload 2
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo.originatingElements:Ljava/util/Set;
astore 15
start local 15 48: aload 15
aload 4
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
49: aconst_null
astore 16
start local 16 50: goto 66
51: StackMap locals: org.graalvm.compiler.options.processor.OptionProcessor javax.lang.model.element.Element org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo javax.lang.model.element.AnnotationMirror javax.lang.model.element.VariableElement java.lang.String javax.lang.model.util.Types javax.lang.model.type.TypeMirror javax.lang.model.type.DeclaredType java.lang.String javax.lang.model.type.DeclaredType java.lang.String javax.lang.model.element.Element java.lang.String java.lang.String java.util.Set javax.lang.model.element.PackageElement
StackMap stack:
aload 12
invokeinterface javax.lang.model.element.Element.getKind:()Ljavax/lang/model/element/ElementKind;
getstatic javax.lang.model.element.ElementKind.CLASS:Ljavax/lang/model/element/ElementKind;
if_acmpeq 52
aload 12
invokeinterface javax.lang.model.element.Element.getKind:()Ljavax/lang/model/element/ElementKind;
getstatic javax.lang.model.element.ElementKind.INTERFACE:Ljavax/lang/model/element/ElementKind;
if_acmpeq 52
aload 12
invokeinterface javax.lang.model.element.Element.getKind:()Ljavax/lang/model/element/ElementKind;
getstatic javax.lang.model.element.ElementKind.ENUM:Ljavax/lang/model/element/ElementKind;
if_acmpne 60
52: StackMap locals:
StackMap stack:
aload 12
invokeinterface javax.lang.model.element.Element.getModifiers:()Ljava/util/Set;
getstatic javax.lang.model.element.Modifier.PRIVATE:Ljavax/lang/model/element/Modifier;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 56
53: ldc "Option field cannot be declared in a private %s %s"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 12
invokeinterface javax.lang.model.element.Element.getKind:()Ljavax/lang/model/element/ElementKind;
invokevirtual javax.lang.model.element.ElementKind.name:()Ljava/lang/String;
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
aastore
dup
iconst_1
aload 12
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
astore 17
start local 17 54: aload 0
getfield org.graalvm.compiler.options.processor.OptionProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getMessager:()Ljavax/annotation/processing/Messager;
getstatic javax.tools.Diagnostic$Kind.ERROR:Ljavax/tools/Diagnostic$Kind;
aload 17
aload 1
invokeinterface javax.annotation.processing.Messager.printMessage:(Ljavax/tools/Diagnostic$Kind;Ljava/lang/CharSequence;Ljavax/lang/model/element/Element;)V
55: return
end local 17 56: StackMap locals:
StackMap stack:
aload 15
aload 12
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
57: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
aload 12
invokeinterface javax.lang.model.element.Element.getSimpleName:()Ljavax/lang/model/element/Name;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
aload 14
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 13
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 13
58: ldc "."
astore 14
59: goto 65
StackMap locals:
StackMap stack:
60: aload 12
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 63
61: aload 12
checkcast javax.lang.model.element.PackageElement
astore 16
62: goto 67
63: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.options.processor.OptionProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getMessager:()Ljavax/annotation/processing/Messager;
getstatic javax.tools.Diagnostic$Kind.ERROR:Ljavax/tools/Diagnostic$Kind;
new java.lang.StringBuilder
dup
ldc "Unexpected enclosing element kind: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 12
invokeinterface javax.lang.model.element.Element.getKind:()Ljavax/lang/model/element/ElementKind;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 1
invokeinterface javax.annotation.processing.Messager.printMessage:(Ljavax/tools/Diagnostic$Kind;Ljava/lang/CharSequence;Ljavax/lang/model/element/Element;)V
64: return
65: StackMap locals:
StackMap stack:
aload 12
invokeinterface javax.lang.model.element.Element.getEnclosingElement:()Ljavax/lang/model/element/Element;
astore 12
66: StackMap locals:
StackMap stack:
aload 12
ifnonnull 51
67: StackMap locals:
StackMap stack:
aload 16
ifnull 68
aload 16
invokeinterface javax.lang.model.element.PackageElement.isUnnamed:()Z
ifeq 70
68: StackMap locals:
StackMap stack:
aload 0
getfield org.graalvm.compiler.options.processor.OptionProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getMessager:()Ljavax/annotation/processing/Messager;
getstatic javax.tools.Diagnostic$Kind.ERROR:Ljavax/tools/Diagnostic$Kind;
ldc "Option field cannot be declared in the unnamed package"
aload 1
invokeinterface javax.annotation.processing.Messager.printMessage:(Ljavax/tools/Diagnostic$Kind;Ljava/lang/CharSequence;Ljavax/lang/model/element/Element;)V
69: return
70: StackMap locals:
StackMap stack:
aload 3
ldc "help"
ldc Ljava/lang/String;
invokestatic org.graalvm.compiler.options.processor.OptionProcessor.getAnnotationValueList:(Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;Ljava/lang/Class;)Ljava/util/List;
astore 17
start local 17 71: ldc ""
astore 18
start local 18 72: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 19
start local 19 73: aload 17
invokeinterface java.util.List.size:()I
iconst_1
if_icmpne 102
74: aload 17
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
astore 18
75: aload 18
ldc "file:"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 105
76: aload 18
ldc "file:"
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 20
start local 20 77: aload 0
getfield org.graalvm.compiler.options.processor.OptionProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getFiler:()Ljavax/annotation/processing/Filer;
astore 21
start local 21 78: aload 21
getstatic javax.tools.StandardLocation.SOURCE_PATH:Ljavax/tools/StandardLocation;
aload 16
invokeinterface javax.lang.model.element.PackageElement.getQualifiedName:()Ljavax/lang/model/element/Name;
aload 20
invokeinterface javax.annotation.processing.Filer.getResource:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljavax/tools/FileObject;
astore 22
start local 22 79: goto 82
end local 22 StackMap locals: org.graalvm.compiler.options.processor.OptionProcessor javax.lang.model.element.Element org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo javax.lang.model.element.AnnotationMirror javax.lang.model.element.VariableElement java.lang.String javax.lang.model.util.Types javax.lang.model.type.TypeMirror javax.lang.model.type.DeclaredType java.lang.String javax.lang.model.type.DeclaredType java.lang.String javax.lang.model.element.Element java.lang.String java.lang.String java.util.Set javax.lang.model.element.PackageElement java.util.List java.lang.String java.util.List java.lang.String javax.annotation.processing.Filer
StackMap stack: java.lang.Exception
80: pop
81: aload 21
getstatic javax.tools.StandardLocation.CLASS_OUTPUT:Ljavax/tools/StandardLocation;
aload 16
invokeinterface javax.lang.model.element.PackageElement.getQualifiedName:()Ljavax/lang/model/element/Name;
aload 20
invokeinterface javax.annotation.processing.Filer.getResource:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljavax/tools/FileObject;
astore 22
start local 22 82: StackMap locals: javax.tools.FileObject
StackMap stack:
aconst_null
astore 23
aconst_null
astore 24
83: new java.io.BufferedReader
dup
new java.io.InputStreamReader
dup
aload 22
invokeinterface javax.tools.FileObject.openInputStream:()Ljava/io/InputStream;
invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;)V
invokespecial java.io.BufferedReader.<init>:(Ljava/io/Reader;)V
astore 25
start local 25 84: aload 25
invokevirtual java.io.BufferedReader.readLine:()Ljava/lang/String;
astore 18
85: aload 18
ifnonnull 87
86: ldc ""
astore 18
87: StackMap locals: java.lang.Throwable java.lang.Throwable java.io.BufferedReader
StackMap stack:
aload 25
invokevirtual java.io.BufferedReader.readLine:()Ljava/lang/String;
astore 26
start local 26 88: goto 91
89: StackMap locals: java.lang.String
StackMap stack:
aload 19
aload 26
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
90: aload 25
invokevirtual java.io.BufferedReader.readLine:()Ljava/lang/String;
astore 26
91: StackMap locals:
StackMap stack:
aload 26
ifnonnull 89
end local 26 92: aload 25
ifnull 105
aload 25
invokevirtual java.io.BufferedReader.close:()V
goto 105
StackMap locals: org.graalvm.compiler.options.processor.OptionProcessor javax.lang.model.element.Element org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo javax.lang.model.element.AnnotationMirror javax.lang.model.element.VariableElement java.lang.String javax.lang.model.util.Types javax.lang.model.type.TypeMirror javax.lang.model.type.DeclaredType java.lang.String javax.lang.model.type.DeclaredType java.lang.String javax.lang.model.element.Element java.lang.String java.lang.String java.util.Set javax.lang.model.element.PackageElement java.util.List java.lang.String java.util.List java.lang.String javax.annotation.processing.Filer javax.tools.FileObject java.lang.Throwable java.lang.Throwable java.io.BufferedReader
StackMap stack: java.lang.Throwable
93: astore 23
aload 25
ifnull 94
aload 25
invokevirtual java.io.BufferedReader.close:()V
end local 25 StackMap locals:
StackMap stack:
94: aload 23
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
95: astore 24
aload 23
ifnonnull 96
aload 24
astore 23
goto 97
StackMap locals:
StackMap stack:
96: aload 23
aload 24
if_acmpeq 97
aload 23
aload 24
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
97: aload 23
athrow
end local 22 98: StackMap locals: org.graalvm.compiler.options.processor.OptionProcessor javax.lang.model.element.Element org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo javax.lang.model.element.AnnotationMirror javax.lang.model.element.VariableElement java.lang.String javax.lang.model.util.Types javax.lang.model.type.TypeMirror javax.lang.model.type.DeclaredType java.lang.String javax.lang.model.type.DeclaredType java.lang.String javax.lang.model.element.Element java.lang.String java.lang.String java.util.Set javax.lang.model.element.PackageElement java.util.List java.lang.String java.util.List java.lang.String javax.annotation.processing.Filer
StackMap stack: java.io.IOException
astore 22
start local 22 99: ldc "Error reading %s containing the help text for option field: %s"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 20
aastore
dup
iconst_1
aload 22
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
astore 23
start local 23 100: aload 0
getfield org.graalvm.compiler.options.processor.OptionProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getMessager:()Ljavax/annotation/processing/Messager;
getstatic javax.tools.Diagnostic$Kind.ERROR:Ljavax/tools/Diagnostic$Kind;
aload 23
aload 1
invokeinterface javax.annotation.processing.Messager.printMessage:(Ljavax/tools/Diagnostic$Kind;Ljava/lang/CharSequence;Ljavax/lang/model/element/Element;)V
101: return
end local 23 end local 22 end local 21 end local 20 102: StackMap locals:
StackMap stack:
aload 17
invokeinterface java.util.List.size:()I
iconst_1
if_icmple 105
103: aload 17
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
astore 18
104: aload 17
iconst_1
aload 17
invokeinterface java.util.List.size:()I
invokeinterface java.util.List.subList:(II)Ljava/util/List;
astore 19
105: StackMap locals:
StackMap stack:
aload 18
invokevirtual java.lang.String.length:()I
ifeq 110
106: aload 18
iconst_0
invokevirtual java.lang.String.charAt:(I)C
istore 20
start local 20 107: iload 20
invokestatic java.lang.Character.isUpperCase:(C)Z
ifne 110
108: aload 0
getfield org.graalvm.compiler.options.processor.OptionProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getMessager:()Ljavax/annotation/processing/Messager;
getstatic javax.tools.Diagnostic$Kind.ERROR:Ljavax/tools/Diagnostic$Kind;
ldc "Option help text must start with an upper case letter"
aload 1
invokeinterface javax.annotation.processing.Messager.printMessage:(Ljavax/tools/Diagnostic$Kind;Ljava/lang/CharSequence;Ljavax/lang/model/element/Element;)V
109: return
end local 20 110: StackMap locals:
StackMap stack:
aload 3
ldc "stability"
ldc Ljavax/lang/model/element/VariableElement;
invokestatic org.graalvm.compiler.options.processor.OptionProcessor.getAnnotationValue:(Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;
checkcast javax.lang.model.element.VariableElement
invokeinterface javax.lang.model.element.VariableElement.getSimpleName:()Ljavax/lang/model/element/Name;
invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
astore 20
start local 20 111: aload 20
ldc "STABLE"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 115
112: aload 18
invokevirtual java.lang.String.length:()I
ifne 115
113: aload 0
getfield org.graalvm.compiler.options.processor.OptionProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getMessager:()Ljavax/annotation/processing/Messager;
getstatic javax.tools.Diagnostic$Kind.ERROR:Ljavax/tools/Diagnostic$Kind;
ldc "A stable option must have non-empty help text"
aload 1
invokeinterface javax.annotation.processing.Messager.printMessage:(Ljavax/tools/Diagnostic$Kind;Ljava/lang/CharSequence;Ljavax/lang/model/element/Element;)V
114: return
115: StackMap locals: java.lang.String
StackMap stack:
aload 3
ldc "type"
ldc Ljavax/lang/model/element/VariableElement;
invokestatic org.graalvm.compiler.options.processor.OptionProcessor.getAnnotationValue:(Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;
checkcast javax.lang.model.element.VariableElement
invokeinterface javax.lang.model.element.VariableElement.getSimpleName:()Ljavax/lang/model/element/Name;
invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
astore 21
start local 21 116: aload 3
ldc "deprecated"
ldc Ljava/lang/Boolean;
invokestatic org.graalvm.compiler.options.processor.OptionProcessor.getAnnotationValue:(Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
istore 22
start local 22 117: aload 2
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo.options:Ljava/util/List;
new org.graalvm.compiler.options.processor.OptionProcessor$OptionInfo
dup
aload 9
aload 21
aload 18
aload 19
aload 11
aload 13
aload 4
invokeinterface javax.lang.model.element.VariableElement.getSimpleName:()Ljavax/lang/model/element/Name;
invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
iload 22
invokespecial org.graalvm.compiler.options.processor.OptionProcessor$OptionInfo.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
118: return
end local 22 end local 21 end local 20 end local 19 end local 18 end local 17 end local 16 end local 15 end local 14 end local 13 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 119 0 this Lorg/graalvm/compiler/options/processor/OptionProcessor;
0 119 1 element Ljavax/lang/model/element/Element;
0 119 2 info Lorg/graalvm/compiler/options/processor/OptionProcessor$OptionsInfo;
7 119 3 annotation Ljavax/lang/model/element/AnnotationMirror;
11 119 4 field Ljavax/lang/model/element/VariableElement;
12 119 5 fieldName Ljava/lang/String;
13 119 6 types Ljavax/lang/model/util/Types;
14 119 7 fieldType Ljavax/lang/model/type/TypeMirror;
18 119 8 declaredFieldType Ljavax/lang/model/type/DeclaredType;
20 22 9 msg Ljava/lang/String;
29 119 9 optionName Ljava/lang/String;
35 119 10 declaredOptionKeyType Ljavax/lang/model/type/DeclaredType;
37 39 11 directSupertypes Ljava/util/List<+Ljavax/lang/model/type/TypeMirror;>;
42 119 11 optionType Ljava/lang/String;
45 119 12 enclosing Ljavax/lang/model/element/Element;
46 119 13 declaringClass Ljava/lang/String;
47 119 14 separator Ljava/lang/String;
48 119 15 originatingElementsList Ljava/util/Set<Ljavax/lang/model/element/Element;>;
50 119 16 enclosingPackage Ljavax/lang/model/element/PackageElement;
54 56 17 msg Ljava/lang/String;
71 119 17 helpValue Ljava/util/List<Ljava/lang/String;>;
72 119 18 help Ljava/lang/String;
73 119 19 extraHelp Ljava/util/List<Ljava/lang/String;>;
77 102 20 path Ljava/lang/String;
78 102 21 filer Ljavax/annotation/processing/Filer;
79 80 22 file Ljavax/tools/FileObject;
82 98 22 file Ljavax/tools/FileObject;
84 94 25 br Ljava/io/BufferedReader;
88 92 26 line Ljava/lang/String;
99 102 22 e Ljava/io/IOException;
100 102 23 msg Ljava/lang/String;
107 110 20 firstChar C
111 119 20 optionStabilityName Ljava/lang/String;
116 119 21 optionTypeName Ljava/lang/String;
117 119 22 deprecated Z
Exception table:
from to target type
78 79 80 Class java.lang.IllegalArgumentException
78 79 80 Class java.io.IOException
84 92 93 any
83 95 95 any
78 98 98 Class java.io.IOException
MethodParameters:
Name Flags
element
info
public static void createOptionsDescriptorsFile(javax.annotation.processing.ProcessingEnvironment, org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo);
descriptor: (Ljavax/annotation/processing/ProcessingEnvironment;Lorg/graalvm/compiler/options/processor/OptionProcessor$OptionsInfo;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=8, locals=22, args_size=2
start local 0 start local 1 0: aload 1
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo.originatingElements:Ljava/util/Set;
aload 1
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo.originatingElements:Ljava/util/Set;
invokeinterface java.util.Set.size:()I
anewarray javax.lang.model.element.Element
invokeinterface java.util.Set.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast javax.lang.model.element.Element[]
astore 2
start local 2 1: new java.lang.StringBuilder
dup
aload 1
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo.className:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "_"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "org.graalvm.compiler.options.OptionDescriptors"
invokestatic org.graalvm.compiler.options.processor.OptionProcessor.getSimpleName:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 3
start local 3 2: aload 0
invokeinterface javax.annotation.processing.ProcessingEnvironment.getFiler:()Ljavax/annotation/processing/Filer;
astore 4
start local 4 3: aconst_null
astore 5
aconst_null
astore 6
4: aload 1
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo.packageName:Ljava/lang/String;
aload 3
aload 4
aload 2
invokestatic org.graalvm.compiler.options.processor.OptionProcessor.createSourceFile:(Ljava/lang/String;Ljava/lang/String;Ljavax/annotation/processing/Filer;[Ljavax/lang/model/element/Element;)Ljava/io/PrintWriter;
astore 7
start local 7 5: aload 7
ldc "// CheckStyle: stop header check"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
6: aload 7
ldc "// CheckStyle: stop line length check"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
7: aload 7
ldc "// GENERATED CONTENT - DO NOT EDIT"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
8: aload 7
new java.lang.StringBuilder
dup
ldc "// Source: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo.className:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ".java"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
9: aload 7
new java.lang.StringBuilder
dup
ldc "package "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo.packageName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)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.PrintWriter.println:(Ljava/lang/String;)V
10: aload 7
ldc ""
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
11: aload 7
ldc "import java.util.*;"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
12: aload 7
new java.lang.StringBuilder
dup
ldc "import "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "org.graalvm.compiler.options.OptionDescriptors"
invokestatic org.graalvm.compiler.options.processor.OptionProcessor.getPackageName:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)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.PrintWriter.println:(Ljava/lang/String;)V
13: aload 7
ldc "import org.graalvm.compiler.options.OptionType;"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
14: aload 7
ldc ""
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
15: aload 7
new java.lang.StringBuilder
dup
ldc "public class "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " implements "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "org.graalvm.compiler.options.OptionDescriptors"
invokestatic org.graalvm.compiler.options.processor.OptionProcessor.getSimpleName:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)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.PrintWriter.println:(Ljava/lang/String;)V
16: ldc "org.graalvm.compiler.options.OptionDescriptor"
invokestatic org.graalvm.compiler.options.processor.OptionProcessor.getSimpleName:(Ljava/lang/String;)Ljava/lang/String;
astore 8
start local 8 17: aload 1
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo.options:Ljava/util/List;
invokestatic java.util.Collections.sort:(Ljava/util/List;)V
18: aload 7
ldc " @Override"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
19: aload 7
ldc " public OptionDescriptor get(String value) {"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
20: aload 7
ldc " switch (value) {"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
21: aload 7
ldc " // CheckStyle: stop line length check"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
22: aload 1
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo.options:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 10
goto 51
StackMap locals: javax.annotation.processing.ProcessingEnvironment org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo javax.lang.model.element.Element[] java.lang.String javax.annotation.processing.Filer java.lang.Throwable java.lang.Throwable java.io.PrintWriter java.lang.String top java.util.Iterator
StackMap stack:
23: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.options.processor.OptionProcessor$OptionInfo
astore 9
start local 9 24: aload 9
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionInfo.name:Ljava/lang/String;
astore 11
start local 11 25: new java.lang.StringBuilder
dup
aload 9
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionInfo.declaringClass:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 9
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionInfo.field:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 12
start local 12 26: aload 7
new java.lang.StringBuilder
dup
ldc " case \""
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 11
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)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.PrintWriter.println:(Ljava/lang/String;)V
27: aload 9
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionInfo.optionType:Ljava/lang/String;
astore 13
start local 13 28: aload 9
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionInfo.type:Ljava/lang/String;
astore 14
start local 14 29: aload 9
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionInfo.help:Ljava/lang/String;
astore 15
start local 15 30: aload 9
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionInfo.extraHelp:Ljava/util/List;
astore 16
start local 16 31: aload 9
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionInfo.declaringClass:Ljava/lang/String;
astore 17
start local 17 32: aload 9
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionInfo.field:Ljava/lang/String;
astore 18
start local 18 33: aload 9
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionInfo.deprecated:Z
istore 19
start local 19 34: aload 7
new java.lang.StringBuilder
dup
ldc " return "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 8
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ".create(\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
iconst_0
anewarray java.lang.Object
invokevirtual java.io.PrintWriter.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
pop
35: aload 7
ldc " /*name*/ \"%s\",\n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 11
aastore
invokevirtual java.io.PrintWriter.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
pop
36: aload 7
ldc " /*optionType*/ %s.%s,\n"
iconst_2
anewarray java.lang.Object
dup
iconst_0
ldc "org.graalvm.compiler.options.OptionType"
invokestatic org.graalvm.compiler.options.processor.OptionProcessor.getSimpleName:(Ljava/lang/String;)Ljava/lang/String;
aastore
dup
iconst_1
aload 13
aastore
invokevirtual java.io.PrintWriter.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
pop
37: aload 7
ldc " /*optionValueType*/ %s.class,\n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 14
aastore
invokevirtual java.io.PrintWriter.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
pop
38: aload 7
ldc " /*help*/ \"%s\",\n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 15
aastore
invokevirtual java.io.PrintWriter.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
pop
39: aload 16
invokeinterface java.util.List.size:()I
ifeq 46
40: aload 7
ldc " /*extraHelp*/ new String[] {\n"
iconst_0
anewarray java.lang.Object
invokevirtual java.io.PrintWriter.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
pop
41: aload 16
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 21
goto 44
StackMap locals: javax.annotation.processing.ProcessingEnvironment org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo javax.lang.model.element.Element[] java.lang.String javax.annotation.processing.Filer java.lang.Throwable java.lang.Throwable java.io.PrintWriter java.lang.String org.graalvm.compiler.options.processor.OptionProcessor$OptionInfo java.util.Iterator java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.util.List java.lang.String java.lang.String int top java.util.Iterator
StackMap stack:
42: aload 21
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 20
start local 20 43: aload 7
ldc " \"%s\",\n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 20
ldc "\\"
ldc "\\\\"
invokevirtual java.lang.String.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
ldc "\""
ldc "\\\""
invokevirtual java.lang.String.replace:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljava/lang/String;
aastore
invokevirtual java.io.PrintWriter.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
pop
end local 20 44: StackMap locals:
StackMap stack:
aload 21
invokeinterface java.util.Iterator.hasNext:()Z
ifne 42
45: aload 7
ldc " },\n"
iconst_0
anewarray java.lang.Object
invokevirtual java.io.PrintWriter.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
pop
46: StackMap locals: javax.annotation.processing.ProcessingEnvironment org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo javax.lang.model.element.Element[] java.lang.String javax.annotation.processing.Filer java.lang.Throwable java.lang.Throwable java.io.PrintWriter java.lang.String org.graalvm.compiler.options.processor.OptionProcessor$OptionInfo java.util.Iterator java.lang.String java.lang.String java.lang.String java.lang.String java.lang.String java.util.List java.lang.String java.lang.String int
StackMap stack:
aload 7
ldc " /*declaringClass*/ %s.class,\n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 17
aastore
invokevirtual java.io.PrintWriter.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
pop
47: aload 7
ldc " /*fieldName*/ \"%s\",\n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 18
aastore
invokevirtual java.io.PrintWriter.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
pop
48: aload 7
ldc " /*option*/ %s,\n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 12
aastore
invokevirtual java.io.PrintWriter.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
pop
49: aload 7
ldc " /*deprecated*/ %b);\n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
iload 19
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
aastore
invokevirtual java.io.PrintWriter.printf:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
pop
50: aload 7
ldc " }"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
end local 19 end local 18 end local 17 end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 end local 9 51: StackMap locals: javax.annotation.processing.ProcessingEnvironment org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo javax.lang.model.element.Element[] java.lang.String javax.annotation.processing.Filer java.lang.Throwable java.lang.Throwable java.io.PrintWriter java.lang.String top java.util.Iterator
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 23
52: aload 7
ldc " // CheckStyle: resume line length check"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
53: aload 7
ldc " }"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
54: aload 7
ldc " return null;"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
55: aload 7
ldc " }"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
56: aload 7
invokevirtual java.io.PrintWriter.println:()V
57: aload 7
ldc " @Override"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
58: aload 7
new java.lang.StringBuilder
dup
ldc " public Iterator<"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 8
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "> iterator() {"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
59: aload 7
ldc " return new Iterator<OptionDescriptor>() {"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
60: aload 7
ldc " int i = 0;"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
61: aload 7
ldc " @Override"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
62: aload 7
ldc " public boolean hasNext() {"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
63: aload 7
new java.lang.StringBuilder
dup
ldc " return i < "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo.options:Ljava/util/List;
invokeinterface java.util.List.size:()I
invokevirtual java.lang.StringBuilder.append:(I)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.PrintWriter.println:(Ljava/lang/String;)V
64: aload 7
ldc " }"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
65: aload 7
ldc " @Override"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
66: aload 7
ldc " public OptionDescriptor next() {"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
67: aload 7
ldc " switch (i++) {"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
68: iconst_0
istore 9
start local 9 69: goto 73
70: StackMap locals: javax.annotation.processing.ProcessingEnvironment org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo javax.lang.model.element.Element[] java.lang.String javax.annotation.processing.Filer java.lang.Throwable java.lang.Throwable java.io.PrintWriter java.lang.String int
StackMap stack:
aload 1
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo.options:Ljava/util/List;
iload 9
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast org.graalvm.compiler.options.processor.OptionProcessor$OptionInfo
astore 10
start local 10 71: aload 7
new java.lang.StringBuilder
dup
ldc " case "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 9
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ": return get(\""
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 10
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionInfo.name:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)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.PrintWriter.println:(Ljava/lang/String;)V
end local 10 72: iinc 9 1
StackMap locals:
StackMap stack:
73: iload 9
aload 1
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo.options:Ljava/util/List;
invokeinterface java.util.List.size:()I
if_icmplt 70
end local 9 74: aload 7
ldc " }"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
75: aload 7
ldc " throw new NoSuchElementException();"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
76: aload 7
ldc " }"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
77: aload 7
ldc " };"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
78: aload 7
ldc " }"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
79: aload 7
ldc "}"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
end local 8 80: aload 7
ifnull 86
aload 7
invokevirtual java.io.PrintWriter.close:()V
goto 86
StackMap locals: javax.annotation.processing.ProcessingEnvironment org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo javax.lang.model.element.Element[] java.lang.String javax.annotation.processing.Filer java.lang.Throwable java.lang.Throwable java.io.PrintWriter
StackMap stack: java.lang.Throwable
81: astore 5
aload 7
ifnull 82
aload 7
invokevirtual java.io.PrintWriter.close:()V
end local 7 StackMap locals:
StackMap stack:
82: aload 5
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
83: astore 6
aload 5
ifnonnull 84
aload 6
astore 5
goto 85
StackMap locals:
StackMap stack:
84: aload 5
aload 6
if_acmpeq 85
aload 5
aload 6
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
85: aload 5
athrow
86: 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 87 0 processingEnv Ljavax/annotation/processing/ProcessingEnvironment;
0 87 1 info Lorg/graalvm/compiler/options/processor/OptionProcessor$OptionsInfo;
1 87 2 originatingElements [Ljavax/lang/model/element/Element;
2 87 3 optionsDescriptorsClassName Ljava/lang/String;
3 87 4 filer Ljavax/annotation/processing/Filer;
5 82 7 out Ljava/io/PrintWriter;
17 80 8 desc Ljava/lang/String;
24 51 9 option Lorg/graalvm/compiler/options/processor/OptionProcessor$OptionInfo;
25 51 11 name Ljava/lang/String;
26 51 12 optionField Ljava/lang/String;
28 51 13 optionType Ljava/lang/String;
29 51 14 type Ljava/lang/String;
30 51 15 help Ljava/lang/String;
31 51 16 extraHelp Ljava/util/List<Ljava/lang/String;>;
32 51 17 declaringClass Ljava/lang/String;
33 51 18 fieldName Ljava/lang/String;
34 51 19 deprecated Z
43 44 20 line Ljava/lang/String;
69 74 9 i I
71 72 10 option Lorg/graalvm/compiler/options/processor/OptionProcessor$OptionInfo;
Exception table:
from to target type
5 80 81 any
4 83 83 any
MethodParameters:
Name Flags
processingEnv
info
public static java.io.PrintWriter createSourceFile(java.lang.String, java.lang.String, javax.annotation.processing.Filer, javax.lang.model.element.Element[]);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljavax/annotation/processing/Filer;[Ljavax/lang/model/element/Element;)Ljava/io/PrintWriter;
flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
Code:
stack=3, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new java.lang.StringBuilder
dup
aload 0
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 4
start local 4 1: aload 2
aload 4
aload 3
invokeinterface javax.annotation.processing.Filer.createSourceFile:(Ljava/lang/CharSequence;[Ljavax/lang/model/element/Element;)Ljavax/tools/JavaFileObject;
astore 5
start local 5 2: new org.graalvm.compiler.options.processor.OptionProcessor$1
dup
aload 5
invokeinterface javax.tools.JavaFileObject.openWriter:()Ljava/io/Writer;
invokespecial org.graalvm.compiler.options.processor.OptionProcessor$1.<init>:(Ljava/io/Writer;)V
3: areturn
end local 5 end local 4 4: StackMap locals:
StackMap stack: java.io.IOException
astore 4
start local 4 5: new java.lang.RuntimeException
dup
aload 4
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 pkg Ljava/lang/String;
0 6 1 relativeName Ljava/lang/String;
0 6 2 filer Ljavax/annotation/processing/Filer;
0 6 3 originatingElements [Ljavax/lang/model/element/Element;
1 4 4 className Ljava/lang/String;
2 4 5 sourceFile Ljavax/tools/JavaFileObject;
5 6 4 e Ljava/io/IOException;
Exception table:
from to target type
0 3 4 Class java.io.IOException
MethodParameters:
Name Flags
pkg
relativeName
filer
originatingElements
private static javax.lang.model.element.Element topDeclaringType(javax.lang.model.element.Element);
descriptor: (Ljavax/lang/model/element/Element;)Ljavax/lang/model/element/Element;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokeinterface javax.lang.model.element.Element.getEnclosingElement:()Ljavax/lang/model/element/Element;
astore 1
start local 1 1: aload 1
ifnull 2
aload 1
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 3
2: StackMap locals: javax.lang.model.element.Element
StackMap stack:
aload 0
areturn
3: StackMap locals:
StackMap stack:
aload 1
invokestatic org.graalvm.compiler.options.processor.OptionProcessor.topDeclaringType:(Ljavax/lang/model/element/Element;)Ljavax/lang/model/element/Element;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 element Ljavax/lang/model/element/Element;
1 4 1 enclosing Ljavax/lang/model/element/Element;
MethodParameters:
Name Flags
element
public boolean doProcess(java.util.Set<? extends javax.lang.model.element.TypeElement>, javax.annotation.processing.RoundEnvironment);
descriptor: (Ljava/util/Set;Ljavax/annotation/processing/RoundEnvironment;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=13, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokeinterface javax.annotation.processing.RoundEnvironment.processingOver:()Z
ifeq 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 0
ldc "org.graalvm.compiler.options.Option"
invokevirtual org.graalvm.compiler.options.processor.OptionProcessor.getTypeElement:(Ljava/lang/String;)Ljavax/lang/model/element/TypeElement;
astore 3
start local 3 3: aload 0
aload 3
invokeinterface javax.lang.model.element.TypeElement.asType:()Ljavax/lang/model/type/TypeMirror;
putfield org.graalvm.compiler.options.processor.OptionProcessor.optionTypeMirror:Ljavax/lang/model/type/TypeMirror;
4: aload 0
aload 0
ldc "org.graalvm.compiler.options.OptionKey"
invokevirtual org.graalvm.compiler.options.processor.OptionProcessor.getTypeElement:(Ljava/lang/String;)Ljavax/lang/model/element/TypeElement;
invokeinterface javax.lang.model.element.TypeElement.asType:()Ljavax/lang/model/type/TypeMirror;
putfield org.graalvm.compiler.options.processor.OptionProcessor.optionKeyTypeMirror:Ljavax/lang/model/type/TypeMirror;
5: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 4
start local 4 6: aload 2
aload 3
invokeinterface javax.annotation.processing.RoundEnvironment.getElementsAnnotatedWith:(Ljavax/lang/model/element/TypeElement;)Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 6
goto 20
StackMap locals: org.graalvm.compiler.options.processor.OptionProcessor java.util.Set javax.annotation.processing.RoundEnvironment javax.lang.model.element.TypeElement java.util.Map top java.util.Iterator
StackMap stack:
7: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast javax.lang.model.element.Element
astore 5
start local 5 8: aload 0
getfield org.graalvm.compiler.options.processor.OptionProcessor.processed:Ljava/util/Set;
aload 5
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 20
9: aload 0
getfield org.graalvm.compiler.options.processor.OptionProcessor.processed:Ljava/util/Set;
aload 5
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
10: aload 5
invokestatic org.graalvm.compiler.options.processor.OptionProcessor.topDeclaringType:(Ljavax/lang/model/element/Element;)Ljavax/lang/model/element/Element;
astore 7
start local 7 11: aload 4
aload 7
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo
astore 8
start local 8 12: aload 8
ifnonnull 17
13: aload 7
invokeinterface javax.lang.model.element.Element.getEnclosingElement:()Ljavax/lang/model/element/Element;
checkcast javax.lang.model.element.PackageElement
invokeinterface javax.lang.model.element.PackageElement.getQualifiedName:()Ljavax/lang/model/element/Name;
invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
astore 9
start local 9 14: aload 7
invokeinterface javax.lang.model.element.Element.getSimpleName:()Ljavax/lang/model/element/Name;
invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
astore 10
start local 10 15: new org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo
dup
aload 9
aload 10
invokespecial org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo.<init>:(Ljava/lang/String;Ljava/lang/String;)V
astore 8
16: aload 4
aload 7
aload 8
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 10 end local 9 17: StackMap locals: org.graalvm.compiler.options.processor.OptionProcessor java.util.Set javax.annotation.processing.RoundEnvironment javax.lang.model.element.TypeElement java.util.Map javax.lang.model.element.Element java.util.Iterator javax.lang.model.element.Element org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo
StackMap stack:
aload 5
invokeinterface javax.lang.model.element.Element.getEnclosingElement:()Ljavax/lang/model/element/Element;
invokeinterface javax.lang.model.element.Element.getSimpleName:()Ljavax/lang/model/element/Name;
invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
ldc "Options"
invokevirtual java.lang.String.endsWith:(Ljava/lang/String;)Z
ifne 19
18: aload 0
getfield org.graalvm.compiler.options.processor.OptionProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getMessager:()Ljavax/annotation/processing/Messager;
getstatic javax.tools.Diagnostic$Kind.ERROR:Ljavax/tools/Diagnostic$Kind;
ldc "Option declaring classes must have a name that ends with 'Options'"
aload 5
invokeinterface javax.lang.model.element.Element.getEnclosingElement:()Ljavax/lang/model/element/Element;
invokeinterface javax.annotation.processing.Messager.printMessage:(Ljavax/tools/Diagnostic$Kind;Ljava/lang/CharSequence;Ljavax/lang/model/element/Element;)V
19: StackMap locals:
StackMap stack:
aload 0
aload 5
aload 8
invokevirtual org.graalvm.compiler.options.processor.OptionProcessor.processElement:(Ljavax/lang/model/element/Element;Lorg/graalvm/compiler/options/processor/OptionProcessor$OptionsInfo;)V
end local 8 end local 7 end local 5 20: StackMap locals: org.graalvm.compiler.options.processor.OptionProcessor java.util.Set javax.annotation.processing.RoundEnvironment javax.lang.model.element.TypeElement java.util.Map top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
21: iconst_1
istore 5
start local 5 22: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 6
start local 6 23: aload 4
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 8
goto 33
StackMap locals: org.graalvm.compiler.options.processor.OptionProcessor java.util.Set javax.annotation.processing.RoundEnvironment javax.lang.model.element.TypeElement java.util.Map int java.util.Map top java.util.Iterator
StackMap stack:
24: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 7
start local 7 25: aload 7
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo
astore 9
start local 9 26: aload 9
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo.options:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 11
goto 32
StackMap locals: org.graalvm.compiler.options.processor.OptionProcessor java.util.Set javax.annotation.processing.RoundEnvironment javax.lang.model.element.TypeElement java.util.Map int java.util.Map java.util.Map$Entry java.util.Iterator org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo top java.util.Iterator
StackMap stack:
27: aload 11
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.options.processor.OptionProcessor$OptionInfo
astore 10
start local 10 28: aload 6
aload 10
getfield org.graalvm.compiler.options.processor.OptionProcessor$OptionInfo.name:Ljava/lang/String;
aload 10
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.graalvm.compiler.options.processor.OptionProcessor$OptionInfo
astore 12
start local 12 29: aload 12
ifnull 32
30: aload 0
getfield org.graalvm.compiler.options.processor.OptionProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getMessager:()Ljavax/annotation/processing/Messager;
getstatic javax.tools.Diagnostic$Kind.ERROR:Ljavax/tools/Diagnostic$Kind;
new java.lang.StringBuilder
dup
ldc "Duplicate option names for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 10
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " and "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 12
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 7
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast javax.lang.model.element.Element
invokeinterface javax.annotation.processing.Messager.printMessage:(Ljavax/tools/Diagnostic$Kind;Ljava/lang/CharSequence;Ljavax/lang/model/element/Element;)V
31: iconst_0
istore 5
end local 12 end local 10 32: StackMap locals:
StackMap stack:
aload 11
invokeinterface java.util.Iterator.hasNext:()Z
ifne 27
end local 9 end local 7 33: StackMap locals: org.graalvm.compiler.options.processor.OptionProcessor java.util.Set javax.annotation.processing.RoundEnvironment javax.lang.model.element.TypeElement java.util.Map int java.util.Map top java.util.Iterator
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 24
34: iload 5
ifeq 39
35: aload 4
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 8
goto 38
StackMap locals:
StackMap stack:
36: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo
astore 7
start local 7 37: aload 0
getfield org.graalvm.compiler.options.processor.OptionProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
aload 7
invokestatic org.graalvm.compiler.options.processor.OptionProcessor.createOptionsDescriptorsFile:(Ljavax/annotation/processing/ProcessingEnvironment;Lorg/graalvm/compiler/options/processor/OptionProcessor$OptionsInfo;)V
end local 7 38: StackMap locals:
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 36
39: StackMap locals: org.graalvm.compiler.options.processor.OptionProcessor java.util.Set javax.annotation.processing.RoundEnvironment javax.lang.model.element.TypeElement java.util.Map int java.util.Map
StackMap stack:
iconst_1
ireturn
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 40 0 this Lorg/graalvm/compiler/options/processor/OptionProcessor;
0 40 1 annotations Ljava/util/Set<+Ljavax/lang/model/element/TypeElement;>;
0 40 2 roundEnv Ljavax/annotation/processing/RoundEnvironment;
3 40 3 optionTypeElement Ljavax/lang/model/element/TypeElement;
6 40 4 map Ljava/util/Map<Ljavax/lang/model/element/Element;Lorg/graalvm/compiler/options/processor/OptionProcessor$OptionsInfo;>;
8 20 5 element Ljavax/lang/model/element/Element;
11 20 7 topDeclaringType Ljavax/lang/model/element/Element;
12 20 8 options Lorg/graalvm/compiler/options/processor/OptionProcessor$OptionsInfo;
14 17 9 pkg Ljava/lang/String;
15 17 10 topDeclaringClass Ljava/lang/String;
22 40 5 ok Z
23 40 6 uniqueness Ljava/util/Map<Ljava/lang/String;Lorg/graalvm/compiler/options/processor/OptionProcessor$OptionInfo;>;
25 33 7 e Ljava/util/Map$Entry<Ljavax/lang/model/element/Element;Lorg/graalvm/compiler/options/processor/OptionProcessor$OptionsInfo;>;
26 33 9 info Lorg/graalvm/compiler/options/processor/OptionProcessor$OptionsInfo;
28 32 10 option Lorg/graalvm/compiler/options/processor/OptionProcessor$OptionInfo;
29 32 12 conflict Lorg/graalvm/compiler/options/processor/OptionProcessor$OptionInfo;
37 38 7 info Lorg/graalvm/compiler/options/processor/OptionProcessor$OptionsInfo;
Signature: (Ljava/util/Set<+Ljavax/lang/model/element/TypeElement;>;Ljavax/annotation/processing/RoundEnvironment;)Z
MethodParameters:
Name Flags
annotations
roundEnv
}
SourceFile: "OptionProcessor.java"
NestMembers:
org.graalvm.compiler.options.processor.OptionProcessor$1 org.graalvm.compiler.options.processor.OptionProcessor$OptionInfo org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo
InnerClasses:
public abstract Entry = java.util.Map$Entry of java.util.Map
public final Kind = javax.tools.Diagnostic$Kind of javax.tools.Diagnostic
public abstract Location = javax.tools.JavaFileManager$Location of javax.tools.JavaFileManager
org.graalvm.compiler.options.processor.OptionProcessor$1
public OptionInfo = org.graalvm.compiler.options.processor.OptionProcessor$OptionInfo of org.graalvm.compiler.options.processor.OptionProcessor
public OptionsInfo = org.graalvm.compiler.options.processor.OptionProcessor$OptionsInfo of org.graalvm.compiler.options.processor.OptionProcessor
RuntimeVisibleAnnotations:
javax.annotation.processing.SupportedAnnotationTypes(value = {"org.graalvm.compiler.options.Option"})