public class io.vertx.codetrans.CodeTranslator
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: io.vertx.codetrans.CodeTranslator
super_class: java.lang.Object
{
private final com.sun.source.util.Trees trees;
descriptor: Lcom/sun/source/util/Trees;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final javax.lang.model.type.DeclaredType SystemType;
descriptor: Ljavax/lang/model/type/DeclaredType;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final javax.lang.model.type.DeclaredType ThrowableType;
descriptor: Ljavax/lang/model/type/DeclaredType;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.sun.tools.javac.comp.Attr attr;
descriptor: Lcom/sun/tools/javac/comp/Attr;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.vertx.codegen.type.TypeMirrorFactory factory;
descriptor: Lio/vertx/codegen/type/TypeMirrorFactory;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final javax.lang.model.util.Types typeUtils;
descriptor: Ljavax/lang/model/util/Types;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
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 Lio/vertx/codetrans/CodeTranslator;
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 io.vertx.codetrans.CodeTranslator.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(javax.annotation.processing.ProcessingEnvironment);
descriptor: (Ljavax/annotation/processing/ProcessingEnvironment;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
invokestatic com.sun.source.util.Trees.instance:(Ljavax/annotation/processing/ProcessingEnvironment;)Lcom/sun/source/util/Trees;
putfield io.vertx.codetrans.CodeTranslator.trees:Lcom/sun/source/util/Trees;
2: aload 0
aload 1
invokeinterface javax.annotation.processing.ProcessingEnvironment.getElementUtils:()Ljavax/lang/model/util/Elements;
ldc Ljava/lang/System;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokeinterface javax.lang.model.util.Elements.getTypeElement:(Ljava/lang/CharSequence;)Ljavax/lang/model/element/TypeElement;
invokeinterface javax.lang.model.element.TypeElement.asType:()Ljavax/lang/model/type/TypeMirror;
checkcast javax.lang.model.type.DeclaredType
putfield io.vertx.codetrans.CodeTranslator.SystemType:Ljavax/lang/model/type/DeclaredType;
3: aload 0
aload 1
invokeinterface javax.annotation.processing.ProcessingEnvironment.getElementUtils:()Ljavax/lang/model/util/Elements;
ldc Ljava/lang/Throwable;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokeinterface javax.lang.model.util.Elements.getTypeElement:(Ljava/lang/CharSequence;)Ljavax/lang/model/element/TypeElement;
invokeinterface javax.lang.model.element.TypeElement.asType:()Ljavax/lang/model/type/TypeMirror;
checkcast javax.lang.model.type.DeclaredType
putfield io.vertx.codetrans.CodeTranslator.ThrowableType:Ljavax/lang/model/type/DeclaredType;
4: aload 1
checkcast com.sun.tools.javac.processing.JavacProcessingEnvironment
invokevirtual com.sun.tools.javac.processing.JavacProcessingEnvironment.getContext:()Lcom/sun/tools/javac/util/Context;
astore 2
start local 2 5: aload 0
aload 2
invokestatic com.sun.tools.javac.comp.Attr.instance:(Lcom/sun/tools/javac/util/Context;)Lcom/sun/tools/javac/comp/Attr;
putfield io.vertx.codetrans.CodeTranslator.attr:Lcom/sun/tools/javac/comp/Attr;
6: aload 0
aload 1
invokeinterface javax.annotation.processing.ProcessingEnvironment.getTypeUtils:()Ljavax/lang/model/util/Types;
putfield io.vertx.codetrans.CodeTranslator.typeUtils:Ljavax/lang/model/util/Types;
7: aload 0
new io.vertx.codetrans.CodeTranslator$1
dup
aload 0
aload 1
invokeinterface javax.annotation.processing.ProcessingEnvironment.getElementUtils:()Ljavax/lang/model/util/Elements;
aload 1
invokeinterface javax.annotation.processing.ProcessingEnvironment.getTypeUtils:()Ljavax/lang/model/util/Types;
invokespecial io.vertx.codetrans.CodeTranslator$1.<init>:(Lio/vertx/codetrans/CodeTranslator;Ljavax/lang/model/util/Elements;Ljavax/lang/model/util/Types;)V
putfield io.vertx.codetrans.CodeTranslator.factory:Lio/vertx/codegen/type/TypeMirrorFactory;
8: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lio/vertx/codetrans/CodeTranslator;
0 9 1 processingEnv Ljavax/annotation/processing/ProcessingEnvironment;
5 9 2 context Lcom/sun/tools/javac/util/Context;
MethodParameters:
Name Flags
processingEnv
public java.lang.String translate(javax.lang.model.element.ExecutableElement, io.vertx.codetrans.Lang);
descriptor: (Ljavax/lang/model/element/ExecutableElement;Lio/vertx/codetrans/Lang;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
iconst_0
aload 2
getstatic io.vertx.codetrans.RenderMode.SNIPPET:Lio/vertx/codetrans/RenderMode;
invokevirtual io.vertx.codetrans.CodeTranslator.translate:(Ljavax/lang/model/element/ExecutableElement;ZLio/vertx/codetrans/Lang;Lio/vertx/codetrans/RenderMode;)Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/codetrans/CodeTranslator;
0 1 1 methodElt Ljavax/lang/model/element/ExecutableElement;
0 1 2 lang Lio/vertx/codetrans/Lang;
MethodParameters:
Name Flags
methodElt
lang
public java.lang.String translate(javax.lang.model.element.ExecutableElement, boolean, io.vertx.codetrans.Lang);
descriptor: (Ljavax/lang/model/element/ExecutableElement;ZLio/vertx/codetrans/Lang;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
iload 2
aload 3
getstatic io.vertx.codetrans.RenderMode.SNIPPET:Lio/vertx/codetrans/RenderMode;
invokevirtual io.vertx.codetrans.CodeTranslator.translate:(Ljavax/lang/model/element/ExecutableElement;ZLio/vertx/codetrans/Lang;Lio/vertx/codetrans/RenderMode;)Ljava/lang/String;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/codetrans/CodeTranslator;
0 1 1 methodElt Ljavax/lang/model/element/ExecutableElement;
0 1 2 isVerticle Z
0 1 3 lang Lio/vertx/codetrans/Lang;
MethodParameters:
Name Flags
methodElt
isVerticle
lang
public java.lang.String translate(javax.lang.model.element.ExecutableElement, boolean, io.vertx.codetrans.Lang, io.vertx.codetrans.RenderMode);
descriptor: (Ljavax/lang/model/element/ExecutableElement;ZLio/vertx/codetrans/Lang;Lio/vertx/codetrans/RenderMode;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=19, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
invokeinterface javax.lang.model.element.ExecutableElement.getEnclosingElement:()Ljavax/lang/model/element/Element;
checkcast javax.lang.model.element.TypeElement
astore 5
start local 5 1: aload 0
aload 5
invokevirtual io.vertx.codetrans.CodeTranslator.attributeClass:(Ljavax/lang/model/element/Element;)V
2: new io.vertx.codetrans.ModelBuilder
dup
aload 0
getfield io.vertx.codetrans.CodeTranslator.trees:Lcom/sun/source/util/Trees;
aload 5
aload 0
getfield io.vertx.codetrans.CodeTranslator.SystemType:Ljavax/lang/model/type/DeclaredType;
aload 0
getfield io.vertx.codetrans.CodeTranslator.ThrowableType:Ljavax/lang/model/type/DeclaredType;
aload 0
getfield io.vertx.codetrans.CodeTranslator.factory:Lio/vertx/codegen/type/TypeMirrorFactory;
aload 0
getfield io.vertx.codetrans.CodeTranslator.typeUtils:Ljavax/lang/model/util/Types;
aload 3
invokespecial io.vertx.codetrans.ModelBuilder.<init>:(Lcom/sun/source/util/Trees;Ljavax/lang/model/element/TypeElement;Ljavax/lang/model/type/DeclaredType;Ljavax/lang/model/type/DeclaredType;Lio/vertx/codegen/type/TypeMirrorFactory;Ljavax/lang/model/util/Types;Lio/vertx/codetrans/Lang;)V
astore 6
start local 6 3: new io.vertx.codetrans.VisitContext
dup
aload 3
invokeinterface io.vertx.codetrans.Lang.codeBuilder:()Lio/vertx/codetrans/CodeBuilder;
invokespecial io.vertx.codetrans.VisitContext.<init>:(Lio/vertx/codetrans/CodeBuilder;)V
astore 7
start local 7 4: aload 6
aload 1
aload 7
invokevirtual io.vertx.codetrans.ModelBuilder.build:(Ljavax/lang/model/element/ExecutableElement;Lio/vertx/codetrans/VisitContext;)Lio/vertx/codetrans/MethodModel;
astore 8
start local 8 5: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 9
start local 9 6: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 10
start local 10 7: aload 7
invokevirtual io.vertx.codetrans.VisitContext.getReferencedMethods:()Ljava/util/Set;
invokeinterface java.util.Set.stream:()Ljava/util/stream/Stream;
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
io/vertx/codetrans/CodeTranslator.lambda$0(Ljava/lang/String;)Ljava/lang/String; (6)
(Ljava/lang/String;)Ljava/lang/String;
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
io/vertx/codetrans/CodeTranslator.lambda$1(Ljava/lang/String;)Ljava/lang/Boolean; (6)
(Ljava/lang/String;)Ljava/lang/Boolean;
invokestatic java.util.stream.Collectors.toMap:(Ljava/util/function/Function;Ljava/util/function/Function;)Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.util.Map
astore 11
start local 11 8: aload 7
invokevirtual io.vertx.codetrans.VisitContext.getReferencedFields:()Ljava/util/Set;
aload 11
invokedynamic accept(Ljava/util/Map;)Ljava/util/function/Consumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
io/vertx/codetrans/CodeTranslator.lambda$2(Ljava/util/Map;Ljava/lang/String;)V (6)
(Ljava/lang/String;)V
invokeinterface java.util.Set.forEach:(Ljava/util/function/Consumer;)V
9: goto 47
10: StackMap locals: io.vertx.codetrans.CodeTranslator javax.lang.model.element.ExecutableElement int io.vertx.codetrans.Lang io.vertx.codetrans.RenderMode javax.lang.model.element.TypeElement io.vertx.codetrans.ModelBuilder io.vertx.codetrans.VisitContext io.vertx.codetrans.MethodModel java.util.Map java.util.Map java.util.Map
StackMap stack:
aload 11
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 12
start local 12 11: aload 12
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 13
start local 13 12: aload 13
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast java.lang.String
astore 14
start local 14 13: aload 12
invokeinterface java.util.Iterator.remove:()V
14: aconst_null
astore 15
start local 15 15: aload 13
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
ifeq 24
16: aload 5
invokeinterface javax.lang.model.element.TypeElement.getEnclosedElements:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 17
goto 22
StackMap locals: io.vertx.codetrans.CodeTranslator javax.lang.model.element.ExecutableElement int io.vertx.codetrans.Lang io.vertx.codetrans.RenderMode javax.lang.model.element.TypeElement io.vertx.codetrans.ModelBuilder io.vertx.codetrans.VisitContext io.vertx.codetrans.MethodModel java.util.Map java.util.Map java.util.Map java.util.Iterator java.util.Map$Entry java.lang.String io.vertx.codetrans.VisitContext top java.util.Iterator
StackMap stack:
17: aload 17
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast javax.lang.model.element.Element
astore 16
start local 16 18: aload 16
instanceof javax.lang.model.element.ExecutableElement
ifeq 22
aload 16
invokeinterface javax.lang.model.element.Element.getSimpleName:()Ljavax/lang/model/element/Name;
invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
aload 14
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 22
19: new io.vertx.codetrans.VisitContext
dup
aload 7
getfield io.vertx.codetrans.VisitContext.builder:Lio/vertx/codetrans/CodeBuilder;
invokespecial io.vertx.codetrans.VisitContext.<init>:(Lio/vertx/codetrans/CodeBuilder;)V
astore 15
20: aload 6
aload 16
checkcast javax.lang.model.element.ExecutableElement
aload 15
invokevirtual io.vertx.codetrans.ModelBuilder.build:(Ljavax/lang/model/element/ExecutableElement;Lio/vertx/codetrans/VisitContext;)Lio/vertx/codetrans/MethodModel;
astore 18
start local 18 21: aload 9
aload 14
aload 18
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 18 end local 16 22: StackMap locals:
StackMap stack:
aload 17
invokeinterface java.util.Iterator.hasNext:()Z
ifne 17
23: goto 31
24: StackMap locals: io.vertx.codetrans.CodeTranslator javax.lang.model.element.ExecutableElement int io.vertx.codetrans.Lang io.vertx.codetrans.RenderMode javax.lang.model.element.TypeElement io.vertx.codetrans.ModelBuilder io.vertx.codetrans.VisitContext io.vertx.codetrans.MethodModel java.util.Map java.util.Map java.util.Map java.util.Iterator java.util.Map$Entry java.lang.String io.vertx.codetrans.VisitContext
StackMap stack:
aload 5
invokeinterface javax.lang.model.element.TypeElement.getEnclosedElements:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 17
goto 30
StackMap locals: io.vertx.codetrans.CodeTranslator javax.lang.model.element.ExecutableElement int io.vertx.codetrans.Lang io.vertx.codetrans.RenderMode javax.lang.model.element.TypeElement io.vertx.codetrans.ModelBuilder io.vertx.codetrans.VisitContext io.vertx.codetrans.MethodModel java.util.Map java.util.Map java.util.Map java.util.Iterator java.util.Map$Entry java.lang.String io.vertx.codetrans.VisitContext top java.util.Iterator
StackMap stack:
25: aload 17
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast javax.lang.model.element.Element
astore 16
start local 16 26: aload 16
instanceof javax.lang.model.element.VariableElement
ifeq 30
aload 16
invokeinterface javax.lang.model.element.Element.getSimpleName:()Ljavax/lang/model/element/Name;
invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
aload 14
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 30
27: new io.vertx.codetrans.VisitContext
dup
aload 7
getfield io.vertx.codetrans.VisitContext.builder:Lio/vertx/codetrans/CodeBuilder;
invokespecial io.vertx.codetrans.VisitContext.<init>:(Lio/vertx/codetrans/CodeBuilder;)V
astore 15
28: aload 6
aload 16
checkcast javax.lang.model.element.VariableElement
aload 15
invokevirtual io.vertx.codetrans.ModelBuilder.build:(Ljavax/lang/model/element/VariableElement;Lio/vertx/codetrans/VisitContext;)Lio/vertx/codetrans/statement/StatementModel;
astore 18
start local 18 29: aload 10
aload 14
aload 18
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 18 end local 16 30: StackMap locals:
StackMap stack:
aload 17
invokeinterface java.util.Iterator.hasNext:()Z
ifne 25
31: StackMap locals: io.vertx.codetrans.CodeTranslator javax.lang.model.element.ExecutableElement int io.vertx.codetrans.Lang io.vertx.codetrans.RenderMode javax.lang.model.element.TypeElement io.vertx.codetrans.ModelBuilder io.vertx.codetrans.VisitContext io.vertx.codetrans.MethodModel java.util.Map java.util.Map java.util.Map java.util.Iterator java.util.Map$Entry java.lang.String io.vertx.codetrans.VisitContext
StackMap stack:
aload 15
ifnonnull 33
32: new java.lang.UnsupportedOperationException
dup
new java.lang.StringBuilder
dup
ldc "Field / method "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 14
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " could not be resolved "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
athrow
33: StackMap locals:
StackMap stack:
aload 15
invokevirtual io.vertx.codetrans.VisitContext.getReferencedMethods:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 17
goto 39
StackMap locals: io.vertx.codetrans.CodeTranslator javax.lang.model.element.ExecutableElement int io.vertx.codetrans.Lang io.vertx.codetrans.RenderMode javax.lang.model.element.TypeElement io.vertx.codetrans.ModelBuilder io.vertx.codetrans.VisitContext io.vertx.codetrans.MethodModel java.util.Map java.util.Map java.util.Map java.util.Iterator java.util.Map$Entry java.lang.String io.vertx.codetrans.VisitContext top java.util.Iterator
StackMap stack:
34: aload 17
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 16
start local 16 35: aload 10
aload 16
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifeq 37
36: new java.lang.UnsupportedOperationException
dup
new java.lang.StringBuilder
dup
ldc "Duplicate field / method "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 16
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
athrow
37: StackMap locals: io.vertx.codetrans.CodeTranslator javax.lang.model.element.ExecutableElement int io.vertx.codetrans.Lang io.vertx.codetrans.RenderMode javax.lang.model.element.TypeElement io.vertx.codetrans.ModelBuilder io.vertx.codetrans.VisitContext io.vertx.codetrans.MethodModel java.util.Map java.util.Map java.util.Map java.util.Iterator java.util.Map$Entry java.lang.String io.vertx.codetrans.VisitContext java.lang.String java.util.Iterator
StackMap stack:
aload 9
aload 16
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifne 39
38: aload 11
aload 16
iconst_1
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 16 39: StackMap locals: io.vertx.codetrans.CodeTranslator javax.lang.model.element.ExecutableElement int io.vertx.codetrans.Lang io.vertx.codetrans.RenderMode javax.lang.model.element.TypeElement io.vertx.codetrans.ModelBuilder io.vertx.codetrans.VisitContext io.vertx.codetrans.MethodModel java.util.Map java.util.Map java.util.Map java.util.Iterator java.util.Map$Entry java.lang.String io.vertx.codetrans.VisitContext top java.util.Iterator
StackMap stack:
aload 17
invokeinterface java.util.Iterator.hasNext:()Z
ifne 34
40: aload 15
invokevirtual io.vertx.codetrans.VisitContext.getReferencedFields:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 17
goto 46
StackMap locals:
StackMap stack:
41: aload 17
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 16
start local 16 42: aload 9
aload 16
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifeq 44
43: new java.lang.UnsupportedOperationException
dup
new java.lang.StringBuilder
dup
ldc "Duplicate field / method "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 16
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
athrow
44: StackMap locals: io.vertx.codetrans.CodeTranslator javax.lang.model.element.ExecutableElement int io.vertx.codetrans.Lang io.vertx.codetrans.RenderMode javax.lang.model.element.TypeElement io.vertx.codetrans.ModelBuilder io.vertx.codetrans.VisitContext io.vertx.codetrans.MethodModel java.util.Map java.util.Map java.util.Map java.util.Iterator java.util.Map$Entry java.lang.String io.vertx.codetrans.VisitContext java.lang.String java.util.Iterator
StackMap stack:
aload 10
aload 16
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifne 46
45: aload 11
aload 16
iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 16 46: StackMap locals: io.vertx.codetrans.CodeTranslator javax.lang.model.element.ExecutableElement int io.vertx.codetrans.Lang io.vertx.codetrans.RenderMode javax.lang.model.element.TypeElement io.vertx.codetrans.ModelBuilder io.vertx.codetrans.VisitContext io.vertx.codetrans.MethodModel java.util.Map java.util.Map java.util.Map java.util.Iterator java.util.Map$Entry java.lang.String io.vertx.codetrans.VisitContext top java.util.Iterator
StackMap stack:
aload 17
invokeinterface java.util.Iterator.hasNext:()Z
ifne 41
end local 15 end local 14 end local 13 end local 12 47: StackMap locals: io.vertx.codetrans.CodeTranslator javax.lang.model.element.ExecutableElement int io.vertx.codetrans.Lang io.vertx.codetrans.RenderMode javax.lang.model.element.TypeElement io.vertx.codetrans.ModelBuilder io.vertx.codetrans.VisitContext io.vertx.codetrans.MethodModel java.util.Map java.util.Map java.util.Map
StackMap stack:
aload 11
invokeinterface java.util.Map.size:()I
ifgt 10
48: new io.vertx.codetrans.RunnableCompilationUnit
dup
iload 2
aload 8
aload 9
aload 10
invokespecial io.vertx.codetrans.RunnableCompilationUnit.<init>:(ZLio/vertx/codetrans/MethodModel;Ljava/util/Map;Ljava/util/Map;)V
astore 12
start local 12 49: aload 7
getfield io.vertx.codetrans.VisitContext.builder:Lio/vertx/codetrans/CodeBuilder;
aload 12
aload 4
invokeinterface io.vertx.codetrans.CodeBuilder.render:(Lio/vertx/codetrans/RunnableCompilationUnit;Lio/vertx/codetrans/RenderMode;)Ljava/lang/String;
areturn
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 50 0 this Lio/vertx/codetrans/CodeTranslator;
0 50 1 methodElt Ljavax/lang/model/element/ExecutableElement;
0 50 2 isVerticle Z
0 50 3 lang Lio/vertx/codetrans/Lang;
0 50 4 renderMode Lio/vertx/codetrans/RenderMode;
1 50 5 typeElt Ljavax/lang/model/element/TypeElement;
3 50 6 builder Lio/vertx/codetrans/ModelBuilder;
4 50 7 visitContext Lio/vertx/codetrans/VisitContext;
5 50 8 main Lio/vertx/codetrans/MethodModel;
6 50 9 methods Ljava/util/Map<Ljava/lang/String;Lio/vertx/codetrans/MethodModel;>;
7 50 10 fields Ljava/util/Map<Ljava/lang/String;Lio/vertx/codetrans/statement/StatementModel;>;
8 50 11 pending Ljava/util/Map<Ljava/lang/String;Ljava/lang/Boolean;>;
11 47 12 it Ljava/util/Iterator<Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/Boolean;>;>;
12 47 13 entry Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/Boolean;>;
13 47 14 name Ljava/lang/String;
15 47 15 other Lio/vertx/codetrans/VisitContext;
18 22 16 enclosed Ljavax/lang/model/element/Element;
21 22 18 method Lio/vertx/codetrans/MethodModel;
26 30 16 enclosed Ljavax/lang/model/element/Element;
29 30 18 statement Lio/vertx/codetrans/statement/StatementModel;
35 39 16 method Ljava/lang/String;
42 46 16 field Ljava/lang/String;
49 50 12 unit Lio/vertx/codetrans/RunnableCompilationUnit;
MethodParameters:
Name Flags
methodElt
isVerticle
lang
renderMode
private void attributeClass(javax.lang.model.element.Element);
descriptor: (Ljavax/lang/model/element/Element;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: getstatic io.vertx.codetrans.CodeTranslator.$assertionsDisabled:Z
ifne 1
aload 1
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 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
getfield io.vertx.codetrans.CodeTranslator.trees:Lcom/sun/source/util/Trees;
aload 1
invokevirtual com.sun.source.util.Trees.getTree:(Ljavax/lang/model/element/Element;)Lcom/sun/source/tree/Tree;
checkcast com.sun.tools.javac.tree.JCTree$JCClassDecl
astore 2
start local 2 2: aload 2
getfield com.sun.tools.javac.tree.JCTree$JCClassDecl.sym:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
ifnull 5
3: aload 2
getfield com.sun.tools.javac.tree.JCTree$JCClassDecl.sym:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
getfield com.sun.tools.javac.code.Symbol$ClassSymbol.flags_field:J
ldc 268435456
land
lconst_0
lcmp
ifeq 5
4: aload 0
getfield io.vertx.codetrans.CodeTranslator.attr:Lcom/sun/tools/javac/comp/Attr;
aload 2
invokevirtual com.sun.tools.javac.tree.JCTree$JCClassDecl.pos:()Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;
aload 2
getfield com.sun.tools.javac.tree.JCTree$JCClassDecl.sym:Lcom/sun/tools/javac/code/Symbol$ClassSymbol;
invokevirtual com.sun.tools.javac.comp.Attr.attribClass:(Lcom/sun/tools/javac/util/JCDiagnostic$DiagnosticPosition;Lcom/sun/tools/javac/code/Symbol$ClassSymbol;)V
5: StackMap locals: com.sun.tools.javac.tree.JCTree$JCClassDecl
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/vertx/codetrans/CodeTranslator;
0 6 1 classElement Ljavax/lang/model/element/Element;
2 6 2 ct Lcom/sun/tools/javac/tree/JCTree$JCClassDecl;
MethodParameters:
Name Flags
classElement
private static java.lang.String lambda$0(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 k Ljava/lang/String;
private static java.lang.Boolean lambda$1(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Boolean;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 k Ljava/lang/String;
private static void lambda$2(java.util.Map, java.lang.String);
descriptor: (Ljava/util/Map;Ljava/lang/String;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=2, args_size=2
start local 1 0: aload 0
aload 1
iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
1: return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 2 1 field Ljava/lang/String;
}
SourceFile: "CodeTranslator.java"
NestMembers:
io.vertx.codetrans.CodeTranslator$1
InnerClasses:
public ClassSymbol = com.sun.tools.javac.code.Symbol$ClassSymbol of com.sun.tools.javac.code.Symbol
public JCClassDecl = com.sun.tools.javac.tree.JCTree$JCClassDecl of com.sun.tools.javac.tree.JCTree
public abstract DiagnosticPosition = com.sun.tools.javac.util.JCDiagnostic$DiagnosticPosition of com.sun.tools.javac.util.JCDiagnostic
io.vertx.codetrans.CodeTranslator$1
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract Entry = java.util.Map$Entry of java.util.Map