public class io.vertx.codetrans.CodeTransProcessor extends javax.annotation.processing.AbstractProcessor
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: io.vertx.codetrans.CodeTransProcessor
super_class: javax.annotation.processing.AbstractProcessor
{
private java.io.File outputDir;
descriptor: Ljava/io/File;
flags: (0x0002) ACC_PRIVATE
private io.vertx.codetrans.CodeTranslator translator;
descriptor: Lio/vertx/codetrans/CodeTranslator;
flags: (0x0002) ACC_PRIVATE
private java.util.List<io.vertx.codetrans.Lang> langs;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<Lio/vertx/codetrans/Lang;>;
private java.util.Set<java.io.File> folders;
descriptor: Ljava/util/Set;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Set<Ljava/io/File;>;
private java.io.PrintWriter log;
descriptor: Ljava/io/PrintWriter;
flags: (0x0002) ACC_PRIVATE
private com.fasterxml.jackson.databind.node.ObjectNode config;
descriptor: Lcom/fasterxml/jackson/databind/node/ObjectNode;
flags: (0x0002) ACC_PRIVATE
private java.util.Map<java.lang.String, java.util.Set<java.lang.String>> abc;
descriptor: Ljava/util/Map;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Map<Ljava/lang/String;Ljava/util/Set<Ljava/lang/String;>;>;
private io.vertx.codetrans.RenderMode renderMode;
descriptor: Lio/vertx/codetrans/RenderMode;
flags: (0x0002) ACC_PRIVATE
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 io.vertx.codetrans.CodeTransProcessor.folders:Ljava/util/Set;
2: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield io.vertx.codetrans.CodeTransProcessor.abc:Ljava/util/Map;
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/vertx/codetrans/CodeTransProcessor;
public java.util.Set<java.lang.String> getSupportedOptions();
descriptor: ()Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc "codetrans.output"
invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/codetrans/CodeTransProcessor;
Signature: ()Ljava/util/Set<Ljava/lang/String;>;
public java.util.Set<java.lang.String> getSupportedAnnotationTypes();
descriptor: ()Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: ldc "*"
invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/codetrans/CodeTransProcessor;
Signature: ()Ljava/util/Set<Ljava/lang/String;>;
public synchronized void init(javax.annotation.processing.ProcessingEnvironment);
descriptor: (Ljavax/annotation/processing/ProcessingEnvironment;)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=6, locals=17, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial javax.annotation.processing.AbstractProcessor.init:(Ljavax/annotation/processing/ProcessingEnvironment;)V
1: aload 1
invokeinterface javax.annotation.processing.ProcessingEnvironment.getOptions:()Ljava/util/Map;
ldc "codetrans.output"
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 2
start local 2 2: aload 2
ifnull 4
3: aload 0
new java.io.File
dup
aload 2
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
putfield io.vertx.codetrans.CodeTransProcessor.outputDir:Ljava/io/File;
4: StackMap locals: java.lang.String
StackMap stack:
aload 0
new io.vertx.codetrans.CodeTranslator
dup
aload 1
invokespecial io.vertx.codetrans.CodeTranslator.<init>:(Ljavax/annotation/processing/ProcessingEnvironment;)V
putfield io.vertx.codetrans.CodeTransProcessor.translator:Lio/vertx/codetrans/CodeTranslator;
5: aload 0
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield io.vertx.codetrans.CodeTransProcessor.langs:Ljava/util/List;
6: aload 1
invokeinterface javax.annotation.processing.ProcessingEnvironment.getOptions:()Ljava/util/Map;
ldc "codetrans.render"
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 3
start local 3 7: aload 0
aload 3
ifnull 8
aload 3
invokevirtual java.lang.String.toUpperCase:()Ljava/lang/String;
invokestatic io.vertx.codetrans.RenderMode.valueOf:(Ljava/lang/String;)Lio/vertx/codetrans/RenderMode;
goto 9
StackMap locals: io.vertx.codetrans.CodeTransProcessor javax.annotation.processing.ProcessingEnvironment java.lang.String java.lang.String
StackMap stack: io.vertx.codetrans.CodeTransProcessor
8: getstatic io.vertx.codetrans.RenderMode.EXAMPLE:Lio/vertx/codetrans/RenderMode;
StackMap locals: io.vertx.codetrans.CodeTransProcessor javax.annotation.processing.ProcessingEnvironment java.lang.String java.lang.String
StackMap stack: io.vertx.codetrans.CodeTransProcessor io.vertx.codetrans.RenderMode
9: putfield io.vertx.codetrans.CodeTransProcessor.renderMode:Lio/vertx/codetrans/RenderMode;
10: aload 1
invokeinterface javax.annotation.processing.ProcessingEnvironment.getOptions:()Ljava/util/Map;
ldc "codetrans.langs"
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 4
start local 4 11: aload 4
ifnull 14
12: new java.util.HashSet
dup
aload 4
ldc "\\s*,\\s*"
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
astore 5
start local 5 13: goto 15
end local 5 14: StackMap locals: java.lang.String
StackMap stack:
new java.util.HashSet
dup
iconst_4
anewarray java.lang.String
dup
iconst_0
ldc "js"
aastore
dup
iconst_1
ldc "ruby"
aastore
dup
iconst_2
ldc "kotlin"
aastore
dup
iconst_3
ldc "groovy"
aastore
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
invokespecial java.util.HashSet.<init>:(Ljava/util/Collection;)V
astore 5
start local 5 15: StackMap locals: java.util.Set
StackMap stack:
aload 1
invokeinterface javax.annotation.processing.ProcessingEnvironment.getOptions:()Ljava/util/Map;
ldc "codetrans.config"
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 6
start local 6 16: aload 6
ifnull 27
17: new com.fasterxml.jackson.databind.ObjectMapper
dup
invokespecial com.fasterxml.jackson.databind.ObjectMapper.<init>:()V
iconst_1
anewarray com.fasterxml.jackson.core.JsonParser$Feature
dup
iconst_0
18: getstatic com.fasterxml.jackson.core.JsonParser$Feature.ALLOW_COMMENTS:Lcom/fasterxml/jackson/core/JsonParser$Feature;
aastore
invokevirtual com.fasterxml.jackson.databind.ObjectMapper.enable:([Lcom/fasterxml/jackson/core/JsonParser$Feature;)Lcom/fasterxml/jackson/databind/ObjectMapper;
iconst_1
anewarray com.fasterxml.jackson.core.JsonParser$Feature
dup
iconst_0
19: getstatic com.fasterxml.jackson.core.JsonParser$Feature.ALLOW_SINGLE_QUOTES:Lcom/fasterxml/jackson/core/JsonParser$Feature;
aastore
invokevirtual com.fasterxml.jackson.databind.ObjectMapper.enable:([Lcom/fasterxml/jackson/core/JsonParser$Feature;)Lcom/fasterxml/jackson/databind/ObjectMapper;
20: astore 7
start local 7 21: new java.io.File
dup
aload 6
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 8
start local 8 22: aload 0
aload 7
aload 8
invokevirtual com.fasterxml.jackson.databind.ObjectMapper.readTree:(Ljava/io/File;)Lcom/fasterxml/jackson/databind/JsonNode;
checkcast com.fasterxml.jackson.databind.node.ObjectNode
putfield io.vertx.codetrans.CodeTransProcessor.config:Lcom/fasterxml/jackson/databind/node/ObjectNode;
23: goto 27
StackMap locals: io.vertx.codetrans.CodeTransProcessor javax.annotation.processing.ProcessingEnvironment java.lang.String java.lang.String java.lang.String java.util.Set java.lang.String com.fasterxml.jackson.databind.ObjectMapper java.io.File
StackMap stack: java.io.IOException
24: astore 9
start local 9 25: getstatic java.lang.System.err:Ljava/io/PrintStream;
new java.lang.StringBuilder
dup
ldc "[ERROR] Cannot read configuration file "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 8
invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " : "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 9
invokevirtual java.io.IOException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
26: aload 9
invokevirtual java.io.IOException.printStackTrace:()V
end local 9 end local 8 end local 7 27: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 8
goto 62
StackMap locals: io.vertx.codetrans.CodeTransProcessor javax.annotation.processing.ProcessingEnvironment java.lang.String java.lang.String java.lang.String java.util.Set java.lang.String top java.util.Iterator
StackMap stack:
28: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 7
start local 7 29: aload 7
dup
astore 10
invokevirtual java.lang.String.hashCode:()I
lookupswitch { // 5
-1237466098: 30
-1125574399: 31
3401: 32
3511770: 33
109250886: 34
default: 45
}
StackMap locals: io.vertx.codetrans.CodeTransProcessor javax.annotation.processing.ProcessingEnvironment java.lang.String java.lang.String java.lang.String java.util.Set java.lang.String java.lang.String java.util.Iterator top java.lang.String
StackMap stack:
30: aload 10
ldc "groovy"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 37
goto 62
StackMap locals:
StackMap stack:
31: aload 10
ldc "kotlin"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 35
goto 62
StackMap locals:
StackMap stack:
32: aload 10
ldc "js"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 39
goto 62
StackMap locals:
StackMap stack:
33: aload 10
ldc "ruby"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 43
goto 62
StackMap locals:
StackMap stack:
34: aload 10
ldc "scala"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 41
goto 62
35: StackMap locals:
StackMap stack:
new io.vertx.codetrans.lang.kotlin.KotlinLang
dup
invokespecial io.vertx.codetrans.lang.kotlin.KotlinLang.<init>:()V
astore 9
start local 9 36: goto 46
end local 9 37: StackMap locals:
StackMap stack:
new io.vertx.codetrans.lang.groovy.GroovyLang
dup
invokespecial io.vertx.codetrans.lang.groovy.GroovyLang.<init>:()V
astore 9
start local 9 38: goto 46
end local 9 39: StackMap locals:
StackMap stack:
new io.vertx.codetrans.lang.js.JavaScriptLang
dup
invokespecial io.vertx.codetrans.lang.js.JavaScriptLang.<init>:()V
astore 9
start local 9 40: goto 46
end local 9 41: StackMap locals:
StackMap stack:
new io.vertx.codetrans.lang.scala.ScalaLang
dup
invokespecial io.vertx.codetrans.lang.scala.ScalaLang.<init>:()V
astore 9
start local 9 42: goto 46
end local 9 43: StackMap locals:
StackMap stack:
new io.vertx.codetrans.lang.ruby.RubyLang
dup
invokespecial io.vertx.codetrans.lang.ruby.RubyLang.<init>:()V
astore 9
start local 9 44: goto 46
end local 9 45: StackMap locals:
StackMap stack:
goto 62
start local 9 46: StackMap locals: io.vertx.codetrans.CodeTransProcessor javax.annotation.processing.ProcessingEnvironment java.lang.String java.lang.String java.lang.String java.util.Set java.lang.String java.lang.String java.util.Iterator io.vertx.codetrans.Lang
StackMap stack:
aload 0
getfield io.vertx.codetrans.CodeTransProcessor.langs:Ljava/util/List;
aload 9
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
47: aload 0
getfield io.vertx.codetrans.CodeTransProcessor.config:Lcom/fasterxml/jackson/databind/node/ObjectNode;
ifnull 62
48: aload 0
getfield io.vertx.codetrans.CodeTransProcessor.config:Lcom/fasterxml/jackson/databind/node/ObjectNode;
aload 7
invokevirtual com.fasterxml.jackson.databind.node.ObjectNode.get:(Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JsonNode;
astore 11
start local 11 49: aload 11
ifnull 62
aload 11
invokevirtual com.fasterxml.jackson.databind.JsonNode.getNodeType:()Lcom/fasterxml/jackson/databind/node/JsonNodeType;
getstatic com.fasterxml.jackson.databind.node.JsonNodeType.OBJECT:Lcom/fasterxml/jackson/databind/node/JsonNodeType;
if_acmpne 62
50: aload 11
ldc "excludes"
invokevirtual com.fasterxml.jackson.databind.JsonNode.get:(Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JsonNode;
astore 12
start local 12 51: aload 12
ifnull 62
aload 12
invokevirtual com.fasterxml.jackson.databind.JsonNode.getNodeType:()Lcom/fasterxml/jackson/databind/node/JsonNodeType;
getstatic com.fasterxml.jackson.databind.node.JsonNodeType.ARRAY:Lcom/fasterxml/jackson/databind/node/JsonNodeType;
if_acmpne 62
52: new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
astore 13
start local 13 53: aload 0
getfield io.vertx.codetrans.CodeTransProcessor.abc:Ljava/util/Map;
aload 9
invokeinterface io.vertx.codetrans.Lang.id:()Ljava/lang/String;
aload 13
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
54: iconst_0
istore 14
start local 14 55: goto 61
56: StackMap locals: io.vertx.codetrans.CodeTransProcessor javax.annotation.processing.ProcessingEnvironment java.lang.String java.lang.String java.lang.String java.util.Set java.lang.String java.lang.String java.util.Iterator io.vertx.codetrans.Lang top com.fasterxml.jackson.databind.JsonNode com.fasterxml.jackson.databind.JsonNode java.util.Set int
StackMap stack:
aload 12
iload 14
invokevirtual com.fasterxml.jackson.databind.JsonNode.get:(I)Lcom/fasterxml/jackson/databind/JsonNode;
astore 15
start local 15 57: aload 15
invokevirtual com.fasterxml.jackson.databind.JsonNode.getNodeType:()Lcom/fasterxml/jackson/databind/node/JsonNodeType;
getstatic com.fasterxml.jackson.databind.node.JsonNodeType.STRING:Lcom/fasterxml/jackson/databind/node/JsonNodeType;
if_acmpne 60
58: aload 15
checkcast com.fasterxml.jackson.databind.node.TextNode
astore 16
start local 16 59: aload 13
aload 16
invokevirtual com.fasterxml.jackson.databind.node.TextNode.asText:()Ljava/lang/String;
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
end local 16 end local 15 60: StackMap locals:
StackMap stack:
iinc 14 1
StackMap locals:
StackMap stack:
61: iload 14
aload 12
invokevirtual com.fasterxml.jackson.databind.JsonNode.size:()I
if_icmplt 56
end local 14 end local 13 end local 12 end local 11 end local 9 end local 7 62: StackMap locals: io.vertx.codetrans.CodeTransProcessor javax.annotation.processing.ProcessingEnvironment java.lang.String java.lang.String java.lang.String java.util.Set java.lang.String top java.util.Iterator
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 28
63: return
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 64 0 this Lio/vertx/codetrans/CodeTransProcessor;
0 64 1 processingEnv Ljavax/annotation/processing/ProcessingEnvironment;
2 64 2 outputOption Ljava/lang/String;
7 64 3 renderOpt Ljava/lang/String;
11 64 4 langsOpt Ljava/lang/String;
13 14 5 langs Ljava/util/Set<Ljava/lang/String;>;
15 64 5 langs Ljava/util/Set<Ljava/lang/String;>;
16 64 6 configOpt Ljava/lang/String;
21 27 7 mapper Lcom/fasterxml/jackson/databind/ObjectMapper;
22 27 8 file Ljava/io/File;
25 27 9 e Ljava/io/IOException;
29 62 7 lang Ljava/lang/String;
36 37 9 l Lio/vertx/codetrans/Lang;
38 39 9 l Lio/vertx/codetrans/Lang;
40 41 9 l Lio/vertx/codetrans/Lang;
42 43 9 l Lio/vertx/codetrans/Lang;
44 45 9 l Lio/vertx/codetrans/Lang;
46 62 9 l Lio/vertx/codetrans/Lang;
49 62 11 n Lcom/fasterxml/jackson/databind/JsonNode;
51 62 12 excludes Lcom/fasterxml/jackson/databind/JsonNode;
53 62 13 t Ljava/util/Set<Ljava/lang/String;>;
55 62 14 i I
57 60 15 c Lcom/fasterxml/jackson/databind/JsonNode;
59 60 16 tn Lcom/fasterxml/jackson/databind/node/TextNode;
Exception table:
from to target type
22 23 24 Class java.io.IOException
MethodParameters:
Name Flags
processingEnv
private java.io.PrintWriter getLogger();
descriptor: ()Ljava/io/PrintWriter;
flags: (0x0002) ACC_PRIVATE
Code:
stack=9, locals=1, args_size=1
start local 0 0: aload 0
getfield io.vertx.codetrans.CodeTransProcessor.log:Ljava/io/PrintWriter;
ifnonnull 2
1: aload 0
new java.io.PrintWriter
dup
new java.io.FileWriter
dup
new java.io.File
dup
aload 0
getfield io.vertx.codetrans.CodeTransProcessor.outputDir:Ljava/io/File;
ldc "codetrans.log"
invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
iconst_0
invokespecial java.io.FileWriter.<init>:(Ljava/io/File;Z)V
iconst_1
invokespecial java.io.PrintWriter.<init>:(Ljava/io/Writer;Z)V
putfield io.vertx.codetrans.CodeTransProcessor.log:Ljava/io/PrintWriter;
2: StackMap locals:
StackMap stack:
aload 0
getfield io.vertx.codetrans.CodeTransProcessor.log:Ljava/io/PrintWriter;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/vertx/codetrans/CodeTransProcessor;
Exceptions:
throws java.lang.Exception
private void copyDirRec(java.io.File, java.io.File, java.io.PrintWriter);
descriptor: (Ljava/io/File;Ljava/io/File;Ljava/io/PrintWriter;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield io.vertx.codetrans.CodeTransProcessor.folders:Ljava/util/Set;
aload 2
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 6
1: aload 0
getfield io.vertx.codetrans.CodeTransProcessor.folders:Ljava/util/Set;
aload 2
invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
pop
2: aload 1
invokevirtual java.io.File.toPath:()Ljava/nio/file/Path;
astore 4
start local 4 3: aload 2
invokevirtual java.io.File.toPath:()Ljava/nio/file/Path;
astore 5
start local 5 4: new io.vertx.codetrans.CodeTransProcessor$1
dup
aload 0
aload 5
aload 4
aload 3
invokespecial io.vertx.codetrans.CodeTransProcessor$1.<init>:(Lio/vertx/codetrans/CodeTransProcessor;Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/io/PrintWriter;)V
astore 6
start local 6 5: aload 4
aload 6
invokestatic java.nio.file.Files.walkFileTree:(Ljava/nio/file/Path;Ljava/nio/file/FileVisitor;)Ljava/nio/file/Path;
pop
end local 6 end local 5 end local 4 6: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lio/vertx/codetrans/CodeTransProcessor;
0 7 1 srcFolder Ljava/io/File;
0 7 2 dstFolder Ljava/io/File;
0 7 3 log Ljava/io/PrintWriter;
3 6 4 srcPath Ljava/nio/file/Path;
4 6 5 dstPath Ljava/nio/file/Path;
5 6 6 copyingVisitor Ljava/nio/file/SimpleFileVisitor<Ljava/nio/file/Path;>;
Exceptions:
throws java.lang.Exception
MethodParameters:
Name Flags
srcFolder
dstFolder
log
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=8, locals=19, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokeinterface javax.annotation.processing.RoundEnvironment.processingOver:()Z
ifeq 4
1: aload 0
getfield io.vertx.codetrans.CodeTransProcessor.log:Ljava/io/PrintWriter;
ifnull 3
2: aload 0
getfield io.vertx.codetrans.CodeTransProcessor.log:Ljava/io/PrintWriter;
invokevirtual java.io.PrintWriter.close:()V
3: StackMap locals:
StackMap stack:
iconst_0
ireturn
4: StackMap locals:
StackMap stack:
aload 0
getfield io.vertx.codetrans.CodeTransProcessor.outputDir:Ljava/io/File;
ifnull 59
aload 0
getfield io.vertx.codetrans.CodeTransProcessor.outputDir:Ljava/io/File;
invokevirtual java.io.File.exists:()Z
ifne 5
aload 0
getfield io.vertx.codetrans.CodeTransProcessor.outputDir:Ljava/io/File;
invokevirtual java.io.File.mkdirs:()Z
ifeq 59
5: StackMap locals:
StackMap stack:
new java.util.LinkedHashMap
dup
invokespecial java.util.LinkedHashMap.<init>:()V
astore 3
start local 3 6: aload 0
invokevirtual io.vertx.codetrans.CodeTransProcessor.getLogger:()Ljava/io/PrintWriter;
astore 4
start local 4 7: aload 0
getfield io.vertx.codetrans.CodeTransProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getElementUtils:()Ljavax/lang/model/util/Elements;
ldc Lio/vertx/core/Verticle;
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;
astore 5
start local 5 8: aload 2
invokeinterface javax.annotation.processing.RoundEnvironment.getRootElements:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 7
goto 23
StackMap locals: io.vertx.codetrans.CodeTransProcessor java.util.Set javax.annotation.processing.RoundEnvironment java.util.LinkedHashMap java.io.PrintWriter javax.lang.model.type.TypeMirror top java.util.Iterator
StackMap stack:
9: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast javax.lang.model.element.Element
astore 6
start local 6 10: aload 6
invokeinterface javax.lang.model.element.Element.getModifiers:()Ljava/util/Set;
astore 8
start local 8 11: aload 6
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_acmpne 23
12: aload 8
getstatic javax.lang.model.element.Modifier.ABSTRACT:Ljavax/lang/model/element/Modifier;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 23
13: aload 8
getstatic javax.lang.model.element.Modifier.PUBLIC:Ljavax/lang/model/element/Modifier;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 23
14: aload 0
getfield io.vertx.codetrans.CodeTransProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getTypeUtils:()Ljavax/lang/model/util/Types;
aload 6
invokeinterface javax.lang.model.element.Element.asType:()Ljavax/lang/model/type/TypeMirror;
aload 5
invokeinterface javax.lang.model.util.Types.isSubtype:(Ljavax/lang/model/type/TypeMirror;Ljavax/lang/model/type/TypeMirror;)Z
ifeq 23
15: aload 6
checkcast javax.lang.model.element.TypeElement
astore 9
start local 9 16: aload 9
invokeinterface javax.lang.model.element.TypeElement.getEnclosedElements:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 11
goto 22
StackMap locals: io.vertx.codetrans.CodeTransProcessor java.util.Set javax.annotation.processing.RoundEnvironment java.util.LinkedHashMap java.io.PrintWriter javax.lang.model.type.TypeMirror javax.lang.model.element.Element java.util.Iterator java.util.Set javax.lang.model.element.TypeElement top java.util.Iterator
StackMap stack:
17: aload 11
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast javax.lang.model.element.Element
astore 10
start local 10 18: aload 10
invokeinterface javax.lang.model.element.Element.getKind:()Ljavax/lang/model/element/ElementKind;
getstatic javax.lang.model.element.ElementKind.METHOD:Ljavax/lang/model/element/ElementKind;
if_acmpne 22
19: aload 10
checkcast javax.lang.model.element.ExecutableElement
astore 12
start local 12 20: aload 12
invokeinterface javax.lang.model.element.ExecutableElement.getSimpleName:()Ljavax/lang/model/element/Name;
invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
ldc "start"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 22
aload 12
invokeinterface javax.lang.model.element.ExecutableElement.getParameters:()Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifeq 22
21: aload 3
aload 12
iconst_1
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokevirtual java.util.LinkedHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 12 end local 10 22: StackMap locals:
StackMap stack:
aload 11
invokeinterface java.util.Iterator.hasNext:()Z
ifne 17
end local 9 end local 8 end local 6 23: StackMap locals: io.vertx.codetrans.CodeTransProcessor java.util.Set javax.annotation.processing.RoundEnvironment java.util.LinkedHashMap java.io.PrintWriter javax.lang.model.type.TypeMirror top java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
24: aload 2
ldc Lio/vertx/codetrans/annotations/CodeTranslate;
invokeinterface javax.annotation.processing.RoundEnvironment.getElementsAnnotatedWith:(Ljava/lang/Class;)Ljava/util/Set;
aload 3
invokedynamic accept(Ljava/util/LinkedHashMap;)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/CodeTransProcessor.lambda$0(Ljava/util/LinkedHashMap;Ljavax/lang/model/element/Element;)V (6)
(Ljavax/lang/model/element/Element;)V
invokeinterface java.util.Set.forEach:(Ljava/util/function/Consumer;)V
25: aload 3
invokevirtual java.util.LinkedHashMap.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 7
goto 54
StackMap locals:
StackMap stack:
26: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 6
start local 6 27: aload 6
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast javax.lang.model.element.ExecutableElement
astore 8
start local 8 28: aload 6
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast java.lang.Boolean
invokevirtual java.lang.Boolean.booleanValue:()Z
istore 9
start local 9 29: aload 8
invokeinterface javax.lang.model.element.ExecutableElement.getEnclosingElement:()Ljavax/lang/model/element/Element;
checkcast javax.lang.model.element.TypeElement
astore 10
start local 10 30: aload 0
getfield io.vertx.codetrans.CodeTransProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getFiler:()Ljavax/annotation/processing/Filer;
getstatic javax.tools.StandardLocation.SOURCE_PATH:Ljavax/tools/StandardLocation;
ldc ""
new java.lang.StringBuilder
dup
aload 10
invokeinterface javax.lang.model.element.TypeElement.getQualifiedName:()Ljavax/lang/model/element/Name;
invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
bipush 46
bipush 47
invokevirtual java.lang.String.replace:(CC)Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".java"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface javax.annotation.processing.Filer.getResource:(Ljavax/tools/JavaFileManager$Location;Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Ljavax/tools/FileObject;
astore 11
start local 11 31: new java.io.File
dup
aload 11
invokeinterface javax.tools.FileObject.toUri:()Ljava/net/URI;
invokespecial java.io.File.<init>:(Ljava/net/URI;)V
invokevirtual java.io.File.getParentFile:()Ljava/io/File;
astore 12
start local 12 32: aload 0
getfield io.vertx.codetrans.CodeTransProcessor.langs:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 14
goto 53
StackMap locals: io.vertx.codetrans.CodeTransProcessor java.util.Set javax.annotation.processing.RoundEnvironment java.util.LinkedHashMap java.io.PrintWriter javax.lang.model.type.TypeMirror java.util.Map$Entry java.util.Iterator javax.lang.model.element.ExecutableElement int javax.lang.model.element.TypeElement javax.tools.FileObject java.io.File top java.util.Iterator
StackMap stack:
33: aload 14
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.vertx.codetrans.Lang
astore 13
start local 13 34: aload 0
aload 10
aload 13
invokevirtual io.vertx.codetrans.CodeTransProcessor.isSkipped:(Ljavax/lang/model/element/TypeElement;Lio/vertx/codetrans/Lang;)Z
ifne 35
aload 0
aload 8
aload 13
invokevirtual io.vertx.codetrans.CodeTransProcessor.isSkipped:(Ljavax/lang/model/element/ExecutableElement;Lio/vertx/codetrans/Lang;)Z
ifeq 39
35: StackMap locals: io.vertx.codetrans.CodeTransProcessor java.util.Set javax.annotation.processing.RoundEnvironment java.util.LinkedHashMap java.io.PrintWriter javax.lang.model.type.TypeMirror java.util.Map$Entry java.util.Iterator javax.lang.model.element.ExecutableElement int javax.lang.model.element.TypeElement javax.tools.FileObject java.io.File io.vertx.codetrans.Lang java.util.Iterator
StackMap stack:
aload 4
new java.lang.StringBuilder
dup
ldc "Skipping "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 13
invokeinterface io.vertx.codetrans.Lang.id:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " translation for "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 10
invokeinterface javax.lang.model.element.TypeElement.getQualifiedName:()Ljavax/lang/model/element/Name;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "#"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
36: aload 8
invokeinterface javax.lang.model.element.ExecutableElement.getSimpleName:()Ljavax/lang/model/element/Name;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
37: invokevirtual java.io.PrintWriter.write:(Ljava/lang/String;)V
38: goto 53
39: StackMap locals:
StackMap stack:
aload 10
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
ldc "\\."
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
astore 15
start local 15 40: new java.io.File
dup
aload 0
getfield io.vertx.codetrans.CodeTransProcessor.outputDir:Ljava/io/File;
aload 13
invokeinterface io.vertx.codetrans.Lang.id:()Ljava/lang/String;
invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
astore 16
start local 16 41: aload 13
aload 16
aload 15
iload 9
ifne 42
aload 8
invokeinterface javax.lang.model.element.ExecutableElement.getSimpleName:()Ljavax/lang/model/element/Name;
invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
goto 43
StackMap locals: io.vertx.codetrans.CodeTransProcessor java.util.Set javax.annotation.processing.RoundEnvironment java.util.LinkedHashMap java.io.PrintWriter javax.lang.model.type.TypeMirror java.util.Map$Entry java.util.Iterator javax.lang.model.element.ExecutableElement int javax.lang.model.element.TypeElement javax.tools.FileObject java.io.File io.vertx.codetrans.Lang java.util.Iterator java.util.List java.io.File
StackMap stack: io.vertx.codetrans.Lang java.io.File java.util.List
42: aconst_null
StackMap locals: io.vertx.codetrans.CodeTransProcessor java.util.Set javax.annotation.processing.RoundEnvironment java.util.LinkedHashMap java.io.PrintWriter javax.lang.model.type.TypeMirror java.util.Map$Entry java.util.Iterator javax.lang.model.element.ExecutableElement int javax.lang.model.element.TypeElement javax.tools.FileObject java.io.File io.vertx.codetrans.Lang java.util.Iterator java.util.List java.io.File
StackMap stack: io.vertx.codetrans.Lang java.io.File java.util.List java.lang.String
43: invokeinterface io.vertx.codetrans.Lang.createSourceFile:(Ljava/io/File;Ljava/util/List;Ljava/lang/String;)Ljava/io/File;
astore 17
start local 17 44: aload 17
invokevirtual java.io.File.getParentFile:()Ljava/io/File;
invokevirtual java.io.File.exists:()Z
ifne 45
aload 17
invokevirtual java.io.File.getParentFile:()Ljava/io/File;
invokevirtual java.io.File.mkdirs:()Z
ifeq 53
45: StackMap locals: java.io.File
StackMap stack:
aload 0
getfield io.vertx.codetrans.CodeTransProcessor.translator:Lio/vertx/codetrans/CodeTranslator;
aload 8
iload 9
aload 13
aload 0
getfield io.vertx.codetrans.CodeTransProcessor.renderMode: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;
astore 18
start local 18 46: aload 17
invokevirtual java.io.File.toPath:()Ljava/nio/file/Path;
aload 18
invokevirtual java.lang.String.getBytes:()[B
iconst_2
anewarray java.nio.file.OpenOption
dup
iconst_0
getstatic java.nio.file.StandardOpenOption.CREATE:Ljava/nio/file/StandardOpenOption;
aastore
dup
iconst_1
getstatic java.nio.file.StandardOpenOption.TRUNCATE_EXISTING:Ljava/nio/file/StandardOpenOption;
aastore
invokestatic java.nio.file.Files.write:(Ljava/nio/file/Path;[B[Ljava/nio/file/OpenOption;)Ljava/nio/file/Path;
pop
47: aload 4
new java.lang.StringBuilder
dup
ldc "Generated "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 17
invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
48: aload 0
aload 12
aload 17
invokevirtual java.io.File.getParentFile:()Ljava/io/File;
aload 4
invokevirtual io.vertx.codetrans.CodeTransProcessor.copyDirRec:(Ljava/io/File;Ljava/io/File;Ljava/io/PrintWriter;)V
end local 18 49: goto 53
StackMap locals:
StackMap stack: java.lang.Exception
50: astore 18
start local 18 51: aload 4
new java.lang.StringBuilder
dup
ldc "Skipping generation of "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 10
invokeinterface javax.lang.model.element.TypeElement.getQualifiedName:()Ljavax/lang/model/element/Name;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
52: aload 18
aload 4
invokevirtual java.lang.Exception.printStackTrace:(Ljava/io/PrintWriter;)V
end local 18 end local 17 end local 16 end local 15 end local 13 53: StackMap locals: io.vertx.codetrans.CodeTransProcessor java.util.Set javax.annotation.processing.RoundEnvironment java.util.LinkedHashMap java.io.PrintWriter javax.lang.model.type.TypeMirror java.util.Map$Entry java.util.Iterator javax.lang.model.element.ExecutableElement int javax.lang.model.element.TypeElement javax.tools.FileObject java.io.File top java.util.Iterator
StackMap stack:
aload 14
invokeinterface java.util.Iterator.hasNext:()Z
ifne 33
end local 12 end local 11 end local 10 end local 9 end local 8 end local 6 54: StackMap locals: io.vertx.codetrans.CodeTransProcessor java.util.Set javax.annotation.processing.RoundEnvironment java.util.LinkedHashMap java.io.PrintWriter javax.lang.model.type.TypeMirror top java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 26
end local 5 end local 4 55: goto 58
StackMap locals: io.vertx.codetrans.CodeTransProcessor java.util.Set javax.annotation.processing.RoundEnvironment java.util.LinkedHashMap
StackMap stack: java.lang.Exception
56: astore 4
start local 4 57: aload 4
invokevirtual java.lang.Exception.printStackTrace:()V
end local 4 58: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 3 59: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 60 0 this Lio/vertx/codetrans/CodeTransProcessor;
0 60 1 annotations Ljava/util/Set<+Ljavax/lang/model/element/TypeElement;>;
0 60 2 roundEnv Ljavax/annotation/processing/RoundEnvironment;
6 59 3 methods Ljava/util/LinkedHashMap<Ljavax/lang/model/element/ExecutableElement;Ljava/lang/Boolean;>;
7 55 4 log Ljava/io/PrintWriter;
8 55 5 verticleType Ljavax/lang/model/type/TypeMirror;
10 23 6 rootElt Ljavax/lang/model/element/Element;
11 23 8 modifiers Ljava/util/Set<Ljavax/lang/model/element/Modifier;>;
16 23 9 typeElt Ljavax/lang/model/element/TypeElement;
18 22 10 enclosedElt Ljavax/lang/model/element/Element;
20 22 12 methodElt Ljavax/lang/model/element/ExecutableElement;
27 54 6 method Ljava/util/Map$Entry<Ljavax/lang/model/element/ExecutableElement;Ljava/lang/Boolean;>;
28 54 8 methodElt Ljavax/lang/model/element/ExecutableElement;
29 54 9 isVerticle Z
30 54 10 typeElt Ljavax/lang/model/element/TypeElement;
31 54 11 obj Ljavax/tools/FileObject;
32 54 12 srcFolder Ljava/io/File;
34 53 13 lang Lio/vertx/codetrans/Lang;
40 53 15 fqn Ljava/util/List<Ljava/lang/String;>;
41 53 16 dstFolder Ljava/io/File;
44 53 17 f Ljava/io/File;
46 49 18 translation Ljava/lang/String;
51 53 18 e Ljava/lang/Exception;
57 58 4 e Ljava/lang/Exception;
Exception table:
from to target type
45 49 50 Class java.lang.Exception
6 55 56 Class java.lang.Exception
Signature: (Ljava/util/Set<+Ljavax/lang/model/element/TypeElement;>;Ljavax/annotation/processing/RoundEnvironment;)Z
MethodParameters:
Name Flags
annotations
roundEnv
private boolean isSkipped(javax.lang.model.element.ExecutableElement, io.vertx.codetrans.Lang);
descriptor: (Ljavax/lang/model/element/ExecutableElement;Lio/vertx/codetrans/Lang;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield io.vertx.codetrans.CodeTransProcessor.abc:Ljava/util/Map;
aload 2
invokeinterface io.vertx.codetrans.Lang.id:()Ljava/lang/String;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.Set
astore 3
start local 3 1: aload 3
ifnull 9
2: aload 1
invokeinterface javax.lang.model.element.ExecutableElement.getEnclosingElement:()Ljavax/lang/model/element/Element;
checkcast javax.lang.model.element.TypeElement
astore 4
start local 4 3: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
aload 4
invokeinterface javax.lang.model.element.TypeElement.getQualifiedName:()Ljavax/lang/model/element/Name;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
start local 5 4: aload 3
aload 5
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 6
5: iconst_1
ireturn
6: StackMap locals: java.util.Set javax.lang.model.element.TypeElement java.lang.String
StackMap stack:
new java.lang.StringBuilder
dup
aload 5
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
invokeinterface javax.lang.model.element.ExecutableElement.getSimpleName:()Ljavax/lang/model/element/Name;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 5
7: aload 3
aload 5
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 9
8: iconst_1
ireturn
end local 5 end local 4 9: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lio/vertx/codetrans/CodeTransProcessor;
0 10 1 methodElt Ljavax/lang/model/element/ExecutableElement;
0 10 2 lang Lio/vertx/codetrans/Lang;
1 10 3 excl Ljava/util/Set<Ljava/lang/String;>;
3 9 4 typeElt Ljavax/lang/model/element/TypeElement;
4 9 5 match Ljava/lang/String;
MethodParameters:
Name Flags
methodElt
lang
private boolean isSkipped(javax.lang.model.element.TypeElement, io.vertx.codetrans.Lang);
descriptor: (Ljavax/lang/model/element/TypeElement;Lio/vertx/codetrans/Lang;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield io.vertx.codetrans.CodeTransProcessor.config:Lcom/fasterxml/jackson/databind/node/ObjectNode;
ifnonnull 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield io.vertx.codetrans.CodeTransProcessor.config:Lcom/fasterxml/jackson/databind/node/ObjectNode;
ldc "excludes"
invokevirtual com.fasterxml.jackson.databind.node.ObjectNode.get:(Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JsonNode;
checkcast com.fasterxml.jackson.databind.node.ArrayNode
astore 3
start local 3 3: aload 3
invokevirtual com.fasterxml.jackson.databind.node.ArrayNode.iterator:()Ljava/util/Iterator;
astore 5
goto 11
StackMap locals: io.vertx.codetrans.CodeTransProcessor javax.lang.model.element.TypeElement io.vertx.codetrans.Lang com.fasterxml.jackson.databind.node.ArrayNode top java.util.Iterator
StackMap stack:
4: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.fasterxml.jackson.databind.JsonNode
astore 4
start local 4 5: aload 4
ldc "package"
invokevirtual com.fasterxml.jackson.databind.JsonNode.get:(Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JsonNode;
ifnonnull 7
6: new java.lang.IllegalStateException
dup
ldc "Malformed configuration - Missing 'package' attribute in the 'codetrans.config' file"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals: io.vertx.codetrans.CodeTransProcessor javax.lang.model.element.TypeElement io.vertx.codetrans.Lang com.fasterxml.jackson.databind.node.ArrayNode com.fasterxml.jackson.databind.JsonNode java.util.Iterator
StackMap stack:
aload 4
ldc "package"
invokevirtual com.fasterxml.jackson.databind.JsonNode.get:(Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JsonNode;
invokevirtual com.fasterxml.jackson.databind.JsonNode.asText:()Ljava/lang/String;
astore 6
start local 6 8: aload 4
ldc "langs"
invokevirtual com.fasterxml.jackson.databind.JsonNode.get:(Ljava/lang/String;)Lcom/fasterxml/jackson/databind/JsonNode;
checkcast com.fasterxml.jackson.databind.node.ArrayNode
astore 7
start local 7 9: aload 1
invokeinterface javax.lang.model.element.TypeElement.getQualifiedName:()Ljavax/lang/model/element/Name;
invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
aload 6
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 11
aload 0
aload 7
aload 2
invokevirtual io.vertx.codetrans.CodeTransProcessor.isLanguageSkipped:(Lcom/fasterxml/jackson/databind/node/ArrayNode;Lio/vertx/codetrans/Lang;)Z
ifeq 11
10: iconst_1
ireturn
end local 7 end local 6 end local 4 11: StackMap locals: io.vertx.codetrans.CodeTransProcessor javax.lang.model.element.TypeElement io.vertx.codetrans.Lang com.fasterxml.jackson.databind.node.ArrayNode top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
12: iconst_0
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lio/vertx/codetrans/CodeTransProcessor;
0 13 1 type Ljavax/lang/model/element/TypeElement;
0 13 2 lang Lio/vertx/codetrans/Lang;
3 13 3 excludes Lcom/fasterxml/jackson/databind/node/ArrayNode;
5 11 4 exclude Lcom/fasterxml/jackson/databind/JsonNode;
8 11 6 pck Ljava/lang/String;
9 11 7 langs Lcom/fasterxml/jackson/databind/node/ArrayNode;
MethodParameters:
Name Flags
type
lang
private boolean isLanguageSkipped(com.fasterxml.jackson.databind.node.ArrayNode, io.vertx.codetrans.Lang);
descriptor: (Lcom/fasterxml/jackson/databind/node/ArrayNode;Lio/vertx/codetrans/Lang;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnonnull 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 1
invokevirtual com.fasterxml.jackson.databind.node.ArrayNode.iterator:()Ljava/util/Iterator;
astore 4
goto 6
StackMap locals: io.vertx.codetrans.CodeTransProcessor com.fasterxml.jackson.databind.node.ArrayNode io.vertx.codetrans.Lang top java.util.Iterator
StackMap stack:
3: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.fasterxml.jackson.databind.JsonNode
astore 3
start local 3 4: aload 3
invokevirtual com.fasterxml.jackson.databind.JsonNode.asText:()Ljava/lang/String;
aload 2
invokeinterface io.vertx.codetrans.Lang.getExtension:()Ljava/lang/String;
invokevirtual java.lang.String.equalsIgnoreCase:(Ljava/lang/String;)Z
ifeq 6
5: iconst_1
ireturn
end local 3 6: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
7: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lio/vertx/codetrans/CodeTransProcessor;
0 8 1 langs Lcom/fasterxml/jackson/databind/node/ArrayNode;
0 8 2 lang Lio/vertx/codetrans/Lang;
4 6 3 node Lcom/fasterxml/jackson/databind/JsonNode;
MethodParameters:
Name Flags
langs
lang
private static void lambda$0(java.util.LinkedHashMap, javax.lang.model.element.Element);
descriptor: (Ljava/util/LinkedHashMap;Ljavax/lang/model/element/Element;)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
checkcast javax.lang.model.element.ExecutableElement
iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
invokevirtual java.util.LinkedHashMap.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 annotatedElt Ljavax/lang/model/element/Element;
}
SourceFile: "CodeTransProcessor.java"
NestMembers:
io.vertx.codetrans.CodeTransProcessor$1
InnerClasses:
public final Feature = com.fasterxml.jackson.core.JsonParser$Feature of com.fasterxml.jackson.core.JsonParser
io.vertx.codetrans.CodeTransProcessor$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
public abstract Location = javax.tools.JavaFileManager$Location of javax.tools.JavaFileManager