public class com.oracle.truffle.dsl.processor.OptionProcessor extends javax.annotation.processing.AbstractProcessor
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.oracle.truffle.dsl.processor.OptionProcessor
super_class: javax.annotation.processing.AbstractProcessor
{
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;>;
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 Lcom/oracle/truffle/dsl/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 com.oracle.truffle.dsl.processor.OptionProcessor.$assertionsDisabled:Z
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 javax.annotation.processing.AbstractProcessor.<init>:()V
1: aload 0
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putfield com.oracle.truffle.dsl.processor.OptionProcessor.processed:Ljava/util/Set;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/dsl/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 Lcom/oracle/truffle/dsl/processor/OptionProcessor;
public boolean process(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=7, locals=14, 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
getfield com.oracle.truffle.dsl.processor.OptionProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokestatic com.oracle.truffle.dsl.processor.ProcessorContext.enter:(Ljavax/annotation/processing/ProcessingEnvironment;)Lcom/oracle/truffle/dsl/processor/ProcessorContext;
astore 3
start local 3 3: aload 3
invokevirtual com.oracle.truffle.dsl.processor.ProcessorContext.getTypes:()Lcom/oracle/truffle/dsl/processor/TruffleTypes;
astore 4
start local 4 4: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 5
start local 5 5: aload 2
aload 4
getfield com.oracle.truffle.dsl.processor.TruffleTypes.Option:Ljavax/lang/model/type/DeclaredType;
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.castTypeElement:(Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/element/TypeElement;
invokeinterface javax.annotation.processing.RoundEnvironment.getElementsAnnotatedWith:(Ljavax/lang/model/element/TypeElement;)Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 7
goto 19
StackMap locals: com.oracle.truffle.dsl.processor.OptionProcessor java.util.Set javax.annotation.processing.RoundEnvironment com.oracle.truffle.dsl.processor.ProcessorContext com.oracle.truffle.dsl.processor.TruffleTypes java.util.Map top java.util.Iterator
StackMap stack:
6: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast javax.lang.model.element.Element
astore 6
start local 6 7: aload 0
getfield com.oracle.truffle.dsl.processor.OptionProcessor.processed:Ljava/util/Set;
aload 6
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 19
8: aload 0
getfield com.oracle.truffle.dsl.processor.OptionProcessor.processed:Ljava/util/Set;
aload 6
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
9: aload 6
invokeinterface javax.lang.model.element.Element.getEnclosingElement:()Ljavax/lang/model/element/Element;
astore 8
start local 8 10: aload 5
aload 8
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo
astore 9
start local 9 11: aload 9
ifnonnull 14
12: new com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo
dup
aload 8
invokespecial com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo.<init>:(Ljavax/lang/model/element/Element;)V
astore 9
13: aload 5
aload 8
aload 9
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
14: StackMap locals: com.oracle.truffle.dsl.processor.OptionProcessor java.util.Set javax.annotation.processing.RoundEnvironment com.oracle.truffle.dsl.processor.ProcessorContext com.oracle.truffle.dsl.processor.TruffleTypes java.util.Map javax.lang.model.element.Element java.util.Iterator javax.lang.model.element.Element com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo
StackMap stack:
aload 6
invokeinterface javax.lang.model.element.Element.getAnnotationMirrors:()Ljava/util/List;
aload 4
getfield com.oracle.truffle.dsl.processor.TruffleTypes.Option:Ljavax/lang/model/type/DeclaredType;
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.findAnnotationMirror:(Ljava/util/List;Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/element/AnnotationMirror;
astore 10
start local 10 15: aload 0
aload 6
aload 10
aload 9
invokevirtual com.oracle.truffle.dsl.processor.OptionProcessor.processElement:(Ljavax/lang/model/element/Element;Ljavax/lang/model/element/AnnotationMirror;Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionsInfo;)Z
pop
16: goto 19
StackMap locals: com.oracle.truffle.dsl.processor.OptionProcessor java.util.Set javax.annotation.processing.RoundEnvironment com.oracle.truffle.dsl.processor.ProcessorContext com.oracle.truffle.dsl.processor.TruffleTypes java.util.Map javax.lang.model.element.Element java.util.Iterator javax.lang.model.element.Element com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo javax.lang.model.element.AnnotationMirror
StackMap stack: java.lang.Throwable
17: astore 11
start local 11 18: aload 0
aload 11
aload 8
invokevirtual com.oracle.truffle.dsl.processor.OptionProcessor.handleThrowable:(Ljava/lang/Throwable;Ljavax/lang/model/element/Element;)V
end local 11 end local 10 end local 9 end local 8 end local 6 19: StackMap locals: com.oracle.truffle.dsl.processor.OptionProcessor java.util.Set javax.annotation.processing.RoundEnvironment com.oracle.truffle.dsl.processor.ProcessorContext com.oracle.truffle.dsl.processor.TruffleTypes java.util.Map top java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
20: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 6
start local 6 21: aload 5
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 8
goto 35
StackMap locals: com.oracle.truffle.dsl.processor.OptionProcessor java.util.Set javax.annotation.processing.RoundEnvironment com.oracle.truffle.dsl.processor.ProcessorContext com.oracle.truffle.dsl.processor.TruffleTypes java.util.Map java.util.Map top java.util.Iterator
StackMap stack:
22: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo
astore 7
start local 7 23: aload 7
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo.options:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 10
goto 34
StackMap locals: com.oracle.truffle.dsl.processor.OptionProcessor java.util.Set javax.annotation.processing.RoundEnvironment com.oracle.truffle.dsl.processor.ProcessorContext com.oracle.truffle.dsl.processor.TruffleTypes java.util.Map java.util.Map com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo java.util.Iterator top java.util.Iterator
StackMap stack:
24: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo
astore 9
start local 9 25: aload 6
aload 9
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.name:Ljava/lang/String;
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifeq 33
26: aload 6
aload 9
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.name:Ljava/lang/String;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo
astore 11
start local 11 27: ldc "Two options with duplicated resolved descriptor name '%s' found."
astore 12
start local 12 28: aload 9
iconst_0
putfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.valid:Z
29: aload 11
iconst_0
putfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.valid:Z
30: aload 9
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.field:Ljavax/lang/model/element/VariableElement;
aload 9
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.annotation:Ljavax/lang/model/element/AnnotationMirror;
aload 12
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 9
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.name:Ljava/lang/String;
aastore
invokestatic com.oracle.truffle.dsl.processor.OptionProcessor.error:(Ljavax/lang/model/element/Element;Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;[Ljava/lang/Object;)V
31: aload 11
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.field:Ljavax/lang/model/element/VariableElement;
aload 11
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.annotation:Ljavax/lang/model/element/AnnotationMirror;
aload 12
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 11
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.name:Ljava/lang/String;
aastore
invokestatic com.oracle.truffle.dsl.processor.OptionProcessor.error:(Ljavax/lang/model/element/Element;Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;[Ljava/lang/Object;)V
end local 12 end local 11 32: goto 34
33: StackMap locals: com.oracle.truffle.dsl.processor.OptionProcessor java.util.Set javax.annotation.processing.RoundEnvironment com.oracle.truffle.dsl.processor.ProcessorContext com.oracle.truffle.dsl.processor.TruffleTypes java.util.Map java.util.Map com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo java.util.Iterator com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo java.util.Iterator
StackMap stack:
aload 6
aload 9
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.name:Ljava/lang/String;
aload 9
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 9 34: StackMap locals: com.oracle.truffle.dsl.processor.OptionProcessor java.util.Set javax.annotation.processing.RoundEnvironment com.oracle.truffle.dsl.processor.ProcessorContext com.oracle.truffle.dsl.processor.TruffleTypes java.util.Map java.util.Map com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo java.util.Iterator top java.util.Iterator
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 24
end local 7 35: StackMap locals: com.oracle.truffle.dsl.processor.OptionProcessor java.util.Set javax.annotation.processing.RoundEnvironment com.oracle.truffle.dsl.processor.ProcessorContext com.oracle.truffle.dsl.processor.TruffleTypes java.util.Map java.util.Map top java.util.Iterator
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 22
36: aload 5
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 8
goto 47
StackMap locals:
StackMap stack:
37: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo
astore 7
start local 7 38: aload 7
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo.options:Ljava/util/List;
invokeinterface java.util.List.listIterator:()Ljava/util/ListIterator;
astore 9
start local 9 39: goto 45
40: StackMap locals: com.oracle.truffle.dsl.processor.OptionProcessor java.util.Set javax.annotation.processing.RoundEnvironment com.oracle.truffle.dsl.processor.ProcessorContext com.oracle.truffle.dsl.processor.TruffleTypes java.util.Map java.util.Map com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo java.util.Iterator java.util.ListIterator
StackMap stack:
aload 9
invokeinterface java.util.ListIterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo
astore 10
start local 10 41: aload 10
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.valid:Z
ifeq 44
42: aload 0
getfield com.oracle.truffle.dsl.processor.OptionProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
aload 10
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.field:Ljavax/lang/model/element/VariableElement;
invokestatic com.oracle.truffle.dsl.processor.ExpectError.assertNoErrorExpected:(Ljavax/annotation/processing/ProcessingEnvironment;Ljavax/lang/model/element/Element;)V
43: goto 45
44: StackMap locals: com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo
StackMap stack:
aload 9
invokeinterface java.util.ListIterator.remove:()V
end local 10 45: StackMap locals:
StackMap stack:
aload 9
invokeinterface java.util.ListIterator.hasNext:()Z
ifne 40
46: aload 7
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo.options:Ljava/util/List;
new com.oracle.truffle.dsl.processor.OptionProcessor$1
dup
aload 0
invokespecial com.oracle.truffle.dsl.processor.OptionProcessor$1.<init>:(Lcom/oracle/truffle/dsl/processor/OptionProcessor;)V
invokestatic java.util.Collections.sort:(Ljava/util/List;Ljava/util/Comparator;)V
end local 9 end local 7 47: StackMap locals: com.oracle.truffle.dsl.processor.OptionProcessor java.util.Set javax.annotation.processing.RoundEnvironment com.oracle.truffle.dsl.processor.ProcessorContext com.oracle.truffle.dsl.processor.TruffleTypes java.util.Map java.util.Map top java.util.Iterator
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 37
48: aload 5
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 8
goto 54
StackMap locals:
StackMap stack:
49: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo
astore 7
start local 7 50: aload 7
invokestatic com.oracle.truffle.dsl.processor.OptionProcessor.generateOptionDescriptor:(Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionsInfo;)V
51: goto 54
StackMap locals: com.oracle.truffle.dsl.processor.OptionProcessor java.util.Set javax.annotation.processing.RoundEnvironment com.oracle.truffle.dsl.processor.ProcessorContext com.oracle.truffle.dsl.processor.TruffleTypes java.util.Map java.util.Map com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo java.util.Iterator
StackMap stack: java.lang.Throwable
52: astore 9
start local 9 53: aload 0
aload 9
aload 7
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo.type:Ljavax/lang/model/element/Element;
invokevirtual com.oracle.truffle.dsl.processor.OptionProcessor.handleThrowable:(Ljava/lang/Throwable;Ljavax/lang/model/element/Element;)V
end local 9 end local 7 54: StackMap locals: com.oracle.truffle.dsl.processor.OptionProcessor java.util.Set javax.annotation.processing.RoundEnvironment com.oracle.truffle.dsl.processor.ProcessorContext com.oracle.truffle.dsl.processor.TruffleTypes java.util.Map java.util.Map top java.util.Iterator
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 49
end local 6 end local 5 end local 4 55: goto 59
StackMap locals: com.oracle.truffle.dsl.processor.OptionProcessor java.util.Set javax.annotation.processing.RoundEnvironment com.oracle.truffle.dsl.processor.ProcessorContext
StackMap stack: java.lang.Throwable
56: astore 13
57: invokestatic com.oracle.truffle.dsl.processor.ProcessorContext.leave:()V
58: aload 13
athrow
59: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.dsl.processor.ProcessorContext.leave:()V
60: iconst_1
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 61 0 this Lcom/oracle/truffle/dsl/processor/OptionProcessor;
0 61 1 annotations Ljava/util/Set<+Ljavax/lang/model/element/TypeElement;>;
0 61 2 roundEnv Ljavax/annotation/processing/RoundEnvironment;
3 61 3 context Lcom/oracle/truffle/dsl/processor/ProcessorContext;
4 55 4 types Lcom/oracle/truffle/dsl/processor/TruffleTypes;
5 55 5 map Ljava/util/Map<Ljavax/lang/model/element/Element;Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionsInfo;>;
7 19 6 element Ljavax/lang/model/element/Element;
10 19 8 topElement Ljavax/lang/model/element/Element;
11 19 9 options Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionsInfo;
15 19 10 mirror Ljavax/lang/model/element/AnnotationMirror;
18 19 11 t Ljava/lang/Throwable;
21 55 6 seenKeys Ljava/util/Map<Ljava/lang/String;Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionInfo;>;
23 35 7 infos Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionsInfo;
25 34 9 info Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionInfo;
27 32 11 otherInfo Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionInfo;
28 32 12 message Ljava/lang/String;
38 47 7 infos Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionsInfo;
39 47 9 listIterator Ljava/util/ListIterator<Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionInfo;>;
41 45 10 info Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionInfo;
50 54 7 info Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionsInfo;
53 54 9 t Ljava/lang/Throwable;
Exception table:
from to target type
15 16 17 Class java.lang.Throwable
50 51 52 Class java.lang.Throwable
3 56 56 any
Signature: (Ljava/util/Set<+Ljavax/lang/model/element/TypeElement;>;Ljavax/annotation/processing/RoundEnvironment;)Z
MethodParameters:
Name Flags
annotations
roundEnv
private boolean processElement(javax.lang.model.element.Element, javax.lang.model.element.AnnotationMirror, com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo);
descriptor: (Ljavax/lang/model/element/Element;Ljavax/lang/model/element/AnnotationMirror;Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionsInfo;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=12, locals=28, args_size=4
start local 0 start local 1 start local 2 start local 3 0: invokestatic com.oracle.truffle.dsl.processor.ProcessorContext.getInstance:()Lcom/oracle/truffle/dsl/processor/ProcessorContext;
astore 4
start local 4 1: aload 4
invokevirtual com.oracle.truffle.dsl.processor.ProcessorContext.getTypes:()Lcom/oracle/truffle/dsl/processor/TruffleTypes;
astore 5
start local 5 2: 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 5
3: aload 1
aload 2
ldc "Option field must be static"
iconst_0
anewarray java.lang.Object
invokestatic com.oracle.truffle.dsl.processor.OptionProcessor.error:(Ljavax/lang/model/element/Element;Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;[Ljava/lang/Object;)V
4: iconst_0
ireturn
5: StackMap locals: com.oracle.truffle.dsl.processor.ProcessorContext com.oracle.truffle.dsl.processor.TruffleTypes
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 8
6: aload 1
aload 2
ldc "Option field cannot be private"
iconst_0
anewarray java.lang.Object
invokestatic com.oracle.truffle.dsl.processor.OptionProcessor.error:(Ljavax/lang/model/element/Element;Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;[Ljava/lang/Object;)V
7: iconst_0
ireturn
8: StackMap locals:
StackMap stack:
aconst_null
astore 6
start local 6 9: aload 3
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo.type:Ljavax/lang/model/element/Element;
aload 5
getfield com.oracle.truffle.dsl.processor.TruffleTypes.Option_Group:Ljavax/lang/model/type/DeclaredType;
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.findAnnotationMirror:(Ljavax/lang/model/element/Element;Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/element/AnnotationMirror;
astore 7
start local 7 10: aload 7
ifnull 13
11: ldc Ljava/lang/String;
aload 7
ldc "value"
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.getAnnotationValueList:(Ljava/lang/Class;Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;)Ljava/util/List;
astore 6
12: goto 32
13: StackMap locals: java.util.List javax.lang.model.element.AnnotationMirror
StackMap stack:
aload 4
invokevirtual com.oracle.truffle.dsl.processor.ProcessorContext.getEnvironment:()Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getTypeUtils:()Ljavax/lang/model/util/Types;
aload 5
getfield com.oracle.truffle.dsl.processor.TruffleTypes.TruffleLanguage:Ljavax/lang/model/type/DeclaredType;
invokeinterface javax.lang.model.util.Types.erasure:(Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/type/TypeMirror;
astore 8
start local 8 14: aload 4
invokevirtual com.oracle.truffle.dsl.processor.ProcessorContext.getEnvironment:()Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getTypeUtils:()Ljavax/lang/model/util/Types;
aload 3
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo.type:Ljavax/lang/model/element/Element;
invokeinterface javax.lang.model.element.Element.asType:()Ljavax/lang/model/type/TypeMirror;
aload 8
invokeinterface javax.lang.model.util.Types.isAssignable:(Ljavax/lang/model/type/TypeMirror;Ljavax/lang/model/type/TypeMirror;)Z
ifeq 23
15: aload 3
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo.type:Ljavax/lang/model/element/Element;
aload 5
getfield com.oracle.truffle.dsl.processor.TruffleTypes.TruffleLanguage_Registration:Ljavax/lang/model/type/DeclaredType;
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.findAnnotationMirror:(Ljavax/lang/model/element/Element;Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/element/AnnotationMirror;
astore 9
start local 9 16: aload 9
ifnull 32
17: iconst_1
anewarray java.lang.String
dup
iconst_0
ldc Ljava/lang/String;
aload 9
ldc "id"
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.getAnnotationValue:(Ljava/lang/Class;Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;)Ljava/lang/Object;
checkcast java.lang.String
aastore
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
astore 6
18: aload 6
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
invokevirtual java.lang.String.isEmpty:()Z
ifeq 32
19: aload 1
aload 2
ldc "%s must specify an id such that Truffle options can infer their prefix."
iconst_1
anewarray java.lang.Object
dup
iconst_0
20: aload 5
getfield com.oracle.truffle.dsl.processor.TruffleTypes.TruffleLanguage_Registration:Ljavax/lang/model/type/DeclaredType;
invokeinterface javax.lang.model.type.DeclaredType.asElement:()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;
aastore
21: invokestatic com.oracle.truffle.dsl.processor.OptionProcessor.error:(Ljavax/lang/model/element/Element;Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;[Ljava/lang/Object;)V
22: iconst_0
ireturn
end local 9 23: StackMap locals: javax.lang.model.type.TypeMirror
StackMap stack:
aload 4
invokevirtual com.oracle.truffle.dsl.processor.ProcessorContext.getEnvironment:()Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getTypeUtils:()Ljavax/lang/model/util/Types;
aload 3
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo.type:Ljavax/lang/model/element/Element;
invokeinterface javax.lang.model.element.Element.asType:()Ljavax/lang/model/type/TypeMirror;
aload 5
getfield com.oracle.truffle.dsl.processor.TruffleTypes.TruffleInstrument:Ljavax/lang/model/type/DeclaredType;
invokeinterface javax.lang.model.util.Types.isAssignable:(Ljavax/lang/model/type/TypeMirror;Ljavax/lang/model/type/TypeMirror;)Z
ifeq 32
24: aload 3
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo.type:Ljavax/lang/model/element/Element;
aload 5
getfield com.oracle.truffle.dsl.processor.TruffleTypes.TruffleInstrument_Registration:Ljavax/lang/model/type/DeclaredType;
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.findAnnotationMirror:(Ljavax/lang/model/element/Element;Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/element/AnnotationMirror;
astore 9
start local 9 25: aload 9
ifnull 32
26: iconst_1
anewarray java.lang.String
dup
iconst_0
ldc Ljava/lang/String;
aload 9
ldc "id"
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.getAnnotationValue:(Ljava/lang/Class;Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;)Ljava/lang/Object;
checkcast java.lang.String
aastore
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
astore 6
27: aload 6
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
invokevirtual java.lang.String.isEmpty:()Z
ifeq 32
28: aload 1
aload 2
ldc "%s must specify an id such that Truffle options can infer their prefix."
iconst_1
anewarray java.lang.Object
dup
iconst_0
29: aload 5
getfield com.oracle.truffle.dsl.processor.TruffleTypes.TruffleInstrument_Registration:Ljavax/lang/model/type/DeclaredType;
invokeinterface javax.lang.model.type.DeclaredType.asElement:()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;
aastore
30: invokestatic com.oracle.truffle.dsl.processor.OptionProcessor.error:(Ljavax/lang/model/element/Element;Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;[Ljava/lang/Object;)V
31: iconst_0
ireturn
end local 9 end local 8 32: StackMap locals:
StackMap stack:
aload 6
ifnull 33
aload 6
invokeinterface java.util.List.isEmpty:()Z
ifeq 34
33: StackMap locals:
StackMap stack:
iconst_1
anewarray java.lang.String
dup
iconst_0
ldc ""
aastore
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
astore 6
34: StackMap locals:
StackMap stack:
aload 1
aload 5
getfield com.oracle.truffle.dsl.processor.TruffleTypes.Option:Ljavax/lang/model/type/DeclaredType;
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.findAnnotationMirror:(Ljavax/lang/model/element/Element;Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/element/AnnotationMirror;
astore 8
start local 8 35: getstatic com.oracle.truffle.dsl.processor.OptionProcessor.$assertionsDisabled:Z
ifne 36
aload 8
ifnonnull 36
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
36: StackMap locals: javax.lang.model.element.AnnotationMirror
StackMap stack:
getstatic com.oracle.truffle.dsl.processor.OptionProcessor.$assertionsDisabled:Z
ifne 37
aload 1
instanceof javax.lang.model.element.VariableElement
ifne 37
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
37: StackMap locals:
StackMap stack:
getstatic com.oracle.truffle.dsl.processor.OptionProcessor.$assertionsDisabled:Z
ifne 38
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 38
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
38: StackMap locals:
StackMap stack:
aload 1
checkcast javax.lang.model.element.VariableElement
astore 9
start local 9 39: aload 9
invokeinterface javax.lang.model.element.VariableElement.getSimpleName:()Ljavax/lang/model/element/Name;
invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
astore 10
start local 10 40: aload 0
getfield com.oracle.truffle.dsl.processor.OptionProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getTypeUtils:()Ljavax/lang/model/util/Types;
astore 11
start local 11 41: aload 9
invokeinterface javax.lang.model.element.VariableElement.asType:()Ljavax/lang/model/type/TypeMirror;
astore 12
start local 12 42: aload 12
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 45
43: aload 1
aload 2
new java.lang.StringBuilder
dup
ldc "Option field must be of type "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
getfield com.oracle.truffle.dsl.processor.TruffleTypes.OptionKey:Ljavax/lang/model/type/DeclaredType;
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.getQualifiedName:(Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
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
invokestatic com.oracle.truffle.dsl.processor.OptionProcessor.error:(Ljavax/lang/model/element/Element;Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;[Ljava/lang/Object;)V
44: iconst_0
ireturn
45: StackMap locals: com.oracle.truffle.dsl.processor.OptionProcessor javax.lang.model.element.Element javax.lang.model.element.AnnotationMirror com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo com.oracle.truffle.dsl.processor.ProcessorContext com.oracle.truffle.dsl.processor.TruffleTypes java.util.List javax.lang.model.element.AnnotationMirror 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 11
aload 12
aload 11
aload 5
getfield com.oracle.truffle.dsl.processor.TruffleTypes.OptionKey:Ljavax/lang/model/type/DeclaredType;
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 48
46: aload 1
aload 2
ldc "Option field type %s is not a subclass of %s"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 12
aastore
dup
iconst_1
aload 5
getfield com.oracle.truffle.dsl.processor.TruffleTypes.OptionKey:Ljavax/lang/model/type/DeclaredType;
aastore
invokestatic com.oracle.truffle.dsl.processor.OptionProcessor.error:(Ljavax/lang/model/element/Element;Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;[Ljava/lang/Object;)V
47: iconst_0
ireturn
48: StackMap locals:
StackMap stack:
aload 9
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 51
49: aload 1
aload 2
ldc "Option field must be static"
iconst_0
anewarray java.lang.Object
invokestatic com.oracle.truffle.dsl.processor.OptionProcessor.error:(Ljavax/lang/model/element/Element;Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;[Ljava/lang/Object;)V
50: iconst_0
ireturn
51: StackMap locals:
StackMap stack:
aload 9
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 54
52: aload 1
aload 2
ldc "Option field cannot be private"
iconst_0
anewarray java.lang.Object
invokestatic com.oracle.truffle.dsl.processor.OptionProcessor.error:(Ljavax/lang/model/element/Element;Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;[Ljava/lang/Object;)V
53: iconst_0
ireturn
54: StackMap locals:
StackMap stack:
iconst_0
istore 13
start local 13 55: aload 5
getfield com.oracle.truffle.dsl.processor.TruffleTypes.OptionMap:Ljavax/lang/model/type/DeclaredType;
astore 14
start local 14 56: aload 12
checkcast javax.lang.model.type.DeclaredType
invokeinterface javax.lang.model.type.DeclaredType.getTypeArguments:()Ljava/util/List;
astore 15
start local 15 57: aload 15
invokeinterface java.util.List.size:()I
iconst_1
if_icmpne 59
58: aload 11
aload 15
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast javax.lang.model.type.TypeMirror
aload 11
aload 14
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
istore 13
59: StackMap locals: int javax.lang.model.type.TypeMirror java.util.List
StackMap stack:
ldc Ljava/lang/String;
aload 8
ldc "help"
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.getAnnotationValue:(Ljava/lang/Class;Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;)Ljava/lang/Object;
checkcast java.lang.String
astore 16
start local 16 60: aload 16
invokevirtual java.lang.String.length:()I
ifeq 65
61: aload 16
iconst_0
invokevirtual java.lang.String.charAt:(I)C
istore 17
start local 17 62: iload 17
invokestatic java.lang.Character.isUpperCase:(C)Z
ifne 65
63: aload 1
aload 2
ldc "Option help text must start with upper case letter"
iconst_0
anewarray java.lang.Object
invokestatic com.oracle.truffle.dsl.processor.OptionProcessor.error:(Ljavax/lang/model/element/Element;Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;[Ljava/lang/Object;)V
64: iconst_0
ireturn
end local 17 65: StackMap locals: java.lang.String
StackMap stack:
aload 2
ldc "name"
iconst_0
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.getAnnotationValue:(Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;Z)Ljavax/lang/model/element/AnnotationValue;
astore 17
start local 17 66: aload 17
ifnonnull 69
67: aload 10
astore 18
start local 18 68: goto 70
end local 18 69: StackMap locals: javax.lang.model.element.AnnotationValue
StackMap stack:
ldc Ljava/lang/String;
aload 8
ldc "name"
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.getAnnotationValue:(Ljava/lang/Class;Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;)Ljava/lang/Object;
checkcast java.lang.String
astore 18
start local 18 70: StackMap locals: java.lang.String
StackMap stack:
iload 13
ifeq 73
aload 18
ldc "."
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 73
71: aload 1
aload 2
ldc "Option (maps) cannot contain a '.' in the name"
iconst_0
anewarray java.lang.Object
invokestatic com.oracle.truffle.dsl.processor.OptionProcessor.error:(Ljavax/lang/model/element/Element;Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;[Ljava/lang/Object;)V
72: iconst_0
ireturn
73: StackMap locals:
StackMap stack:
ldc Ljava/lang/Boolean;
aload 8
ldc "deprecated"
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.getAnnotationValue:(Ljava/lang/Class;Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;)Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
istore 19
start local 19 74: ldc Ljavax/lang/model/element/VariableElement;
aload 8
ldc "category"
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.getAnnotationValue:(Ljava/lang/Class;Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;)Ljava/lang/Object;
checkcast javax.lang.model.element.VariableElement
astore 20
start local 20 75: aload 20
ifnull 76
aload 20
invokeinterface javax.lang.model.element.VariableElement.getSimpleName:()Ljavax/lang/model/element/Name;
invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
goto 77
StackMap locals: int javax.lang.model.element.VariableElement
StackMap stack:
76: aconst_null
StackMap locals:
StackMap stack: java.lang.String
77: astore 21
start local 21 78: aload 21
ifnonnull 80
79: ldc "INTERNAL"
astore 21
80: StackMap locals: java.lang.String
StackMap stack:
ldc Ljavax/lang/model/element/VariableElement;
aload 8
ldc "stability"
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.getAnnotationValue:(Ljava/lang/Class;Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;)Ljava/lang/Object;
checkcast javax.lang.model.element.VariableElement
astore 22
start local 22 81: aload 22
ifnull 82
aload 22
invokeinterface javax.lang.model.element.VariableElement.getSimpleName:()Ljavax/lang/model/element/Name;
invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
goto 83
StackMap locals: javax.lang.model.element.VariableElement
StackMap stack:
82: aconst_null
StackMap locals:
StackMap stack: java.lang.String
83: astore 23
start local 23 84: ldc Ljava/lang/String;
aload 8
ldc "deprecationMessage"
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.getAnnotationValue:(Ljava/lang/Class;Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;)Ljava/lang/Object;
checkcast java.lang.String
astore 24
start local 24 85: aload 24
invokevirtual java.lang.String.length:()I
ifeq 93
86: iload 19
ifne 89
87: aload 1
aload 2
ldc "Deprecation message can be specified only for deprecated options."
iconst_0
anewarray java.lang.Object
invokestatic com.oracle.truffle.dsl.processor.OptionProcessor.error:(Ljavax/lang/model/element/Element;Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;[Ljava/lang/Object;)V
88: iconst_0
ireturn
89: StackMap locals: java.lang.String java.lang.String
StackMap stack:
aload 24
iconst_0
invokevirtual java.lang.String.charAt:(I)C
istore 25
start local 25 90: iload 25
invokestatic java.lang.Character.isUpperCase:(C)Z
ifne 93
91: aload 1
aload 2
ldc "Option deprecation message must start with upper case letter."
iconst_0
anewarray java.lang.Object
invokestatic com.oracle.truffle.dsl.processor.OptionProcessor.error:(Ljavax/lang/model/element/Element;Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;[Ljava/lang/Object;)V
92: iconst_0
ireturn
end local 25 93: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 26
goto 106
StackMap locals: com.oracle.truffle.dsl.processor.OptionProcessor javax.lang.model.element.Element javax.lang.model.element.AnnotationMirror com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo com.oracle.truffle.dsl.processor.ProcessorContext com.oracle.truffle.dsl.processor.TruffleTypes java.util.List javax.lang.model.element.AnnotationMirror javax.lang.model.element.AnnotationMirror javax.lang.model.element.VariableElement java.lang.String javax.lang.model.util.Types javax.lang.model.type.TypeMirror int javax.lang.model.type.TypeMirror java.util.List java.lang.String javax.lang.model.element.AnnotationValue java.lang.String int javax.lang.model.element.VariableElement java.lang.String javax.lang.model.element.VariableElement java.lang.String java.lang.String top java.util.Iterator
StackMap stack:
94: aload 26
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 25
start local 25 95: aload 25
invokevirtual java.lang.String.isEmpty:()Z
ifeq 98
aload 18
invokevirtual java.lang.String.isEmpty:()Z
ifeq 98
96: aload 1
aload 2
ldc "Both group and option name cannot be empty"
iconst_0
anewarray java.lang.Object
invokestatic com.oracle.truffle.dsl.processor.OptionProcessor.error:(Ljavax/lang/model/element/Element;Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;[Ljava/lang/Object;)V
97: goto 106
98: StackMap locals: com.oracle.truffle.dsl.processor.OptionProcessor javax.lang.model.element.Element javax.lang.model.element.AnnotationMirror com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo com.oracle.truffle.dsl.processor.ProcessorContext com.oracle.truffle.dsl.processor.TruffleTypes java.util.List javax.lang.model.element.AnnotationMirror javax.lang.model.element.AnnotationMirror javax.lang.model.element.VariableElement java.lang.String javax.lang.model.util.Types javax.lang.model.type.TypeMirror int javax.lang.model.type.TypeMirror java.util.List java.lang.String javax.lang.model.element.AnnotationValue java.lang.String int javax.lang.model.element.VariableElement java.lang.String javax.lang.model.element.VariableElement java.lang.String java.lang.String java.lang.String java.util.Iterator
StackMap stack:
aload 18
invokevirtual java.lang.String.isEmpty:()Z
ifeq 101
99: aload 25
astore 27
start local 27 100: goto 105
end local 27 101: StackMap locals:
StackMap stack:
aload 25
invokevirtual java.lang.String.isEmpty:()Z
ifeq 104
102: aload 18
astore 27
start local 27 103: goto 105
end local 27 104: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 25
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 18
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 27
start local 27 105: StackMap locals: java.lang.String
StackMap stack:
aload 3
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo.options:Ljava/util/List;
new com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo
dup
aload 27
aload 16
aload 9
aload 2
iload 19
aload 21
aload 23
iload 13
aload 24
invokespecial com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.<init>:(Ljava/lang/String;Ljava/lang/String;Ljavax/lang/model/element/VariableElement;Ljavax/lang/model/element/AnnotationMirror;ZLjava/lang/String;Ljava/lang/String;ZLjava/lang/String;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 27 end local 25 106: StackMap locals: com.oracle.truffle.dsl.processor.OptionProcessor javax.lang.model.element.Element javax.lang.model.element.AnnotationMirror com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo com.oracle.truffle.dsl.processor.ProcessorContext com.oracle.truffle.dsl.processor.TruffleTypes java.util.List javax.lang.model.element.AnnotationMirror javax.lang.model.element.AnnotationMirror javax.lang.model.element.VariableElement java.lang.String javax.lang.model.util.Types javax.lang.model.type.TypeMirror int javax.lang.model.type.TypeMirror java.util.List java.lang.String javax.lang.model.element.AnnotationValue java.lang.String int javax.lang.model.element.VariableElement java.lang.String javax.lang.model.element.VariableElement java.lang.String java.lang.String top java.util.Iterator
StackMap stack:
aload 26
invokeinterface java.util.Iterator.hasNext:()Z
ifne 94
107: iconst_1
ireturn
end local 24 end local 23 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 108 0 this Lcom/oracle/truffle/dsl/processor/OptionProcessor;
0 108 1 element Ljavax/lang/model/element/Element;
0 108 2 elementAnnotation Ljavax/lang/model/element/AnnotationMirror;
0 108 3 info Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionsInfo;
1 108 4 context Lcom/oracle/truffle/dsl/processor/ProcessorContext;
2 108 5 types Lcom/oracle/truffle/dsl/processor/TruffleTypes;
9 108 6 groupPrefixStrings Ljava/util/List<Ljava/lang/String;>;
10 108 7 prefix Ljavax/lang/model/element/AnnotationMirror;
14 32 8 erasedTruffleType Ljavax/lang/model/type/TypeMirror;
16 23 9 registration Ljavax/lang/model/element/AnnotationMirror;
25 32 9 registration Ljavax/lang/model/element/AnnotationMirror;
35 108 8 annotation Ljavax/lang/model/element/AnnotationMirror;
39 108 9 field Ljavax/lang/model/element/VariableElement;
40 108 10 fieldName Ljava/lang/String;
41 108 11 typeUtils Ljavax/lang/model/util/Types;
42 108 12 fieldType Ljavax/lang/model/type/TypeMirror;
55 108 13 optionMap Z
56 108 14 optionMapType Ljavax/lang/model/type/TypeMirror;
57 108 15 typeArguments Ljava/util/List<+Ljavax/lang/model/type/TypeMirror;>;
60 108 16 help Ljava/lang/String;
62 65 17 firstChar C
66 108 17 value Ljavax/lang/model/element/AnnotationValue;
68 69 18 optionName Ljava/lang/String;
70 108 18 optionName Ljava/lang/String;
74 108 19 deprecated Z
75 108 20 categoryElement Ljavax/lang/model/element/VariableElement;
78 108 21 category Ljava/lang/String;
81 108 22 stabilityElement Ljavax/lang/model/element/VariableElement;
84 108 23 stability Ljava/lang/String;
85 108 24 deprecationMessage Ljava/lang/String;
90 93 25 firstChar C
95 106 25 group Ljava/lang/String;
100 101 27 name Ljava/lang/String;
103 104 27 name Ljava/lang/String;
105 106 27 name Ljava/lang/String;
MethodParameters:
Name Flags
element
elementAnnotation
info
private static void error(javax.lang.model.element.Element, javax.lang.model.element.AnnotationMirror, java.lang.String, java.lang.Object[]);
descriptor: (Ljavax/lang/model/element/Element;Ljavax/lang/model/element/AnnotationMirror;Ljava/lang/String;[Ljava/lang/Object;)V
flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
Code:
stack=5, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: invokestatic com.oracle.truffle.dsl.processor.ProcessorContext.getInstance:()Lcom/oracle/truffle/dsl/processor/ProcessorContext;
invokevirtual com.oracle.truffle.dsl.processor.ProcessorContext.getEnvironment:()Ljavax/annotation/processing/ProcessingEnvironment;
astore 4
start local 4 1: aload 2
aload 3
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
astore 5
start local 5 2: aload 4
aload 0
aload 5
invokestatic com.oracle.truffle.dsl.processor.ExpectError.isExpectedError:(Ljavax/annotation/processing/ProcessingEnvironment;Ljavax/lang/model/element/Element;Ljava/lang/String;)Z
ifeq 4
3: return
4: StackMap locals: javax.annotation.processing.ProcessingEnvironment java.lang.String
StackMap stack:
aload 4
invokeinterface javax.annotation.processing.ProcessingEnvironment.getMessager:()Ljavax/annotation/processing/Messager;
getstatic javax.tools.Diagnostic$Kind.ERROR:Ljavax/tools/Diagnostic$Kind;
aload 5
aload 0
aload 1
invokeinterface javax.annotation.processing.Messager.printMessage:(Ljavax/tools/Diagnostic$Kind;Ljava/lang/CharSequence;Ljavax/lang/model/element/Element;Ljavax/lang/model/element/AnnotationMirror;)V
5: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 element Ljavax/lang/model/element/Element;
0 6 1 annotation Ljavax/lang/model/element/AnnotationMirror;
0 6 2 message Ljava/lang/String;
0 6 3 args [Ljava/lang/Object;
1 6 4 processingEnv Ljavax/annotation/processing/ProcessingEnvironment;
2 6 5 formattedMessage Ljava/lang/String;
MethodParameters:
Name Flags
element
annotation
message
args
private static void generateOptionDescriptor(com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo);
descriptor: (Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionsInfo;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=6, args_size=1
start local 0 0: aload 0
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo.type:Ljavax/lang/model/element/Element;
astore 1
start local 1 1: invokestatic com.oracle.truffle.dsl.processor.ProcessorContext.getInstance:()Lcom/oracle/truffle/dsl/processor/ProcessorContext;
astore 2
start local 2 2: aload 2
aload 1
aload 0
invokestatic com.oracle.truffle.dsl.processor.OptionProcessor.generateDescriptors:(Lcom/oracle/truffle/dsl/processor/ProcessorContext;Ljavax/lang/model/element/Element;Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionsInfo;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTypeElement;
astore 3
start local 3 3: aload 2
ldc Ljava/lang/Override;
invokevirtual com.oracle.truffle.dsl.processor.ProcessorContext.getType:(Ljava/lang/Class;)Ljavax/lang/model/type/TypeMirror;
checkcast javax.lang.model.type.DeclaredType
astore 4
start local 4 4: aload 3
new com.oracle.truffle.dsl.processor.java.transform.GenerateOverrideVisitor
dup
aload 4
invokespecial com.oracle.truffle.dsl.processor.java.transform.GenerateOverrideVisitor.<init>:(Ljavax/lang/model/type/DeclaredType;)V
aconst_null
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTypeElement.accept:(Ljavax/lang/model/element/ElementVisitor;Ljava/lang/Object;)Ljava/lang/Object;
pop
5: aload 3
new com.oracle.truffle.dsl.processor.java.transform.FixWarningsVisitor
dup
aload 1
aload 4
invokespecial com.oracle.truffle.dsl.processor.java.transform.FixWarningsVisitor.<init>:(Ljavax/lang/model/element/Element;Ljavax/lang/model/type/DeclaredType;)V
aconst_null
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTypeElement.accept:(Ljavax/lang/model/element/ElementVisitor;Ljava/lang/Object;)Ljava/lang/Object;
pop
6: aload 3
new com.oracle.truffle.dsl.processor.CodeWriter
dup
aload 2
invokevirtual com.oracle.truffle.dsl.processor.ProcessorContext.getEnvironment:()Ljavax/annotation/processing/ProcessingEnvironment;
aload 1
invokespecial com.oracle.truffle.dsl.processor.CodeWriter.<init>:(Ljavax/annotation/processing/ProcessingEnvironment;Ljavax/lang/model/element/Element;)V
aconst_null
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTypeElement.accept:(Ljavax/lang/model/element/ElementVisitor;Ljava/lang/Object;)Ljava/lang/Object;
pop
7: goto 12
StackMap locals: com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo javax.lang.model.element.Element com.oracle.truffle.dsl.processor.ProcessorContext com.oracle.truffle.dsl.processor.java.model.CodeTypeElement javax.lang.model.type.DeclaredType
StackMap stack: java.lang.RuntimeException
8: astore 5
start local 5 9: aload 5
invokevirtual java.lang.RuntimeException.getCause:()Ljava/lang/Throwable;
instanceof javax.annotation.processing.FilerException
ifeq 12
10: aload 5
invokevirtual java.lang.RuntimeException.getCause:()Ljava/lang/Throwable;
invokevirtual java.lang.Throwable.getMessage:()Ljava/lang/String;
ldc "Source file already created"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 12
11: return
end local 5 12: 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 13 0 info Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionsInfo;
1 13 1 element Ljavax/lang/model/element/Element;
2 13 2 context Lcom/oracle/truffle/dsl/processor/ProcessorContext;
3 13 3 unit Lcom/oracle/truffle/dsl/processor/java/model/CodeTypeElement;
4 13 4 overrideType Ljavax/lang/model/type/DeclaredType;
9 12 5 e Ljava/lang/RuntimeException;
Exception table:
from to target type
6 7 8 Class java.lang.RuntimeException
MethodParameters:
Name Flags
info
private void handleThrowable(java.lang.Throwable, javax.lang.model.element.Element);
descriptor: (Ljava/lang/Throwable;Ljavax/lang/model/element/Element;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: new java.lang.StringBuilder
dup
ldc "Uncaught error in "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " while processing "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 3
start local 3 1: invokestatic com.oracle.truffle.dsl.processor.ProcessorContext.getInstance:()Lcom/oracle/truffle/dsl/processor/ProcessorContext;
invokevirtual com.oracle.truffle.dsl.processor.ProcessorContext.getEnvironment:()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
aload 3
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
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.printException:(Ljava/lang/Throwable;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 2
invokeinterface javax.annotation.processing.Messager.printMessage:(Ljavax/tools/Diagnostic$Kind;Ljava/lang/CharSequence;Ljavax/lang/model/element/Element;)V
2: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/dsl/processor/OptionProcessor;
0 3 1 t Ljava/lang/Throwable;
0 3 2 e Ljavax/lang/model/element/Element;
1 3 3 message Ljava/lang/String;
MethodParameters:
Name Flags
t
e
private static com.oracle.truffle.dsl.processor.java.model.CodeTypeElement generateDescriptors(com.oracle.truffle.dsl.processor.ProcessorContext, javax.lang.model.element.Element, com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo);
descriptor: (Lcom/oracle/truffle/dsl/processor/ProcessorContext;Ljavax/lang/model/element/Element;Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionsInfo;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTypeElement;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=19, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual com.oracle.truffle.dsl.processor.ProcessorContext.getTypes:()Lcom/oracle/truffle/dsl/processor/TruffleTypes;
astore 3
start local 3 1: new java.lang.StringBuilder
dup
aload 1
invokeinterface javax.lang.model.element.Element.asType:()Ljavax/lang/model/type/TypeMirror;
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.getSimpleName:(Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
getfield com.oracle.truffle.dsl.processor.TruffleTypes.OptionDescriptors:Ljavax/lang/model/type/DeclaredType;
invokeinterface javax.lang.model.type.DeclaredType.asElement:()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;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 4
start local 4 2: aload 2
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo.type:Ljavax/lang/model/element/Element;
checkcast javax.lang.model.element.TypeElement
astore 5
start local 5 3: aload 0
invokevirtual com.oracle.truffle.dsl.processor.ProcessorContext.getEnvironment:()Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getElementUtils:()Ljavax/lang/model/util/Elements;
aload 5
invokeinterface javax.lang.model.util.Elements.getPackageOf:(Ljavax/lang/model/element/Element;)Ljavax/lang/model/element/PackageElement;
astore 6
start local 6 4: iconst_1
anewarray javax.lang.model.element.Modifier
dup
iconst_0
getstatic javax.lang.model.element.Modifier.FINAL:Ljavax/lang/model/element/Modifier;
aastore
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.modifiers:([Ljavax/lang/model/element/Modifier;)Ljava/util/Set;
astore 7
start local 7 5: new com.oracle.truffle.dsl.processor.java.model.CodeTypeElement
dup
aload 7
getstatic javax.lang.model.element.ElementKind.CLASS:Ljavax/lang/model/element/ElementKind;
aload 6
aload 4
invokespecial com.oracle.truffle.dsl.processor.java.model.CodeTypeElement.<init>:(Ljava/util/Set;Ljavax/lang/model/element/ElementKind;Ljavax/lang/model/element/PackageElement;Ljava/lang/String;)V
astore 8
start local 8 6: aload 3
getfield com.oracle.truffle.dsl.processor.TruffleTypes.OptionDescriptors:Ljavax/lang/model/type/DeclaredType;
astore 9
start local 9 7: aload 8
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTypeElement.getImplements:()Ljava/util/List;
aload 9
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
8: aload 0
aload 8
aload 1
checkcast javax.lang.model.element.TypeElement
invokestatic com.oracle.truffle.dsl.processor.generator.GeneratorUtils.addGeneratedBy:(Lcom/oracle/truffle/dsl/processor/ProcessorContext;Lcom/oracle/truffle/dsl/processor/java/model/CodeTypeElement;Ljavax/lang/model/element/TypeElement;)V
9: aload 9
ldc "get"
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.findExecutableElement:(Ljavax/lang/model/type/DeclaredType;Ljava/lang/String;)Ljavax/lang/model/element/ExecutableElement;
astore 10
start local 10 10: aload 10
invokestatic com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement.clone:(Ljavax/lang/model/element/ExecutableElement;)Lcom/oracle/truffle/dsl/processor/java/model/CodeExecutableElement;
astore 11
start local 11 11: aload 11
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement.getModifiers:()Ljava/util/Set;
getstatic javax.lang.model.element.Modifier.ABSTRACT:Ljavax/lang/model/element/Modifier;
invokeinterface java.util.Set.remove:(Ljava/lang/Object;)Z
pop
12: aload 11
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement.createBuilder:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
astore 12
start local 12 13: aload 11
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement.getParameters:()Ljava/util/List;
iconst_0
invokeinterface java.util.List.get:(I)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 13
start local 13 14: iconst_0
istore 14
start local 14 15: aload 2
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo.options:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 16
goto 26
StackMap locals: com.oracle.truffle.dsl.processor.ProcessorContext javax.lang.model.element.Element com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo com.oracle.truffle.dsl.processor.TruffleTypes java.lang.String javax.lang.model.element.TypeElement javax.lang.model.element.PackageElement java.util.Set com.oracle.truffle.dsl.processor.java.model.CodeTypeElement javax.lang.model.type.DeclaredType javax.lang.model.element.ExecutableElement com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder java.lang.String int top java.util.Iterator
StackMap stack:
16: aload 16
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo
astore 15
start local 15 17: aload 15
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.optionMap:Z
ifne 19
18: goto 26
19: StackMap locals: com.oracle.truffle.dsl.processor.ProcessorContext javax.lang.model.element.Element com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo com.oracle.truffle.dsl.processor.TruffleTypes java.lang.String javax.lang.model.element.TypeElement javax.lang.model.element.PackageElement java.util.Set com.oracle.truffle.dsl.processor.java.model.CodeTypeElement javax.lang.model.type.DeclaredType javax.lang.model.element.ExecutableElement com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder java.lang.String int com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo java.util.Iterator
StackMap stack:
aload 12
iload 14
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startIf:(Z)Z
istore 14
20: aload 12
aload 13
ldc "startsWith"
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startCall:(Ljava/lang/String;Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
new java.lang.StringBuilder
dup
aload 15
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.name: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;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.doubleQuote:(Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
21: aload 12
ldc " || "
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.string:(Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
22: aload 12
aload 13
ldc "equals"
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startCall:(Ljava/lang/String;Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
aload 15
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.name:Ljava/lang/String;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.doubleQuote:(Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
23: aload 12
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startBlock:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
24: aload 12
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startReturn:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
aload 0
aload 15
invokestatic com.oracle.truffle.dsl.processor.OptionProcessor.createBuildOptionDescriptor:(Lcom/oracle/truffle/dsl/processor/ProcessorContext;Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionInfo;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.tree:(Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
25: aload 12
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
end local 15 26: StackMap locals: com.oracle.truffle.dsl.processor.ProcessorContext javax.lang.model.element.Element com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo com.oracle.truffle.dsl.processor.TruffleTypes java.lang.String javax.lang.model.element.TypeElement javax.lang.model.element.PackageElement java.util.Set com.oracle.truffle.dsl.processor.java.model.CodeTypeElement javax.lang.model.type.DeclaredType javax.lang.model.element.ExecutableElement com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder java.lang.String int top java.util.Iterator
StackMap stack:
aload 16
invokeinterface java.util.Iterator.hasNext:()Z
ifne 16
27: iconst_0
istore 15
start local 15 28: aload 2
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo.options:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 17
goto 38
StackMap locals: com.oracle.truffle.dsl.processor.ProcessorContext javax.lang.model.element.Element com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo com.oracle.truffle.dsl.processor.TruffleTypes java.lang.String javax.lang.model.element.TypeElement javax.lang.model.element.PackageElement java.util.Set com.oracle.truffle.dsl.processor.java.model.CodeTypeElement javax.lang.model.type.DeclaredType javax.lang.model.element.ExecutableElement com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder java.lang.String int int top java.util.Iterator
StackMap stack:
29: aload 17
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo
astore 16
start local 16 30: aload 16
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.optionMap:Z
ifeq 32
31: goto 38
32: StackMap locals: com.oracle.truffle.dsl.processor.ProcessorContext javax.lang.model.element.Element com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo com.oracle.truffle.dsl.processor.TruffleTypes java.lang.String javax.lang.model.element.TypeElement javax.lang.model.element.PackageElement java.util.Set com.oracle.truffle.dsl.processor.java.model.CodeTypeElement javax.lang.model.type.DeclaredType javax.lang.model.element.ExecutableElement com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder java.lang.String int int com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo java.util.Iterator
StackMap stack:
iload 15
ifne 35
33: aload 12
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startSwitch:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
aload 13
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.string:(Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startBlock:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
34: iconst_1
istore 15
35: StackMap locals:
StackMap stack:
aload 12
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startCase:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
aload 16
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.name:Ljava/lang/String;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.doubleQuote:(Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startCaseBlock:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
36: aload 12
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startReturn:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
aload 0
aload 16
invokestatic com.oracle.truffle.dsl.processor.OptionProcessor.createBuildOptionDescriptor:(Lcom/oracle/truffle/dsl/processor/ProcessorContext;Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionInfo;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.tree:(Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
37: aload 12
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
end local 16 38: StackMap locals: com.oracle.truffle.dsl.processor.ProcessorContext javax.lang.model.element.Element com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo com.oracle.truffle.dsl.processor.TruffleTypes java.lang.String javax.lang.model.element.TypeElement javax.lang.model.element.PackageElement java.util.Set com.oracle.truffle.dsl.processor.java.model.CodeTypeElement javax.lang.model.type.DeclaredType javax.lang.model.element.ExecutableElement com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder java.lang.String int int top java.util.Iterator
StackMap stack:
aload 17
invokeinterface java.util.Iterator.hasNext:()Z
ifne 29
39: iload 15
ifeq 41
40: aload 12
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
41: StackMap locals: com.oracle.truffle.dsl.processor.ProcessorContext javax.lang.model.element.Element com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo com.oracle.truffle.dsl.processor.TruffleTypes java.lang.String javax.lang.model.element.TypeElement javax.lang.model.element.PackageElement java.util.Set com.oracle.truffle.dsl.processor.java.model.CodeTypeElement javax.lang.model.type.DeclaredType javax.lang.model.element.ExecutableElement com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder java.lang.String int int
StackMap stack:
aload 12
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.returnNull:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
42: aload 8
aload 11
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTypeElement.add:(Ljavax/lang/model/element/Element;)Ljavax/lang/model/element/Element;
pop
43: aload 9
ldc "iterator"
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.findExecutableElement:(Ljavax/lang/model/type/DeclaredType;Ljava/lang/String;)Ljavax/lang/model/element/ExecutableElement;
invokestatic com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement.clone:(Ljavax/lang/model/element/ExecutableElement;)Lcom/oracle/truffle/dsl/processor/java/model/CodeExecutableElement;
astore 16
start local 16 44: aload 16
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement.getModifiers:()Ljava/util/Set;
getstatic javax.lang.model.element.Modifier.ABSTRACT:Ljavax/lang/model/element/Modifier;
invokeinterface java.util.Set.remove:(Ljava/lang/Object;)Z
pop
45: aload 16
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement.createBuilder:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
astore 12
46: aload 12
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startReturn:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
47: aload 2
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo.options:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 50
48: aload 12
aload 0
ldc Ljava/util/Collections;
invokevirtual com.oracle.truffle.dsl.processor.ProcessorContext.getType:(Ljava/lang/Class;)Ljavax/lang/model/type/TypeMirror;
ldc "<OptionDescriptor> emptyList().iterator"
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startStaticCall:(Ljavax/lang/model/type/TypeMirror;Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
49: goto 63
50: StackMap locals: com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement
StackMap stack:
aload 12
aload 0
ldc Ljava/util/Arrays;
invokevirtual com.oracle.truffle.dsl.processor.ProcessorContext.getType:(Ljava/lang/Class;)Ljavax/lang/model/type/TypeMirror;
ldc "asList"
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startStaticCall:(Ljavax/lang/model/type/TypeMirror;Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
51: aload 2
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo.options:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 18
goto 59
StackMap locals: com.oracle.truffle.dsl.processor.ProcessorContext javax.lang.model.element.Element com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo com.oracle.truffle.dsl.processor.TruffleTypes java.lang.String javax.lang.model.element.TypeElement javax.lang.model.element.PackageElement java.util.Set com.oracle.truffle.dsl.processor.java.model.CodeTypeElement javax.lang.model.type.DeclaredType javax.lang.model.element.ExecutableElement com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder java.lang.String int int com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement top java.util.Iterator
StackMap stack:
52: aload 18
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo
astore 17
start local 17 53: aload 12
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startGroup:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
54: aload 12
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startIndention:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
55: aload 12
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.newLine:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
56: aload 12
aload 0
aload 17
invokestatic com.oracle.truffle.dsl.processor.OptionProcessor.createBuildOptionDescriptor:(Lcom/oracle/truffle/dsl/processor/ProcessorContext;Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionInfo;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.tree:(Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
57: aload 12
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
58: aload 12
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
end local 17 59: StackMap locals:
StackMap stack:
aload 18
invokeinterface java.util.Iterator.hasNext:()Z
ifne 52
60: aload 12
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
61: aload 12
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.newLine:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
62: aload 12
ldc ""
ldc "iterator"
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startCall:(Ljava/lang/String;Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
63: StackMap locals: com.oracle.truffle.dsl.processor.ProcessorContext javax.lang.model.element.Element com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo com.oracle.truffle.dsl.processor.TruffleTypes java.lang.String javax.lang.model.element.TypeElement javax.lang.model.element.PackageElement java.util.Set com.oracle.truffle.dsl.processor.java.model.CodeTypeElement javax.lang.model.type.DeclaredType javax.lang.model.element.ExecutableElement com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder java.lang.String int int com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement
StackMap stack:
aload 12
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
64: aload 8
aload 16
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTypeElement.add:(Ljavax/lang/model/element/Element;)Ljavax/lang/model/element/Element;
pop
65: aload 8
areturn
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 66 0 context Lcom/oracle/truffle/dsl/processor/ProcessorContext;
0 66 1 element Ljavax/lang/model/element/Element;
0 66 2 model Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionsInfo;
1 66 3 types Lcom/oracle/truffle/dsl/processor/TruffleTypes;
2 66 4 optionsClassName Ljava/lang/String;
3 66 5 sourceType Ljavax/lang/model/element/TypeElement;
4 66 6 pack Ljavax/lang/model/element/PackageElement;
5 66 7 typeModifiers Ljava/util/Set<Ljavax/lang/model/element/Modifier;>;
6 66 8 descriptors Lcom/oracle/truffle/dsl/processor/java/model/CodeTypeElement;
7 66 9 optionDescriptorsType Ljavax/lang/model/type/DeclaredType;
10 66 10 get Ljavax/lang/model/element/ExecutableElement;
11 66 11 getMethod Lcom/oracle/truffle/dsl/processor/java/model/CodeExecutableElement;
13 66 12 builder Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
14 66 13 nameVariableName Ljava/lang/String;
15 66 14 elseIf Z
17 26 15 info Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionInfo;
28 66 15 startSwitch Z
30 38 16 info Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionInfo;
44 66 16 iteratorMethod Lcom/oracle/truffle/dsl/processor/java/model/CodeExecutableElement;
53 59 17 info Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionInfo;
MethodParameters:
Name Flags
context
element
model
private static com.oracle.truffle.dsl.processor.java.model.CodeTree createBuildOptionDescriptor(com.oracle.truffle.dsl.processor.ProcessorContext, com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo);
descriptor: (Lcom/oracle/truffle/dsl/processor/ProcessorContext;Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionInfo;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: invokestatic com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.createBuilder:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
astore 2
start local 2 1: aload 0
invokevirtual com.oracle.truffle.dsl.processor.ProcessorContext.getTypes:()Lcom/oracle/truffle/dsl/processor/TruffleTypes;
astore 3
start local 3 2: aload 2
aload 3
getfield com.oracle.truffle.dsl.processor.TruffleTypes.OptionDescriptor:Ljavax/lang/model/type/DeclaredType;
ldc "newBuilder"
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startStaticCall:(Ljavax/lang/model/type/TypeMirror;Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
3: aload 1
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.field:Ljavax/lang/model/element/VariableElement;
astore 4
start local 4 4: aload 2
aload 4
invokeinterface javax.lang.model.element.VariableElement.getEnclosingElement:()Ljavax/lang/model/element/Element;
invokeinterface javax.lang.model.element.Element.asType:()Ljavax/lang/model/type/TypeMirror;
aload 4
invokeinterface javax.lang.model.element.VariableElement.getSimpleName:()Ljavax/lang/model/element/Name;
invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.staticReference:(Ljavax/lang/model/type/TypeMirror;Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
5: aload 2
aload 1
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.name:Ljava/lang/String;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.doubleQuote:(Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
6: aload 2
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
7: aload 1
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.deprecated:Z
ifeq 11
8: aload 2
ldc ""
ldc "deprecated"
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startCall:(Ljava/lang/String;Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
ldc "true"
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.string:(Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
9: aload 2
ldc ""
ldc "deprecationMessage"
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startCall:(Ljava/lang/String;Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
aload 1
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.deprecationMessage:Ljava/lang/String;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.doubleQuote:(Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
10: goto 12
11: StackMap locals: com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder com.oracle.truffle.dsl.processor.TruffleTypes javax.lang.model.element.VariableElement
StackMap stack:
aload 2
ldc ""
ldc "deprecated"
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startCall:(Ljava/lang/String;Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
ldc "false"
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.string:(Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
12: StackMap locals:
StackMap stack:
aload 2
ldc ""
ldc "help"
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startCall:(Ljava/lang/String;Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
aload 1
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.help:Ljava/lang/String;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.doubleQuote:(Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
13: aload 2
ldc ""
ldc "category"
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startCall:(Ljava/lang/String;Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
aload 3
getfield com.oracle.truffle.dsl.processor.TruffleTypes.OptionCategory:Ljavax/lang/model/type/DeclaredType;
aload 1
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.category:Ljava/lang/String;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.staticReference:(Ljavax/lang/model/type/TypeMirror;Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
14: aload 2
ldc ""
ldc "stability"
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startCall:(Ljava/lang/String;Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
aload 3
getfield com.oracle.truffle.dsl.processor.TruffleTypes.OptionStability:Ljavax/lang/model/type/DeclaredType;
aload 1
getfield com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo.stability:Ljava/lang/String;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.staticReference:(Ljavax/lang/model/type/TypeMirror;Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
15: aload 2
ldc ""
ldc "build"
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startCall:(Ljava/lang/String;Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
16: aload 2
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.build:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 context Lcom/oracle/truffle/dsl/processor/ProcessorContext;
0 17 1 info Lcom/oracle/truffle/dsl/processor/OptionProcessor$OptionInfo;
1 17 2 builder Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
2 17 3 types Lcom/oracle/truffle/dsl/processor/TruffleTypes;
4 17 4 var Ljavax/lang/model/element/VariableElement;
MethodParameters:
Name Flags
context
info
}
SourceFile: "OptionProcessor.java"
NestMembers:
com.oracle.truffle.dsl.processor.OptionProcessor$1 com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo
InnerClasses:
com.oracle.truffle.dsl.processor.OptionProcessor$1
OptionInfo = com.oracle.truffle.dsl.processor.OptionProcessor$OptionInfo of com.oracle.truffle.dsl.processor.OptionProcessor
OptionsInfo = com.oracle.truffle.dsl.processor.OptionProcessor$OptionsInfo of com.oracle.truffle.dsl.processor.OptionProcessor
public final Kind = javax.tools.Diagnostic$Kind of javax.tools.Diagnostic
RuntimeVisibleAnnotations:
javax.annotation.processing.SupportedAnnotationTypes(value = {"com.oracle.truffle.api.Option", "com.oracle.truffle.api.Option.Group"})