public class io.vertx.lang.js.generator.JSClassGenerator extends io.vertx.lang.js.generator.AbstractJSClassGenerator<io.vertx.codegen.ClassModel>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: io.vertx.lang.js.generator.JSClassGenerator
super_class: io.vertx.lang.js.generator.AbstractJSClassGenerator
{
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial io.vertx.lang.js.generator.AbstractJSClassGenerator.<init>:()V
1: aload 0
ldc "JavaScript"
putfield io.vertx.lang.js.generator.JSClassGenerator.name:Ljava/lang/String;
2: aload 0
ldc "class"
invokestatic java.util.Collections.singleton:(Ljava/lang/Object;)Ljava/util/Set;
putfield io.vertx.lang.js.generator.JSClassGenerator.kinds:Ljava/util/Set;
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/vertx/lang/js/generator/JSClassGenerator;
public java.lang.String filename(io.vertx.codegen.ClassModel);
descriptor: (Lio/vertx/codegen/ClassModel;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual io.vertx.codegen.ClassModel.getType:()Lio/vertx/codegen/type/ClassTypeInfo;
astore 2
start local 2 1: new java.lang.StringBuilder
dup
ldc "resources/"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual io.vertx.codegen.type.ClassTypeInfo.getModuleName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "-js/"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokevirtual io.vertx.codegen.type.ClassTypeInfo.getRaw:()Lio/vertx/codegen/type/ClassTypeInfo;
invokevirtual io.vertx.codegen.type.ClassTypeInfo.getSimpleName:()Ljava/lang/String;
invokestatic io.vertx.codegen.Helper.convertCamelCaseToUnderscores:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ".js"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/lang/js/generator/JSClassGenerator;
0 2 1 model Lio/vertx/codegen/ClassModel;
1 2 2 type Lio/vertx/codegen/type/ClassTypeInfo;
MethodParameters:
Name Flags
model
public java.lang.String render(io.vertx.codegen.ClassModel, int, int, java.util.Map<java.lang.String, java.lang.Object>);
descriptor: (Lio/vertx/codegen/ClassModel;IILjava/util/Map;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=14, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
invokevirtual io.vertx.codegen.ClassModel.getType:()Lio/vertx/codegen/type/ClassTypeInfo;
astore 5
start local 5 1: aload 5
invokevirtual io.vertx.codegen.type.ClassTypeInfo.getSimpleName:()Ljava/lang/String;
astore 6
start local 6 2: aload 6
invokestatic io.vertx.codegen.Helper.decapitaliseFirstLetter:(Ljava/lang/String;)Ljava/lang/String;
astore 7
start local 7 3: new java.io.StringWriter
dup
invokespecial java.io.StringWriter.<init>:()V
astore 8
start local 8 4: new io.vertx.codegen.writer.CodeWriter
dup
aload 8
invokespecial io.vertx.codegen.writer.CodeWriter.<init>:(Ljava/io/Writer;)V
astore 9
start local 9 5: aload 0
aload 9
invokevirtual io.vertx.lang.js.generator.JSClassGenerator.genLicenses:(Ljava/io/PrintWriter;)V
6: aload 9
invokevirtual io.vertx.codegen.writer.CodeWriter.println:()V
7: aload 9
ldc "/** @module %s */\n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
aload 5
invokevirtual io.vertx.lang.js.generator.JSClassGenerator.getModuleName:(Lio/vertx/codegen/type/ClassTypeInfo;)Ljava/lang/String;
aastore
invokevirtual io.vertx.codegen.writer.CodeWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Lio/vertx/codegen/writer/CodeWriter;
pop
8: aload 0
aload 1
aload 9
invokevirtual io.vertx.lang.js.generator.JSClassGenerator.genRequire:(Lio/vertx/codegen/ClassModel;Ljava/io/PrintWriter;)V
9: aload 9
invokevirtual io.vertx.codegen.writer.CodeWriter.println:()V
10: aload 0
aload 1
aload 9
invokevirtual io.vertx.lang.js.generator.JSClassGenerator.genDoc:(Lio/vertx/codegen/ClassModel;Lio/vertx/codegen/writer/CodeWriter;)V
11: aload 9
ldc "var %s = function(j_val"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 6
aastore
invokevirtual io.vertx.codegen.writer.CodeWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Lio/vertx/codegen/writer/CodeWriter;
pop
12: aload 1
invokevirtual io.vertx.codegen.ClassModel.getTypeParams:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 11
goto 15
StackMap locals: io.vertx.lang.js.generator.JSClassGenerator io.vertx.codegen.ClassModel int int java.util.Map io.vertx.codegen.type.ClassTypeInfo java.lang.String java.lang.String java.io.StringWriter io.vertx.codegen.writer.CodeWriter top java.util.Iterator
StackMap stack:
13: aload 11
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.vertx.codegen.TypeParamInfo$Class
astore 10
start local 10 14: aload 9
ldc ", j_arg_%s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 10
invokevirtual io.vertx.codegen.TypeParamInfo$Class.getIndex:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual io.vertx.codegen.writer.CodeWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Lio/vertx/codegen/writer/CodeWriter;
pop
end local 10 15: StackMap locals:
StackMap stack:
aload 11
invokeinterface java.util.Iterator.hasNext:()Z
ifne 13
16: aload 9
ldc ") {"
invokevirtual io.vertx.codegen.writer.CodeWriter.println:(Ljava/lang/String;)V
17: aload 9
invokevirtual io.vertx.codegen.writer.CodeWriter.println:()V
18: aload 9
invokevirtual io.vertx.codegen.writer.CodeWriter.indent:()Lio/vertx/codegen/writer/CodeWriter;
pop
19: aload 9
ldc "var j_%s = j_val;\n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 7
aastore
invokevirtual io.vertx.codegen.writer.CodeWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Lio/vertx/codegen/writer/CodeWriter;
pop
20: aload 9
ldc "var that = this;"
invokevirtual io.vertx.codegen.writer.CodeWriter.println:(Ljava/lang/String;)V
21: aload 9
invokevirtual io.vertx.codegen.writer.CodeWriter.unindent:()Lio/vertx/codegen/writer/CodeWriter;
pop
22: aload 1
invokevirtual io.vertx.codegen.ClassModel.getTypeParams:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 11
goto 25
StackMap locals:
StackMap stack:
23: aload 11
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.vertx.codegen.TypeParamInfo$Class
astore 10
start local 10 24: aload 9
ldc " var j_%s = typeof j_arg_%s !== 'undefined' ? j_arg_%s : utils.unknown_jtype;"
iconst_3
anewarray java.lang.Object
dup
iconst_0
aload 10
invokevirtual io.vertx.codegen.TypeParamInfo$Class.getName:()Ljava/lang/String;
aastore
dup
iconst_1
aload 10
invokevirtual io.vertx.codegen.TypeParamInfo$Class.getIndex:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
aload 10
invokevirtual io.vertx.codegen.TypeParamInfo$Class.getIndex:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual io.vertx.codegen.writer.CodeWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Lio/vertx/codegen/writer/CodeWriter;
pop
end local 10 25: StackMap locals:
StackMap stack:
aload 11
invokeinterface java.util.Iterator.hasNext:()Z
ifne 23
26: aload 9
invokevirtual io.vertx.codegen.writer.CodeWriter.indent:()Lio/vertx/codegen/writer/CodeWriter;
pop
27: aload 1
invokevirtual io.vertx.codegen.ClassModel.getSuperTypes:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 11
goto 43
StackMap locals:
StackMap stack:
28: aload 11
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.vertx.codegen.type.TypeInfo
astore 10
start local 10 29: aload 9
aload 10
invokevirtual io.vertx.codegen.type.TypeInfo.getRaw:()Lio/vertx/codegen/type/ClassTypeInfo;
invokevirtual io.vertx.codegen.type.ClassTypeInfo.getSimpleName:()Ljava/lang/String;
invokevirtual io.vertx.codegen.writer.CodeWriter.print:(Ljava/lang/String;)V
30: aload 9
ldc ".call(this, j_val"
invokevirtual io.vertx.codegen.writer.CodeWriter.print:(Ljava/lang/String;)V
31: aload 10
instanceof io.vertx.codegen.type.ParameterizedTypeInfo
ifeq 42
aload 10
invokevirtual io.vertx.codegen.type.TypeInfo.getRaw:()Lio/vertx/codegen/type/ClassTypeInfo;
checkcast io.vertx.codegen.type.ApiTypeInfo
invokevirtual io.vertx.codegen.type.ApiTypeInfo.isConcrete:()Z
ifeq 42
32: aload 10
checkcast io.vertx.codegen.type.ParameterizedTypeInfo
invokevirtual io.vertx.codegen.type.ParameterizedTypeInfo.getArgs:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 13
goto 41
StackMap locals: io.vertx.lang.js.generator.JSClassGenerator io.vertx.codegen.ClassModel int int java.util.Map io.vertx.codegen.type.ClassTypeInfo java.lang.String java.lang.String java.io.StringWriter io.vertx.codegen.writer.CodeWriter io.vertx.codegen.type.TypeInfo java.util.Iterator top java.util.Iterator
StackMap stack:
33: aload 13
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.vertx.codegen.type.TypeInfo
astore 12
start local 12 34: aload 12
invokevirtual io.vertx.codegen.type.TypeInfo.getKind:()Lio/vertx/codegen/type/ClassKind;
getstatic io.vertx.codegen.type.ClassKind.API:Lio/vertx/codegen/type/ClassKind;
if_acmpne 37
35: aload 9
ldc ", %s._jtype"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 12
invokevirtual io.vertx.codegen.type.TypeInfo.getSimpleName:()Ljava/lang/String;
aastore
invokevirtual io.vertx.codegen.writer.CodeWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Lio/vertx/codegen/writer/CodeWriter;
pop
36: goto 41
StackMap locals: io.vertx.lang.js.generator.JSClassGenerator io.vertx.codegen.ClassModel int int java.util.Map io.vertx.codegen.type.ClassTypeInfo java.lang.String java.lang.String java.io.StringWriter io.vertx.codegen.writer.CodeWriter io.vertx.codegen.type.TypeInfo java.util.Iterator io.vertx.codegen.type.TypeInfo java.util.Iterator
StackMap stack:
37: aload 12
invokevirtual io.vertx.codegen.type.TypeInfo.isVariable:()Z
ifeq 40
38: aload 9
ldc ", j_%s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 12
invokevirtual io.vertx.codegen.type.TypeInfo.getName:()Ljava/lang/String;
aastore
invokevirtual io.vertx.codegen.writer.CodeWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Lio/vertx/codegen/writer/CodeWriter;
pop
39: goto 41
40: StackMap locals:
StackMap stack:
aload 9
ldc ", undefined"
invokevirtual io.vertx.codegen.writer.CodeWriter.print:(Ljava/lang/String;)V
end local 12 41: StackMap locals: io.vertx.lang.js.generator.JSClassGenerator io.vertx.codegen.ClassModel int int java.util.Map io.vertx.codegen.type.ClassTypeInfo java.lang.String java.lang.String java.io.StringWriter io.vertx.codegen.writer.CodeWriter io.vertx.codegen.type.TypeInfo java.util.Iterator top java.util.Iterator
StackMap stack:
aload 13
invokeinterface java.util.Iterator.hasNext:()Z
ifne 33
42: StackMap locals: io.vertx.lang.js.generator.JSClassGenerator io.vertx.codegen.ClassModel int int java.util.Map io.vertx.codegen.type.ClassTypeInfo java.lang.String java.lang.String java.io.StringWriter io.vertx.codegen.writer.CodeWriter io.vertx.codegen.type.TypeInfo java.util.Iterator
StackMap stack:
aload 9
ldc ");\n"
invokevirtual io.vertx.codegen.writer.CodeWriter.append:(Ljava/lang/CharSequence;)Lio/vertx/codegen/writer/CodeWriter;
pop
end local 10 43: StackMap locals: io.vertx.lang.js.generator.JSClassGenerator io.vertx.codegen.ClassModel int int java.util.Map io.vertx.codegen.type.ClassTypeInfo java.lang.String java.lang.String java.io.StringWriter io.vertx.codegen.writer.CodeWriter top java.util.Iterator
StackMap stack:
aload 11
invokeinterface java.util.Iterator.hasNext:()Z
ifne 28
44: aload 9
invokevirtual io.vertx.codegen.writer.CodeWriter.println:()V
45: aload 1
invokevirtual io.vertx.codegen.ClassModel.getMethods:()Ljava/util/List;
aload 9
invokedynamic accept(Lio/vertx/codegen/writer/CodeWriter;)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/lang/js/generator/JSClassGenerator.lambda$0(Lio/vertx/codegen/writer/CodeWriter;Lio/vertx/codegen/MethodInfo;)V (6)
(Lio/vertx/codegen/MethodInfo;)V
invokeinterface java.util.List.forEach:(Ljava/util/function/Consumer;)V
46: aload 1
invokevirtual io.vertx.codegen.ClassModel.getMethods:()Ljava/util/List;
47: invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
48: invokedynamic test()Ljava/util/function/Predicate;
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;)Z
io/vertx/lang/js/generator/JSClassGenerator.lambda$1(Lio/vertx/codegen/MethodInfo;)Z (6)
(Lio/vertx/codegen/MethodInfo;)Z
invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
49: 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/codegen/MethodInfo.getName()Ljava/lang/String; (5)
(Lio/vertx/codegen/MethodInfo;)Ljava/lang/String;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
invokeinterface java.util.stream.Stream.distinct:()Ljava/util/stream/Stream;
aload 0
aload 1
aload 9
invokedynamic accept(Lio/vertx/lang/js/generator/JSClassGenerator;Lio/vertx/codegen/ClassModel;Lio/vertx/codegen/writer/CodeWriter;)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/lang/js/generator/JSClassGenerator.lambda$3(Lio/vertx/codegen/ClassModel;Lio/vertx/codegen/writer/CodeWriter;Ljava/lang/String;)V (7)
(Ljava/lang/String;)V
invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
50: aload 9
51: ldc "// A reference to the underlying Java delegate\n"
invokevirtual io.vertx.codegen.writer.CodeWriter.append:(Ljava/lang/CharSequence;)Lio/vertx/codegen/writer/CodeWriter;
52: ldc "// NOTE! This is an internal API and must not be used in user code.\n"
invokevirtual io.vertx.codegen.writer.CodeWriter.append:(Ljava/lang/CharSequence;)Lio/vertx/codegen/writer/CodeWriter;
53: ldc "// If you rely on this property your code is likely to break if we change it / remove it without warning.\n"
invokevirtual io.vertx.codegen.writer.CodeWriter.append:(Ljava/lang/CharSequence;)Lio/vertx/codegen/writer/CodeWriter;
54: ldc "this._jdel = j_%s;\n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 7
aastore
invokevirtual io.vertx.codegen.writer.CodeWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Lio/vertx/codegen/writer/CodeWriter;
pop
55: aload 9
56: invokevirtual io.vertx.codegen.writer.CodeWriter.unindent:()Lio/vertx/codegen/writer/CodeWriter;
57: ldc "};\n"
invokevirtual io.vertx.codegen.writer.CodeWriter.append:(Ljava/lang/CharSequence;)Lio/vertx/codegen/writer/CodeWriter;
pop
58: aload 9
invokevirtual io.vertx.codegen.writer.CodeWriter.println:()V
59: aload 9
ldc "%s._jclass = utils.getJavaClass(\"%s\");\n"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 6
aastore
dup
iconst_1
aload 5
invokevirtual io.vertx.codegen.type.ClassTypeInfo.getRaw:()Lio/vertx/codegen/type/ClassTypeInfo;
invokevirtual io.vertx.codegen.type.ClassTypeInfo.getName:()Ljava/lang/String;
aastore
invokevirtual io.vertx.codegen.writer.CodeWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Lio/vertx/codegen/writer/CodeWriter;
pop
60: aload 9
61: ldc "%s._jtype = {"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 6
aastore
invokevirtual io.vertx.codegen.writer.CodeWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Lio/vertx/codegen/writer/CodeWriter;
62: invokevirtual io.vertx.codegen.writer.CodeWriter.indent:()Lio/vertx/codegen/writer/CodeWriter;
63: ldc "accept: function(obj) {\n"
invokevirtual io.vertx.codegen.writer.CodeWriter.append:(Ljava/lang/CharSequence;)Lio/vertx/codegen/writer/CodeWriter;
64: invokevirtual io.vertx.codegen.writer.CodeWriter.indent:()Lio/vertx/codegen/writer/CodeWriter;
65: ldc "return %s._jclass.isInstance(obj._jdel);\n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 6
aastore
invokevirtual io.vertx.codegen.writer.CodeWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Lio/vertx/codegen/writer/CodeWriter;
66: invokevirtual io.vertx.codegen.writer.CodeWriter.unindent:()Lio/vertx/codegen/writer/CodeWriter;
67: ldc "},"
invokevirtual io.vertx.codegen.writer.CodeWriter.append:(Ljava/lang/CharSequence;)Lio/vertx/codegen/writer/CodeWriter;
68: ldc "wrap: function(jdel) {\n"
invokevirtual io.vertx.codegen.writer.CodeWriter.append:(Ljava/lang/CharSequence;)Lio/vertx/codegen/writer/CodeWriter;
69: invokevirtual io.vertx.codegen.writer.CodeWriter.indent:()Lio/vertx/codegen/writer/CodeWriter;
70: ldc "var obj = Object.create(%s.prototype, {});\n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 6
aastore
invokevirtual io.vertx.codegen.writer.CodeWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Lio/vertx/codegen/writer/CodeWriter;
71: ldc "%s.apply(obj, arguments);\n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 6
aastore
invokevirtual io.vertx.codegen.writer.CodeWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Lio/vertx/codegen/writer/CodeWriter;
72: ldc "return obj;\n"
invokevirtual io.vertx.codegen.writer.CodeWriter.append:(Ljava/lang/CharSequence;)Lio/vertx/codegen/writer/CodeWriter;
73: invokevirtual io.vertx.codegen.writer.CodeWriter.unindent:()Lio/vertx/codegen/writer/CodeWriter;
74: ldc "},\n"
invokevirtual io.vertx.codegen.writer.CodeWriter.append:(Ljava/lang/CharSequence;)Lio/vertx/codegen/writer/CodeWriter;
ldc "unwrap: function(obj) {\n"
invokevirtual io.vertx.codegen.writer.CodeWriter.append:(Ljava/lang/CharSequence;)Lio/vertx/codegen/writer/CodeWriter;
75: invokevirtual io.vertx.codegen.writer.CodeWriter.indent:()Lio/vertx/codegen/writer/CodeWriter;
76: ldc "return obj._jdel;\n"
invokevirtual io.vertx.codegen.writer.CodeWriter.append:(Ljava/lang/CharSequence;)Lio/vertx/codegen/writer/CodeWriter;
77: invokevirtual io.vertx.codegen.writer.CodeWriter.unindent:()Lio/vertx/codegen/writer/CodeWriter;
78: ldc "}\n"
invokevirtual io.vertx.codegen.writer.CodeWriter.append:(Ljava/lang/CharSequence;)Lio/vertx/codegen/writer/CodeWriter;
79: invokevirtual io.vertx.codegen.writer.CodeWriter.unindent:()Lio/vertx/codegen/writer/CodeWriter;
80: ldc "};\n"
invokevirtual io.vertx.codegen.writer.CodeWriter.append:(Ljava/lang/CharSequence;)Lio/vertx/codegen/writer/CodeWriter;
pop
81: aload 9
82: ldc "%s._create = function(jdel) {"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 6
aastore
invokevirtual io.vertx.codegen.writer.CodeWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Lio/vertx/codegen/writer/CodeWriter;
83: invokevirtual io.vertx.codegen.writer.CodeWriter.indent:()Lio/vertx/codegen/writer/CodeWriter;
84: ldc "var obj = Object.create(%s.prototype, {});\n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 6
aastore
invokevirtual io.vertx.codegen.writer.CodeWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Lio/vertx/codegen/writer/CodeWriter;
85: ldc "%s.apply(obj, arguments);\n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 6
aastore
invokevirtual io.vertx.codegen.writer.CodeWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Lio/vertx/codegen/writer/CodeWriter;
86: ldc "return obj;\n"
invokevirtual io.vertx.codegen.writer.CodeWriter.append:(Ljava/lang/CharSequence;)Lio/vertx/codegen/writer/CodeWriter;
87: invokevirtual io.vertx.codegen.writer.CodeWriter.unindent:()Lio/vertx/codegen/writer/CodeWriter;
88: ldc "}\n"
invokevirtual io.vertx.codegen.writer.CodeWriter.append:(Ljava/lang/CharSequence;)Lio/vertx/codegen/writer/CodeWriter;
pop
89: aload 1
invokevirtual io.vertx.codegen.ClassModel.getMethods:()Ljava/util/List;
90: invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
91: invokedynamic test()Ljava/util/function/Predicate;
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;)Z
io/vertx/codegen/MethodInfo.isStaticMethod()Z (5)
(Lio/vertx/codegen/MethodInfo;)Z
invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
92: 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/codegen/MethodInfo.getName()Ljava/lang/String; (5)
(Lio/vertx/codegen/MethodInfo;)Ljava/lang/String;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
invokeinterface java.util.stream.Stream.distinct:()Ljava/util/stream/Stream;
aload 0
aload 1
aload 9
invokedynamic accept(Lio/vertx/lang/js/generator/JSClassGenerator;Lio/vertx/codegen/ClassModel;Lio/vertx/codegen/writer/CodeWriter;)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/lang/js/generator/JSClassGenerator.lambda$6(Lio/vertx/codegen/ClassModel;Lio/vertx/codegen/writer/CodeWriter;Ljava/lang/String;)V (7)
(Ljava/lang/String;)V
invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
93: aload 1
invokevirtual io.vertx.codegen.ClassModel.getConstants:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 11
goto 96
StackMap locals:
StackMap stack:
94: aload 11
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.vertx.codegen.ConstantInfo
astore 10
start local 10 95: aload 0
aload 1
aload 10
aload 9
invokevirtual io.vertx.lang.js.generator.JSClassGenerator.genConstant:(Lio/vertx/codegen/ClassModel;Lio/vertx/codegen/ConstantInfo;Lio/vertx/codegen/writer/CodeWriter;)V
end local 10 96: StackMap locals:
StackMap stack:
aload 11
invokeinterface java.util.Iterator.hasNext:()Z
ifne 94
97: aload 9
ldc "module.exports = %s;"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 6
aastore
invokevirtual io.vertx.codegen.writer.CodeWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Lio/vertx/codegen/writer/CodeWriter;
pop
98: aload 8
invokevirtual java.io.StringWriter.toString:()Ljava/lang/String;
areturn
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 99 0 this Lio/vertx/lang/js/generator/JSClassGenerator;
0 99 1 model Lio/vertx/codegen/ClassModel;
0 99 2 index I
0 99 3 size I
0 99 4 session Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
1 99 5 type Lio/vertx/codegen/type/ClassTypeInfo;
2 99 6 simpleName Ljava/lang/String;
3 99 7 ifaceName Ljava/lang/String;
4 99 8 sw Ljava/io/StringWriter;
5 99 9 writer Lio/vertx/codegen/writer/CodeWriter;
14 15 10 param Lio/vertx/codegen/TypeParamInfo$Class;
24 25 10 param Lio/vertx/codegen/TypeParamInfo$Class;
29 43 10 superType Lio/vertx/codegen/type/TypeInfo;
34 41 12 arg Lio/vertx/codegen/type/TypeInfo;
95 96 10 constant Lio/vertx/codegen/ConstantInfo;
Signature: (Lio/vertx/codegen/ClassModel;IILjava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;)Ljava/lang/String;
MethodParameters:
Name Flags
model
index
size
session
protected void genMethodAdapter(io.vertx.codegen.ClassModel, io.vertx.codegen.MethodInfo, io.vertx.codegen.writer.CodeWriter);
descriptor: (Lio/vertx/codegen/ClassModel;Lio/vertx/codegen/MethodInfo;Lio/vertx/codegen/writer/CodeWriter;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=12, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
invokevirtual io.vertx.codegen.MethodInfo.getReturnType:()Lio/vertx/codegen/type/TypeInfo;
invokevirtual io.vertx.codegen.type.TypeInfo.getKind:()Lio/vertx/codegen/type/ClassKind;
getstatic io.vertx.codegen.type.ClassKind.VOID:Lio/vertx/codegen/type/ClassKind;
if_acmpeq 18
1: aload 2
invokevirtual io.vertx.codegen.MethodInfo.isFluent:()Z
ifeq 7
2: aload 3
ldc "%s ;\n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
aload 1
aload 2
invokevirtual io.vertx.lang.js.generator.JSClassGenerator.genMethodCall:(Lio/vertx/codegen/ClassModel;Lio/vertx/codegen/MethodInfo;)Ljava/lang/String;
aastore
invokevirtual io.vertx.codegen.writer.CodeWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Lio/vertx/codegen/writer/CodeWriter;
pop
3: aload 3
ldc "return %s;\n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 2
invokevirtual io.vertx.codegen.MethodInfo.isStaticMethod:()Z
ifeq 4
aload 1
invokevirtual io.vertx.codegen.ClassModel.getType:()Lio/vertx/codegen/type/ClassTypeInfo;
invokevirtual io.vertx.codegen.type.ClassTypeInfo.getSimpleName:()Ljava/lang/String;
goto 5
StackMap locals: io.vertx.lang.js.generator.JSClassGenerator io.vertx.codegen.ClassModel io.vertx.codegen.MethodInfo io.vertx.codegen.writer.CodeWriter
StackMap stack: io.vertx.codegen.writer.CodeWriter java.lang.String java.lang.Object[] java.lang.Object[] int
4: ldc "that"
StackMap locals: io.vertx.lang.js.generator.JSClassGenerator io.vertx.codegen.ClassModel io.vertx.codegen.MethodInfo io.vertx.codegen.writer.CodeWriter
StackMap stack: io.vertx.codegen.writer.CodeWriter java.lang.String java.lang.Object[] java.lang.Object[] int java.lang.String
5: aastore
invokevirtual io.vertx.codegen.writer.CodeWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Lio/vertx/codegen/writer/CodeWriter;
pop
6: goto 19
StackMap locals:
StackMap stack:
7: aload 2
invokevirtual io.vertx.codegen.MethodInfo.isCacheReturn:()Z
ifeq 16
8: aload 3
9: ldc "if (that.cached%s == null) {\n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 2
invokevirtual io.vertx.codegen.MethodInfo.getName:()Ljava/lang/String;
aastore
invokevirtual io.vertx.codegen.writer.CodeWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Lio/vertx/codegen/writer/CodeWriter;
10: invokevirtual io.vertx.codegen.writer.CodeWriter.indent:()Lio/vertx/codegen/writer/CodeWriter;
11: ldc "that.cached%s = %s;\n"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 2
invokevirtual io.vertx.codegen.MethodInfo.getName:()Ljava/lang/String;
aastore
dup
iconst_1
aload 0
aload 1
aload 2
aload 2
invokevirtual io.vertx.codegen.MethodInfo.getReturnType:()Lio/vertx/codegen/type/TypeInfo;
aload 0
aload 1
aload 2
invokevirtual io.vertx.lang.js.generator.JSClassGenerator.genMethodCall:(Lio/vertx/codegen/ClassModel;Lio/vertx/codegen/MethodInfo;)Ljava/lang/String;
invokevirtual io.vertx.lang.js.generator.JSClassGenerator.convReturn:(Lio/vertx/codegen/ClassModel;Lio/vertx/codegen/MethodInfo;Lio/vertx/codegen/type/TypeInfo;Ljava/lang/String;)Ljava/lang/String;
aastore
invokevirtual io.vertx.codegen.writer.CodeWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Lio/vertx/codegen/writer/CodeWriter;
12: invokevirtual io.vertx.codegen.writer.CodeWriter.unindent:()Lio/vertx/codegen/writer/CodeWriter;
13: ldc "}\n"
invokevirtual io.vertx.codegen.writer.CodeWriter.append:(Ljava/lang/CharSequence;)Lio/vertx/codegen/writer/CodeWriter;
14: ldc "return that.cached%s;\n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 2
invokevirtual io.vertx.codegen.MethodInfo.getName:()Ljava/lang/String;
aastore
invokevirtual io.vertx.codegen.writer.CodeWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Lio/vertx/codegen/writer/CodeWriter;
pop
15: goto 19
16: StackMap locals:
StackMap stack:
aload 3
ldc "return %s ;\n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
aload 1
aload 2
aload 2
invokevirtual io.vertx.codegen.MethodInfo.getReturnType:()Lio/vertx/codegen/type/TypeInfo;
aload 0
aload 1
aload 2
invokevirtual io.vertx.lang.js.generator.JSClassGenerator.genMethodCall:(Lio/vertx/codegen/ClassModel;Lio/vertx/codegen/MethodInfo;)Ljava/lang/String;
invokevirtual io.vertx.lang.js.generator.JSClassGenerator.convReturn:(Lio/vertx/codegen/ClassModel;Lio/vertx/codegen/MethodInfo;Lio/vertx/codegen/type/TypeInfo;Ljava/lang/String;)Ljava/lang/String;
aastore
invokevirtual io.vertx.codegen.writer.CodeWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Lio/vertx/codegen/writer/CodeWriter;
pop
17: goto 19
18: StackMap locals:
StackMap stack:
aload 3
ldc "%s;\n"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
aload 1
aload 2
invokevirtual io.vertx.lang.js.generator.JSClassGenerator.genMethodCall:(Lio/vertx/codegen/ClassModel;Lio/vertx/codegen/MethodInfo;)Ljava/lang/String;
aastore
invokevirtual io.vertx.codegen.writer.CodeWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Lio/vertx/codegen/writer/CodeWriter;
pop
19: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lio/vertx/lang/js/generator/JSClassGenerator;
0 20 1 model Lio/vertx/codegen/ClassModel;
0 20 2 method Lio/vertx/codegen/MethodInfo;
0 20 3 writer Lio/vertx/codegen/writer/CodeWriter;
MethodParameters:
Name Flags
model
method
writer
private java.lang.String genMethodCall(io.vertx.codegen.ClassModel, io.vertx.codegen.MethodInfo);
descriptor: (Lio/vertx/codegen/ClassModel;Lio/vertx/codegen/MethodInfo;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=12, args_size=3
start local 0 start local 1 start local 2 0: new java.io.StringWriter
dup
invokespecial java.io.StringWriter.<init>:()V
astore 3
start local 3 1: new java.io.PrintWriter
dup
aload 3
invokespecial java.io.PrintWriter.<init>:(Ljava/io/Writer;)V
astore 4
start local 4 2: aload 1
invokevirtual io.vertx.codegen.ClassModel.getType:()Lio/vertx/codegen/type/ClassTypeInfo;
invokevirtual io.vertx.codegen.type.ClassTypeInfo.getSimpleName:()Ljava/lang/String;
astore 5
start local 5 3: aload 5
invokestatic io.vertx.codegen.Helper.decapitaliseFirstLetter:(Ljava/lang/String;)Ljava/lang/String;
astore 6
start local 6 4: aload 2
invokevirtual io.vertx.codegen.MethodInfo.isStaticMethod:()Z
ifeq 7
5: aload 4
ldc "J%s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 5
aastore
invokevirtual java.io.PrintWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
pop
6: goto 8
7: StackMap locals: io.vertx.lang.js.generator.JSClassGenerator io.vertx.codegen.ClassModel io.vertx.codegen.MethodInfo java.io.StringWriter java.io.PrintWriter java.lang.String java.lang.String
StackMap stack:
aload 4
ldc "j_%s"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 6
aastore
invokevirtual java.io.PrintWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
pop
8: StackMap locals:
StackMap stack:
aload 4
ldc "[\"%s("
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 2
invokevirtual io.vertx.codegen.MethodInfo.getName:()Ljava/lang/String;
aastore
invokevirtual java.io.PrintWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
pop
9: iconst_1
istore 7
start local 7 10: aload 2
invokevirtual io.vertx.codegen.MethodInfo.getParams:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 9
goto 23
StackMap locals: io.vertx.lang.js.generator.JSClassGenerator io.vertx.codegen.ClassModel io.vertx.codegen.MethodInfo java.io.StringWriter java.io.PrintWriter java.lang.String java.lang.String int top java.util.Iterator
StackMap stack:
11: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.vertx.codegen.ParamInfo
astore 8
start local 8 12: iload 7
ifeq 15
13: iconst_0
istore 7
14: goto 16
15: StackMap locals: io.vertx.lang.js.generator.JSClassGenerator io.vertx.codegen.ClassModel io.vertx.codegen.MethodInfo java.io.StringWriter java.io.PrintWriter java.lang.String java.lang.String int io.vertx.codegen.ParamInfo java.util.Iterator
StackMap stack:
aload 4
ldc ","
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
16: StackMap locals:
StackMap stack:
aload 8
invokevirtual io.vertx.codegen.ParamInfo.getType:()Lio/vertx/codegen/type/TypeInfo;
invokevirtual io.vertx.codegen.type.TypeInfo.isParameterized:()Z
ifeq 19
17: aload 4
aload 8
invokevirtual io.vertx.codegen.ParamInfo.getType:()Lio/vertx/codegen/type/TypeInfo;
invokevirtual io.vertx.codegen.type.TypeInfo.getRaw:()Lio/vertx/codegen/type/ClassTypeInfo;
invokevirtual io.vertx.codegen.type.ClassTypeInfo.getName:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
18: goto 23
StackMap locals:
StackMap stack:
19: aload 8
invokevirtual io.vertx.codegen.ParamInfo.getType:()Lio/vertx/codegen/type/TypeInfo;
invokevirtual io.vertx.codegen.type.TypeInfo.isVariable:()Z
ifeq 22
20: aload 4
ldc "java.lang.Object"
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
21: goto 23
22: StackMap locals:
StackMap stack:
aload 4
aload 8
invokevirtual io.vertx.codegen.ParamInfo.getType:()Lio/vertx/codegen/type/TypeInfo;
invokevirtual io.vertx.codegen.type.TypeInfo.getName:()Ljava/lang/String;
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
end local 8 23: StackMap locals: io.vertx.lang.js.generator.JSClassGenerator io.vertx.codegen.ClassModel io.vertx.codegen.MethodInfo java.io.StringWriter java.io.PrintWriter java.lang.String java.lang.String int top java.util.Iterator
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 11
24: aload 4
ldc ")\"]("
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
25: iconst_0
istore 8
start local 8 26: iconst_1
istore 7
27: aload 2
invokevirtual io.vertx.codegen.MethodInfo.getParams:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 10
goto 37
StackMap locals: io.vertx.lang.js.generator.JSClassGenerator io.vertx.codegen.ClassModel io.vertx.codegen.MethodInfo java.io.StringWriter java.io.PrintWriter java.lang.String java.lang.String int int top java.util.Iterator
StackMap stack:
28: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.vertx.codegen.ParamInfo
astore 9
start local 9 29: iload 7
ifeq 32
30: iconst_0
istore 7
31: goto 33
32: StackMap locals: io.vertx.lang.js.generator.JSClassGenerator io.vertx.codegen.ClassModel io.vertx.codegen.MethodInfo java.io.StringWriter java.io.PrintWriter java.lang.String java.lang.String int int io.vertx.codegen.ParamInfo java.util.Iterator
StackMap stack:
aload 4
ldc ", "
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
33: StackMap locals:
StackMap stack:
aload 1
invokevirtual io.vertx.codegen.ClassModel.getMethods:()Ljava/util/List;
invokeinterface java.util.List.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/codegen/MethodInfo.getName()Ljava/lang/String; (5)
(Lio/vertx/codegen/MethodInfo;)Ljava/lang/String;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
invokeinterface java.util.stream.Stream.count:()J
lconst_1
lcmp
ifle 34
iconst_1
goto 35
StackMap locals:
StackMap stack:
34: iconst_0
StackMap locals:
StackMap stack: int
35: istore 11
start local 11 36: aload 4
aload 0
aload 1
aload 2
new java.lang.StringBuilder
dup
ldc "__args["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 8
iinc 8 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
iload 11
aload 9
invokevirtual io.vertx.lang.js.generator.JSClassGenerator.convParam:(Lio/vertx/codegen/ClassModel;Lio/vertx/codegen/MethodInfo;Ljava/lang/String;ZLio/vertx/codegen/ParamInfo;)Ljava/lang/String;
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
end local 11 end local 9 37: StackMap locals: io.vertx.lang.js.generator.JSClassGenerator io.vertx.codegen.ClassModel io.vertx.codegen.MethodInfo java.io.StringWriter java.io.PrintWriter java.lang.String java.lang.String int int top java.util.Iterator
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 28
38: aload 4
ldc ")"
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
39: aload 3
invokevirtual java.io.StringWriter.toString:()Ljava/lang/String;
areturn
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 40 0 this Lio/vertx/lang/js/generator/JSClassGenerator;
0 40 1 model Lio/vertx/codegen/ClassModel;
0 40 2 method Lio/vertx/codegen/MethodInfo;
1 40 3 sw Ljava/io/StringWriter;
2 40 4 writer Ljava/io/PrintWriter;
3 40 5 simpleName Ljava/lang/String;
4 40 6 ifaceName Ljava/lang/String;
10 40 7 first Z
12 23 8 param Lio/vertx/codegen/ParamInfo;
26 40 8 pcnt I
29 37 9 param Lio/vertx/codegen/ParamInfo;
36 37 11 overloaded Z
MethodParameters:
Name Flags
model
method
protected java.lang.String convReturn(io.vertx.codegen.ClassModel, io.vertx.codegen.MethodInfo, io.vertx.codegen.type.TypeInfo, java.lang.String);
descriptor: (Lio/vertx/codegen/ClassModel;Lio/vertx/codegen/MethodInfo;Lio/vertx/codegen/type/TypeInfo;Ljava/lang/String;)Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
Code:
stack=16, locals=12, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 3
invokevirtual io.vertx.codegen.type.TypeInfo.getKind:()Lio/vertx/codegen/type/ClassKind;
astore 5
start local 5 1: aload 5
getstatic io.vertx.codegen.type.ClassKind.LIST:Lio/vertx/codegen/type/ClassKind;
if_acmpeq 2
aload 5
getstatic io.vertx.codegen.type.ClassKind.SET:Lio/vertx/codegen/type/ClassKind;
if_acmpne 19
2: StackMap locals: io.vertx.codegen.type.ClassKind
StackMap stack:
aload 3
checkcast io.vertx.codegen.type.ParameterizedTypeInfo
iconst_0
invokevirtual io.vertx.codegen.type.ParameterizedTypeInfo.getArg:(I)Lio/vertx/codegen/type/TypeInfo;
astore 6
start local 6 3: aload 6
invokevirtual io.vertx.codegen.type.TypeInfo.getKind:()Lio/vertx/codegen/type/ClassKind;
astore 7
start local 7 4: aload 7
getfield io.vertx.codegen.type.ClassKind.json:Z
ifeq 6
5: ldc "utils.convReturnListSetJson(%s)"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
6: StackMap locals: io.vertx.codegen.type.TypeInfo io.vertx.codegen.type.ClassKind
StackMap stack:
aload 7
getstatic io.vertx.codegen.type.ClassKind.OBJECT:Lio/vertx/codegen/type/ClassKind;
if_acmpne 8
7: ldc "utils.convReturnListSetObject(%s)"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
8: StackMap locals:
StackMap stack:
aload 7
getstatic io.vertx.codegen.type.ClassKind.DATA_OBJECT:Lio/vertx/codegen/type/ClassKind;
if_acmpne 10
9: ldc "utils.convReturnListSetDataObject(%s)"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
10: StackMap locals:
StackMap stack:
aload 7
getstatic io.vertx.codegen.type.ClassKind.ENUM:Lio/vertx/codegen/type/ClassKind;
if_acmpne 12
11: ldc "utils.convReturnListSetEnum(%s)"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
12: StackMap locals:
StackMap stack:
aload 7
getstatic io.vertx.codegen.type.ClassKind.API:Lio/vertx/codegen/type/ClassKind;
if_acmpne 14
13: ldc "utils.convReturnListSetVertxGen(%s, %s)"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
dup
iconst_1
aload 6
invokevirtual io.vertx.codegen.type.TypeInfo.getRaw:()Lio/vertx/codegen/type/ClassTypeInfo;
invokevirtual io.vertx.codegen.type.ClassTypeInfo.getSimpleName:()Ljava/lang/String;
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
14: StackMap locals:
StackMap stack:
ldc "java.lang.Long"
aload 6
invokevirtual io.vertx.codegen.type.TypeInfo.getName:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 16
15: ldc "utils.convReturnListSetLong(%s)"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
16: StackMap locals:
StackMap stack:
aload 5
getstatic io.vertx.codegen.type.ClassKind.LIST:Lio/vertx/codegen/type/ClassKind;
if_acmpne 18
17: aload 4
areturn
18: StackMap locals:
StackMap stack:
ldc "utils.convReturnSet(%s)"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
end local 7 end local 6 19: StackMap locals:
StackMap stack:
aload 5
getstatic io.vertx.codegen.type.ClassKind.MAP:Lio/vertx/codegen/type/ClassKind;
if_acmpne 21
20: ldc "utils.convReturnMap(%s)"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
21: StackMap locals:
StackMap stack:
aload 5
getfield io.vertx.codegen.type.ClassKind.json:Z
ifeq 23
22: ldc "utils.convReturnJson(%s)"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
23: StackMap locals:
StackMap stack:
aload 5
getfield io.vertx.codegen.type.ClassKind.basic:Z
ifeq 27
24: ldc "java.lang.Long"
aload 3
invokevirtual io.vertx.codegen.type.TypeInfo.getName:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 26
25: ldc "utils.convReturnLong(%s)"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
26: StackMap locals:
StackMap stack:
aload 4
areturn
27: StackMap locals:
StackMap stack:
aload 5
getstatic io.vertx.codegen.type.ClassKind.API:Lio/vertx/codegen/type/ClassKind;
if_acmpne 54
28: new java.io.StringWriter
dup
invokespecial java.io.StringWriter.<init>:()V
astore 6
start local 6 29: new java.io.PrintWriter
dup
aload 6
invokespecial java.io.PrintWriter.<init>:(Ljava/io/Writer;)V
astore 7
start local 7 30: aload 7
ldc "utils.convReturnVertxGen(%s, %s"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 3
invokevirtual io.vertx.codegen.type.TypeInfo.getRaw:()Lio/vertx/codegen/type/ClassTypeInfo;
invokevirtual io.vertx.codegen.type.ClassTypeInfo.getSimpleName:()Ljava/lang/String;
aastore
dup
iconst_1
aload 4
aastore
invokevirtual java.io.PrintWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
pop
31: aload 3
invokevirtual io.vertx.codegen.type.TypeInfo.isParameterized:()Z
ifeq 52
32: aload 3
checkcast io.vertx.codegen.type.ParameterizedTypeInfo
invokevirtual io.vertx.codegen.type.ParameterizedTypeInfo.getArgs:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 9
goto 51
StackMap locals: io.vertx.lang.js.generator.JSClassGenerator io.vertx.codegen.ClassModel io.vertx.codegen.MethodInfo io.vertx.codegen.type.TypeInfo java.lang.String io.vertx.codegen.type.ClassKind java.io.StringWriter java.io.PrintWriter top java.util.Iterator
StackMap stack:
33: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.vertx.codegen.type.TypeInfo
astore 8
start local 8 34: aload 8
invokevirtual io.vertx.codegen.type.TypeInfo.getKind:()Lio/vertx/codegen/type/ClassKind;
astore 10
start local 10 35: aload 10
getstatic io.vertx.codegen.type.ClassKind.API:Lio/vertx/codegen/type/ClassKind;
if_acmpne 38
36: aload 7
ldc ", %s._jtype"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 8
invokevirtual io.vertx.codegen.type.TypeInfo.getRaw:()Lio/vertx/codegen/type/ClassTypeInfo;
invokevirtual io.vertx.codegen.type.ClassTypeInfo.getSimpleName:()Ljava/lang/String;
aastore
invokevirtual java.io.PrintWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
pop
37: goto 51
StackMap locals: io.vertx.lang.js.generator.JSClassGenerator io.vertx.codegen.ClassModel io.vertx.codegen.MethodInfo io.vertx.codegen.type.TypeInfo java.lang.String io.vertx.codegen.type.ClassKind java.io.StringWriter java.io.PrintWriter io.vertx.codegen.type.TypeInfo java.util.Iterator io.vertx.codegen.type.ClassKind
StackMap stack:
38: aload 10
getstatic io.vertx.codegen.type.ClassKind.ENUM:Lio/vertx/codegen/type/ClassKind;
if_acmpne 41
39: aload 7
ldc ", utils.enum_jtype(%s)"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 8
invokevirtual io.vertx.codegen.type.TypeInfo.getName:()Ljava/lang/String;
aastore
invokevirtual java.io.PrintWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
pop
40: goto 51
StackMap locals:
StackMap stack:
41: aload 10
getstatic io.vertx.codegen.type.ClassKind.OBJECT:Lio/vertx/codegen/type/ClassKind;
if_acmpne 50
42: aload 2
ifnull 43
aload 2
aload 8
checkcast io.vertx.codegen.type.TypeVariableInfo
invokevirtual io.vertx.codegen.MethodInfo.resolveClassTypeParam:(Lio/vertx/codegen/type/TypeVariableInfo;)Lio/vertx/codegen/ParamInfo;
goto 44
StackMap locals:
StackMap stack:
43: aconst_null
StackMap locals:
StackMap stack: io.vertx.codegen.ParamInfo
44: astore 11
start local 11 45: aload 11
ifnull 48
46: aload 7
ldc ", utils.get_jtype(__args[%s])"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 11
invokevirtual io.vertx.codegen.ParamInfo.getIndex:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
invokevirtual java.io.PrintWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
pop
47: goto 51
48: StackMap locals: io.vertx.codegen.ParamInfo
StackMap stack:
aload 7
ldc ", undefined"
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
end local 11 49: goto 51
50: StackMap locals:
StackMap stack:
aload 7
ldc ", undefined"
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
end local 10 end local 8 51: StackMap locals: io.vertx.lang.js.generator.JSClassGenerator io.vertx.codegen.ClassModel io.vertx.codegen.MethodInfo io.vertx.codegen.type.TypeInfo java.lang.String io.vertx.codegen.type.ClassKind java.io.StringWriter java.io.PrintWriter top java.util.Iterator
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 33
52: StackMap locals: io.vertx.lang.js.generator.JSClassGenerator io.vertx.codegen.ClassModel io.vertx.codegen.MethodInfo io.vertx.codegen.type.TypeInfo java.lang.String io.vertx.codegen.type.ClassKind java.io.StringWriter java.io.PrintWriter
StackMap stack:
aload 7
ldc ")"
invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
53: aload 6
invokevirtual java.io.StringWriter.toString:()Ljava/lang/String;
areturn
end local 7 end local 6 54: StackMap locals:
StackMap stack:
aload 5
getstatic io.vertx.codegen.type.ClassKind.ENUM:Lio/vertx/codegen/type/ClassKind;
if_acmpne 56
55: ldc "utils.convReturnEnum(%s)"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
56: StackMap locals:
StackMap stack:
aload 5
getstatic io.vertx.codegen.type.ClassKind.DATA_OBJECT:Lio/vertx/codegen/type/ClassKind;
if_acmpne 58
57: ldc "utils.convReturnDataObject(%s)"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
58: StackMap locals:
StackMap stack:
aload 5
getstatic io.vertx.codegen.type.ClassKind.THROWABLE:Lio/vertx/codegen/type/ClassKind;
if_acmpne 60
59: ldc "utils.convReturnThrowable(%s)"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 4
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
60: StackMap locals:
StackMap stack:
aload 5
getstatic io.vertx.codegen.type.ClassKind.HANDLER:Lio/vertx/codegen/type/ClassKind;
if_acmpne 71
61: aload 3
checkcast io.vertx.codegen.type.ParameterizedTypeInfo
astore 6
start local 6 62: aload 6
iconst_0
invokevirtual io.vertx.codegen.type.ParameterizedTypeInfo.getArg:(I)Lio/vertx/codegen/type/TypeInfo;
invokevirtual io.vertx.codegen.type.TypeInfo.getKind:()Lio/vertx/codegen/type/ClassKind;
getstatic io.vertx.codegen.type.ClassKind.ASYNC_RESULT:Lio/vertx/codegen/type/ClassKind;
if_acmpne 67
63: ldc "utils.convReturnHandlerAsyncResult(%s, function(result) { return %s; })"
iconst_2
anewarray java.lang.Object
dup
iconst_0
64: aload 4
aastore
dup
iconst_1
65: aload 0
aload 1
aload 2
aconst_null
iconst_0
new io.vertx.codegen.ParamInfo
dup
iconst_0
ldc "result"
aconst_null
aload 6
iconst_0
invokevirtual io.vertx.codegen.type.ParameterizedTypeInfo.getArg:(I)Lio/vertx/codegen/type/TypeInfo;
checkcast io.vertx.codegen.type.ParameterizedTypeInfo
iconst_0
invokevirtual io.vertx.codegen.type.ParameterizedTypeInfo.getArg:(I)Lio/vertx/codegen/type/TypeInfo;
invokespecial io.vertx.codegen.ParamInfo.<init>:(ILjava/lang/String;Lio/vertx/codegen/doc/Text;Lio/vertx/codegen/type/TypeInfo;)V
invokevirtual io.vertx.lang.js.generator.JSClassGenerator.convParam:(Lio/vertx/codegen/ClassModel;Lio/vertx/codegen/MethodInfo;Ljava/lang/String;ZLio/vertx/codegen/ParamInfo;)Ljava/lang/String;
aastore
66: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
67: StackMap locals: io.vertx.codegen.type.ParameterizedTypeInfo
StackMap stack:
ldc "utils.convReturnHandler(%s, function(result) { return %s; })"
iconst_2
anewarray java.lang.Object
dup
iconst_0
68: aload 4
aastore
dup
iconst_1
69: aload 0
aload 1
aload 2
aconst_null
iconst_0
new io.vertx.codegen.ParamInfo
dup
iconst_0
ldc "result"
aconst_null
aload 6
iconst_0
invokevirtual io.vertx.codegen.type.ParameterizedTypeInfo.getArg:(I)Lio/vertx/codegen/type/TypeInfo;
invokespecial io.vertx.codegen.ParamInfo.<init>:(ILjava/lang/String;Lio/vertx/codegen/doc/Text;Lio/vertx/codegen/type/TypeInfo;)V
invokevirtual io.vertx.lang.js.generator.JSClassGenerator.convParam:(Lio/vertx/codegen/ClassModel;Lio/vertx/codegen/MethodInfo;Ljava/lang/String;ZLio/vertx/codegen/ParamInfo;)Ljava/lang/String;
aastore
70: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
end local 6 71: StackMap locals:
StackMap stack:
aload 3
invokevirtual io.vertx.codegen.type.TypeInfo.isVariable:()Z
ifeq 74
aload 2
ifnull 74
aload 2
aload 3
checkcast io.vertx.codegen.type.TypeVariableInfo
invokevirtual io.vertx.codegen.MethodInfo.resolveClassTypeParam:(Lio/vertx/codegen/type/TypeVariableInfo;)Lio/vertx/codegen/ParamInfo;
ifnull 74
72: aload 2
aload 3
checkcast io.vertx.codegen.type.TypeVariableInfo
invokevirtual io.vertx.codegen.MethodInfo.resolveClassTypeParam:(Lio/vertx/codegen/type/TypeVariableInfo;)Lio/vertx/codegen/ParamInfo;
astore 6
start local 6 73: ldc "utils.get_jtype(__args[%s]).wrap(%s)"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 6
invokevirtual io.vertx.codegen.ParamInfo.getIndex:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
aload 4
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
end local 6 74: StackMap locals:
StackMap stack:
ldc "utils.convReturnTypeUnknown"
astore 6
start local 6 75: aload 1
invokevirtual io.vertx.codegen.ClassModel.getType:()Lio/vertx/codegen/type/ClassTypeInfo;
astore 7
start local 7 76: aload 7
invokevirtual io.vertx.codegen.type.ClassTypeInfo.getParams:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 9
goto 80
StackMap locals: io.vertx.lang.js.generator.JSClassGenerator io.vertx.codegen.ClassModel io.vertx.codegen.MethodInfo io.vertx.codegen.type.TypeInfo java.lang.String io.vertx.codegen.type.ClassKind java.lang.String io.vertx.codegen.type.ClassTypeInfo top java.util.Iterator
StackMap stack:
77: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.vertx.codegen.TypeParamInfo$Class
astore 8
start local 8 78: aload 8
invokevirtual io.vertx.codegen.TypeParamInfo$Class.getName:()Ljava/lang/String;
aload 3
invokevirtual io.vertx.codegen.type.TypeInfo.getName:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 80
79: new java.lang.StringBuilder
dup
ldc "j_"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 8
invokevirtual io.vertx.codegen.TypeParamInfo$Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ".wrap"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 6
end local 8 80: StackMap locals:
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 77
81: ldc "%s(%s)"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 6
aastore
dup
iconst_1
aload 4
aastore
invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
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 82 0 this Lio/vertx/lang/js/generator/JSClassGenerator;
0 82 1 model Lio/vertx/codegen/ClassModel;
0 82 2 method Lio/vertx/codegen/MethodInfo;
0 82 3 returnType Lio/vertx/codegen/type/TypeInfo;
0 82 4 templ Ljava/lang/String;
1 82 5 kind Lio/vertx/codegen/type/ClassKind;
3 19 6 elementType Lio/vertx/codegen/type/TypeInfo;
4 19 7 elementKind Lio/vertx/codegen/type/ClassKind;
29 54 6 buffer Ljava/io/StringWriter;
30 54 7 writer Ljava/io/PrintWriter;
34 51 8 arg Lio/vertx/codegen/type/TypeInfo;
35 51 10 argKind Lio/vertx/codegen/type/ClassKind;
45 49 11 classTypeParam Lio/vertx/codegen/ParamInfo;
62 71 6 type Lio/vertx/codegen/type/ParameterizedTypeInfo;
73 74 6 classTypeParam Lio/vertx/codegen/ParamInfo;
75 82 6 wrapper Ljava/lang/String;
76 82 7 type Lio/vertx/codegen/type/ClassTypeInfo;
78 80 8 param Lio/vertx/codegen/TypeParamInfo$Class;
MethodParameters:
Name Flags
model
method
returnType
templ
private void genRequire(io.vertx.codegen.ClassModel, java.io.PrintWriter);
descriptor: (Lio/vertx/codegen/ClassModel;Ljava/io/PrintWriter;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual io.vertx.codegen.ClassModel.getType:()Lio/vertx/codegen/type/ClassTypeInfo;
astore 3
start local 3 1: aload 2
ldc "var utils = require('vertx-js/util/utils');"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
2: aload 1
invokevirtual io.vertx.codegen.ClassModel.getReferencedTypes:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 5
goto 5
StackMap locals: io.vertx.lang.js.generator.JSClassGenerator io.vertx.codegen.ClassModel java.io.PrintWriter io.vertx.codegen.type.ClassTypeInfo top java.util.Iterator
StackMap stack:
3: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.vertx.codegen.type.ClassTypeInfo
astore 4
start local 4 4: aload 2
ldc "var %s = require('%s');\n"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 4
invokevirtual io.vertx.codegen.type.ClassTypeInfo.getSimpleName:()Ljava/lang/String;
aastore
dup
iconst_1
aload 0
aload 4
invokevirtual io.vertx.lang.js.generator.JSClassGenerator.getModuleName:(Lio/vertx/codegen/type/ClassTypeInfo;)Ljava/lang/String;
aastore
invokevirtual java.io.PrintWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
pop
end local 4 5: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
6: aload 2
invokevirtual java.io.PrintWriter.println:()V
7: aload 2
ldc "var io = Packages.io;"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
8: aload 2
ldc "var JsonObject = io.vertx.core.json.JsonObject;"
invokevirtual java.io.PrintWriter.println:(Ljava/lang/String;)V
9: aload 2
ldc "var J%s = Java.type('%s');\n"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 3
invokevirtual io.vertx.codegen.type.ClassTypeInfo.getSimpleName:()Ljava/lang/String;
aastore
dup
iconst_1
aload 3
invokevirtual io.vertx.codegen.type.ClassTypeInfo.getName:()Ljava/lang/String;
aastore
invokevirtual java.io.PrintWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
pop
10: aload 1
invokevirtual io.vertx.codegen.ClassModel.getReferencedDataObjectTypes:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 5
goto 13
StackMap locals:
StackMap stack:
11: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.vertx.codegen.type.ClassTypeInfo
astore 4
start local 4 12: aload 2
ldc "var %s = Java.type('%s');\n"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 4
invokevirtual io.vertx.codegen.type.ClassTypeInfo.getSimpleName:()Ljava/lang/String;
aastore
dup
iconst_1
aload 4
invokevirtual io.vertx.codegen.type.ClassTypeInfo.getName:()Ljava/lang/String;
aastore
invokevirtual java.io.PrintWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/io/PrintWriter;
pop
end local 4 13: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 11
14: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lio/vertx/lang/js/generator/JSClassGenerator;
0 15 1 model Lio/vertx/codegen/ClassModel;
0 15 2 writer Ljava/io/PrintWriter;
1 15 3 type Lio/vertx/codegen/type/ClassTypeInfo;
4 5 4 referencedType Lio/vertx/codegen/type/ClassTypeInfo;
12 13 4 dataObjectType Lio/vertx/codegen/type/ClassTypeInfo;
MethodParameters:
Name Flags
model
writer
public java.lang.String render(io.vertx.codegen.Model, int, int, java.util.Map);
descriptor: (Lio/vertx/codegen/Model;IILjava/util/Map;)Ljava/lang/String;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=5, locals=5, args_size=5
0: aload 0
aload 1
checkcast io.vertx.codegen.ClassModel
iload 2
iload 3
aload 4
invokevirtual io.vertx.lang.js.generator.JSClassGenerator.render:(Lio/vertx/codegen/ClassModel;IILjava/util/Map;)Ljava/lang/String;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.lang.String filename(io.vertx.codegen.Model);
descriptor: (Lio/vertx/codegen/Model;)Ljava/lang/String;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast io.vertx.codegen.ClassModel
invokevirtual io.vertx.lang.js.generator.JSClassGenerator.filename:(Lio/vertx/codegen/ClassModel;)Ljava/lang/String;
areturn
LocalVariableTable:
Start End Slot Name Signature
private static void lambda$0(io.vertx.codegen.writer.CodeWriter, io.vertx.codegen.MethodInfo);
descriptor: (Lio/vertx/codegen/writer/CodeWriter;Lio/vertx/codegen/MethodInfo;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=6, locals=2, args_size=2
start local 1 0: aload 0
ldc "var __super_%s = this.%s;\n"
iconst_2
anewarray java.lang.Object
dup
iconst_0
aload 1
invokevirtual io.vertx.codegen.MethodInfo.getName:()Ljava/lang/String;
aastore
dup
iconst_1
aload 1
invokevirtual io.vertx.codegen.MethodInfo.getName:()Ljava/lang/String;
aastore
invokevirtual io.vertx.codegen.writer.CodeWriter.format:(Ljava/lang/String;[Ljava/lang/Object;)Lio/vertx/codegen/writer/CodeWriter;
pop
1: return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 2 1 method Lio/vertx/codegen/MethodInfo;
private static boolean lambda$1(io.vertx.codegen.MethodInfo);
descriptor: (Lio/vertx/codegen/MethodInfo;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual io.vertx.codegen.MethodInfo.isStaticMethod:()Z
ifeq 1
iconst_0
goto 2
StackMap locals:
StackMap stack:
1: iconst_1
StackMap locals:
StackMap stack: int
2: ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 method Lio/vertx/codegen/MethodInfo;
private void lambda$3(io.vertx.codegen.ClassModel, io.vertx.codegen.writer.CodeWriter, java.lang.String);
descriptor: (Lio/vertx/codegen/ClassModel;Lio/vertx/codegen/writer/CodeWriter;Ljava/lang/String;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 3 0: aload 0
aload 1
aload 3
iconst_0
aconst_null
aload 2
invokevirtual io.vertx.lang.js.generator.JSClassGenerator.genMethod:(Lio/vertx/codegen/ClassModel;Ljava/lang/String;ZLjava/util/function/Predicate;Lio/vertx/codegen/writer/CodeWriter;)V
1: return
end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/lang/js/generator/JSClassGenerator;
0 2 3 methodName Ljava/lang/String;
private void lambda$6(io.vertx.codegen.ClassModel, io.vertx.codegen.writer.CodeWriter, java.lang.String);
descriptor: (Lio/vertx/codegen/ClassModel;Lio/vertx/codegen/writer/CodeWriter;Ljava/lang/String;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 3 0: aload 0
aload 1
aload 3
iconst_1
aconst_null
aload 2
invokevirtual io.vertx.lang.js.generator.JSClassGenerator.genMethod:(Lio/vertx/codegen/ClassModel;Ljava/lang/String;ZLjava/util/function/Predicate;Lio/vertx/codegen/writer/CodeWriter;)V
1: return
end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/lang/js/generator/JSClassGenerator;
0 2 3 methodName Ljava/lang/String;
}
Signature: Lio/vertx/lang/js/generator/AbstractJSClassGenerator<Lio/vertx/codegen/ClassModel;>;
SourceFile: "JSClassGenerator.java"
InnerClasses:
public Class = io.vertx.codegen.TypeParamInfo$Class of io.vertx.codegen.TypeParamInfo
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles