public class com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator extends com.oracle.truffle.dsl.processor.generator.CodeTypeElementFactory<com.oracle.truffle.dsl.processor.model.TypeSystemData>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator
super_class: com.oracle.truffle.dsl.processor.generator.CodeTypeElementFactory
{
private static final java.lang.String LOCAL_VALUE;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: "value"
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial com.oracle.truffle.dsl.processor.generator.CodeTypeElementFactory.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/dsl/processor/generator/TypeSystemCodeGenerator;
static com.oracle.truffle.dsl.processor.java.model.CodeTree implicitCastFlat(com.oracle.truffle.dsl.processor.model.TypeSystemData, javax.lang.model.type.TypeMirror, com.oracle.truffle.dsl.processor.java.model.CodeTree, com.oracle.truffle.dsl.processor.java.model.CodeTree);
descriptor: (Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 0
aload 1
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.asImplicitTypeMethodName:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
aload 2
aload 3
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.callImplictMethodFlat:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;Ljava/lang/String;Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 typeSystem Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;
0 1 1 type Ljavax/lang/model/type/TypeMirror;
0 1 2 value Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
0 1 3 state Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
MethodParameters:
Name Flags
typeSystem
type
value
state
static com.oracle.truffle.dsl.processor.java.model.CodeTree implicitCheckFlat(com.oracle.truffle.dsl.processor.model.TypeSystemData, javax.lang.model.type.TypeMirror, com.oracle.truffle.dsl.processor.java.model.CodeTree, com.oracle.truffle.dsl.processor.java.model.CodeTree);
descriptor: (Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 0
aload 1
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.isImplicitTypeMethodName:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
aload 2
aload 3
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.callImplictMethodFlat:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;Ljava/lang/String;Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 typeSystem Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;
0 1 1 type Ljavax/lang/model/type/TypeMirror;
0 1 2 value Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
0 1 3 state Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
MethodParameters:
Name Flags
typeSystem
type
value
state
static com.oracle.truffle.dsl.processor.java.model.CodeTree implicitSpecializeFlat(com.oracle.truffle.dsl.processor.model.TypeSystemData, javax.lang.model.type.TypeMirror, com.oracle.truffle.dsl.processor.java.model.CodeTree);
descriptor: (Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 0
aload 1
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.specializeImplicitTypeMethodName:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
aload 2
aconst_null
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.callImplictMethodFlat:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;Ljava/lang/String;Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 typeSystem Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;
0 1 1 type Ljavax/lang/model/type/TypeMirror;
0 1 2 value Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
MethodParameters:
Name Flags
typeSystem
type
value
private static com.oracle.truffle.dsl.processor.java.model.CodeTree callImplictMethodFlat(com.oracle.truffle.dsl.processor.model.TypeSystemData, javax.lang.model.type.TypeMirror, java.lang.String, com.oracle.truffle.dsl.processor.java.model.CodeTree, com.oracle.truffle.dsl.processor.java.model.CodeTree);
descriptor: (Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;Ljava/lang/String;Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.isObject:(Ljavax/lang/model/type/TypeMirror;)Z
ifeq 2
1: aload 3
areturn
2: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.createBuilder:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
astore 5
start local 5 3: aload 5
aload 0
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.createTypeSystemGen:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTypeMirror;
aload 2
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startStaticCall:(Ljavax/lang/model/type/TypeMirror;Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
4: aload 4
ifnull 6
5: aload 5
aload 4
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.tree:(Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
6: StackMap locals: com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder
StackMap stack:
aload 5
aload 3
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.tree:(Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
7: aload 5
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
8: aload 5
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.build:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
areturn
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 9 0 typeSystem Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;
0 9 1 type Ljavax/lang/model/type/TypeMirror;
0 9 2 methodName Ljava/lang/String;
0 9 3 value Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
0 9 4 state Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
3 9 5 builder Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
MethodParameters:
Name Flags
typeSystem
type
methodName
value
state
static com.oracle.truffle.dsl.processor.java.model.CodeTree implicitExpectFlat(com.oracle.truffle.dsl.processor.model.TypeSystemData, javax.lang.model.type.TypeMirror, com.oracle.truffle.dsl.processor.java.model.CodeTree, com.oracle.truffle.dsl.processor.java.model.CodeTree);
descriptor: (Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
flags: (0x0008) ACC_STATIC
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 0
aload 1
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.expectImplicitTypeMethodName:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
aload 2
aload 3
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.callImplictMethodFlat:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;Ljava/lang/String;Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 typeSystem Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;
0 1 1 type Ljavax/lang/model/type/TypeMirror;
0 1 2 value Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
0 1 3 state Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
MethodParameters:
Name Flags
typeSystem
type
value
state
static com.oracle.truffle.dsl.processor.java.model.CodeTree cast(com.oracle.truffle.dsl.processor.model.TypeSystemData, javax.lang.model.type.TypeMirror, java.lang.String);
descriptor: (Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokestatic com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.singleString:(Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.cast:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 typeSystem Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;
0 1 1 type Ljavax/lang/model/type/TypeMirror;
0 1 2 content Ljava/lang/String;
MethodParameters:
Name Flags
typeSystem
type
content
static com.oracle.truffle.dsl.processor.java.model.CodeTree invokeImplicitCast(com.oracle.truffle.dsl.processor.model.TypeSystemData, com.oracle.truffle.dsl.processor.model.ImplicitCastData, com.oracle.truffle.dsl.processor.java.model.CodeTree);
descriptor: (Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Lcom/oracle/truffle/dsl/processor/model/ImplicitCastData;Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: invokestatic com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.createBuilder:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
astore 3
start local 3 1: aload 3
aload 0
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.createTypeSystemGen:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTypeMirror;
aload 1
invokevirtual com.oracle.truffle.dsl.processor.model.ImplicitCastData.getMethodName:()Ljava/lang/String;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startStaticCall:(Ljavax/lang/model/type/TypeMirror;Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
aload 2
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.tree:(Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
2: aload 3
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
3: aload 3
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.build:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 typeSystem Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;
0 4 1 cast Lcom/oracle/truffle/dsl/processor/model/ImplicitCastData;
0 4 2 expression Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
1 4 3 builder Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
MethodParameters:
Name Flags
typeSystem
cast
expression
static com.oracle.truffle.dsl.processor.java.model.CodeTree cast(com.oracle.truffle.dsl.processor.model.TypeSystemData, javax.lang.model.type.TypeMirror, com.oracle.truffle.dsl.processor.java.model.CodeTree);
descriptor: (Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: invokestatic com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.createBuilder:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
astore 3
start local 3 1: aload 0
aload 1
invokevirtual com.oracle.truffle.dsl.processor.model.TypeSystemData.getCast:(Ljavax/lang/model/type/TypeMirror;)Lcom/oracle/truffle/dsl/processor/model/TypeCastData;
astore 4
start local 4 2: aload 4
ifnonnull 5
3: aload 3
aload 1
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.fillInGenericWildcards:(Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/type/TypeMirror;
aload 2
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.cast:(Ljavax/lang/model/type/TypeMirror;Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
4: goto 6
5: StackMap locals: com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder com.oracle.truffle.dsl.processor.model.TypeCastData
StackMap stack:
aload 3
aload 0
invokevirtual com.oracle.truffle.dsl.processor.model.TypeSystemData.getTemplateType:()Ljavax/lang/model/element/TypeElement;
invokeinterface javax.lang.model.element.TypeElement.asType:()Ljavax/lang/model/type/TypeMirror;
aload 4
invokevirtual com.oracle.truffle.dsl.processor.model.TypeCastData.getMethodName:()Ljava/lang/String;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startStaticCall:(Ljavax/lang/model/type/TypeMirror;Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
aload 2
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.tree:(Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
6: StackMap locals:
StackMap stack:
aload 3
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.build:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 typeSystem Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;
0 7 1 type Ljavax/lang/model/type/TypeMirror;
0 7 2 content Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
1 7 3 builder Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
2 7 4 cast Lcom/oracle/truffle/dsl/processor/model/TypeCastData;
MethodParameters:
Name Flags
typeSystem
type
content
static com.oracle.truffle.dsl.processor.java.model.CodeTree expect(com.oracle.truffle.dsl.processor.model.TypeSystemData, javax.lang.model.type.TypeMirror, com.oracle.truffle.dsl.processor.java.model.CodeTree);
descriptor: (Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.isObject:(Ljavax/lang/model/type/TypeMirror;)Z
ifne 1
aload 1
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.isVoid:(Ljavax/lang/model/type/TypeMirror;)Z
ifeq 2
1: StackMap locals:
StackMap stack:
aload 2
areturn
2: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.createBuilder:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
astore 3
start local 3 3: aload 0
aload 1
invokevirtual com.oracle.truffle.dsl.processor.model.TypeSystemData.hasType:(Ljavax/lang/model/type/TypeMirror;)Z
ifeq 6
4: aload 3
aload 0
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.createTypeSystemGen:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTypeMirror;
aload 0
aload 1
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.expectTypeMethodName:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startStaticCall:(Ljavax/lang/model/type/TypeMirror;Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
aload 2
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.tree:(Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
5: goto 7
6: StackMap locals: com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder
StackMap stack:
aload 3
aload 0
aload 1
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.expectTypeMethodName:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startCall:(Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
aload 2
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.tree:(Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
7: StackMap locals:
StackMap stack:
aload 3
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.build:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 typeSystem Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;
0 8 1 type Ljavax/lang/model/type/TypeMirror;
0 8 2 content Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
3 8 3 builder Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
MethodParameters:
Name Flags
typeSystem
type
content
static com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement createExpectMethod(javax.lang.model.element.Modifier, com.oracle.truffle.dsl.processor.model.TypeSystemData, javax.lang.model.type.TypeMirror, javax.lang.model.type.TypeMirror);
descriptor: (Ljavax/lang/model/element/Modifier;Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;Ljavax/lang/model/type/TypeMirror;)Lcom/oracle/truffle/dsl/processor/java/model/CodeExecutableElement;
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.fillInGenericWildcards:(Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/type/TypeMirror;
astore 4
start local 4 1: aload 2
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.fillInGenericWildcards:(Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/type/TypeMirror;
astore 5
start local 5 2: aload 4
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.isObject:(Ljavax/lang/model/type/TypeMirror;)Z
ifne 3
aload 4
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.isVoid:(Ljavax/lang/model/type/TypeMirror;)Z
ifeq 4
3: StackMap locals: javax.lang.model.type.TypeMirror javax.lang.model.type.TypeMirror
StackMap stack:
aconst_null
areturn
4: StackMap locals:
StackMap stack:
new com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement
dup
iconst_1
anewarray javax.lang.model.element.Modifier
dup
iconst_0
getstatic javax.lang.model.element.Modifier.STATIC:Ljavax/lang/model/element/Modifier;
aastore
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.modifiers:([Ljavax/lang/model/element/Modifier;)Ljava/util/Set;
aload 4
aload 1
aload 4
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.expectTypeMethodName:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
iconst_0
anewarray com.oracle.truffle.dsl.processor.java.model.CodeVariableElement
invokespecial com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement.<init>:(Ljava/util/Set;Ljavax/lang/model/type/TypeMirror;Ljava/lang/String;[Lcom/oracle/truffle/dsl/processor/java/model/CodeVariableElement;)V
astore 6
start local 6 5: aload 6
aload 0
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement.setVisibility:(Ljavax/lang/model/element/Modifier;)V
6: aload 6
new com.oracle.truffle.dsl.processor.java.model.CodeVariableElement
dup
aload 5
ldc "value"
invokespecial com.oracle.truffle.dsl.processor.java.model.CodeVariableElement.<init>:(Ljavax/lang/model/type/TypeMirror;Ljava/lang/String;)V
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement.addParameter:(Ljavax/lang/model/element/VariableElement;)V
7: aload 6
aload 1
invokevirtual com.oracle.truffle.dsl.processor.model.TypeSystemData.getContext:()Lcom/oracle/truffle/dsl/processor/ProcessorContext;
invokevirtual com.oracle.truffle.dsl.processor.ProcessorContext.getTypes:()Lcom/oracle/truffle/dsl/processor/TruffleTypes;
getfield com.oracle.truffle.dsl.processor.TruffleTypes.UnexpectedResultException:Ljavax/lang/model/type/DeclaredType;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement.addThrownType:(Ljavax/lang/model/type/TypeMirror;)V
8: aload 6
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeExecutableElement.createBuilder:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
astore 7
start local 7 9: aload 7
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startIf:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
aload 1
aload 4
ldc "value"
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.check:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.tree:(Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startBlock:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
10: aload 7
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startReturn:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
aload 1
aload 4
ldc "value"
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.cast:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.tree:(Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
11: aload 7
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
12: aload 7
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startThrow:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
aload 1
invokevirtual com.oracle.truffle.dsl.processor.model.TypeSystemData.getContext:()Lcom/oracle/truffle/dsl/processor/ProcessorContext;
invokevirtual com.oracle.truffle.dsl.processor.ProcessorContext.getTypes:()Lcom/oracle/truffle/dsl/processor/TruffleTypes;
getfield com.oracle.truffle.dsl.processor.TruffleTypes.UnexpectedResultException:Ljavax/lang/model/type/DeclaredType;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startNew:(Ljavax/lang/model/type/TypeMirror;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
ldc "value"
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.string:(Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
13: aload 6
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 14 0 visibility Ljavax/lang/model/element/Modifier;
0 14 1 typeSystem Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;
0 14 2 sourceTypeOriginal Ljavax/lang/model/type/TypeMirror;
0 14 3 expectedTypeOriginal Ljavax/lang/model/type/TypeMirror;
1 14 4 expectedType Ljavax/lang/model/type/TypeMirror;
2 14 5 sourceType Ljavax/lang/model/type/TypeMirror;
5 14 6 method Lcom/oracle/truffle/dsl/processor/java/model/CodeExecutableElement;
9 14 7 body Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
MethodParameters:
Name Flags
visibility
typeSystem
sourceTypeOriginal
expectedTypeOriginal
private static com.oracle.truffle.dsl.processor.java.model.CodeTypeMirror createTypeSystemGen(com.oracle.truffle.dsl.processor.model.TypeSystemData);
descriptor: (Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTypeMirror;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: new com.oracle.truffle.dsl.processor.java.model.GeneratedTypeMirror
dup
aload 0
invokevirtual com.oracle.truffle.dsl.processor.model.TypeSystemData.getTemplateType:()Ljavax/lang/model/element/TypeElement;
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.getPackageName:(Ljavax/lang/model/element/Element;)Ljava/lang/String;
aload 0
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.typeName:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;)Ljava/lang/String;
invokespecial com.oracle.truffle.dsl.processor.java.model.GeneratedTypeMirror.<init>:(Ljava/lang/String;Ljava/lang/String;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 typeSystem Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;
MethodParameters:
Name Flags
typeSystem
private static com.oracle.truffle.dsl.processor.java.model.CodeTree check(com.oracle.truffle.dsl.processor.model.TypeSystemData, javax.lang.model.type.TypeMirror, java.lang.String);
descriptor: (Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokestatic com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.singleString:(Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.check:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 typeSystem Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;
0 1 1 type Ljavax/lang/model/type/TypeMirror;
0 1 2 content Ljava/lang/String;
MethodParameters:
Name Flags
typeSystem
type
content
static com.oracle.truffle.dsl.processor.java.model.CodeTree check(com.oracle.truffle.dsl.processor.model.TypeSystemData, javax.lang.model.type.TypeMirror, com.oracle.truffle.dsl.processor.java.model.CodeTree);
descriptor: (Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.isObject:(Ljavax/lang/model/type/TypeMirror;)Z
ifeq 2
1: aload 2
areturn
2: StackMap locals:
StackMap stack:
invokestatic com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.createBuilder:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
astore 3
start local 3 3: aload 0
aload 1
invokevirtual com.oracle.truffle.dsl.processor.model.TypeSystemData.getCheck:(Ljavax/lang/model/type/TypeMirror;)Lcom/oracle/truffle/dsl/processor/model/TypeCheckData;
astore 4
start local 4 4: aload 4
ifnonnull 7
5: aload 3
aload 2
aload 0
invokevirtual com.oracle.truffle.dsl.processor.model.TypeSystemData.getContext:()Lcom/oracle/truffle/dsl/processor/ProcessorContext;
aload 1
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.boxType:(Lcom/oracle/truffle/dsl/processor/ProcessorContext;Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/type/TypeMirror;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.instanceOf:(Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;Ljavax/lang/model/type/TypeMirror;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
6: goto 8
7: StackMap locals: com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder com.oracle.truffle.dsl.processor.model.TypeCheckData
StackMap stack:
aload 3
aload 0
invokevirtual com.oracle.truffle.dsl.processor.model.TypeSystemData.getTemplateType:()Ljavax/lang/model/element/TypeElement;
invokeinterface javax.lang.model.element.TypeElement.asType:()Ljavax/lang/model/type/TypeMirror;
aload 4
invokevirtual com.oracle.truffle.dsl.processor.model.TypeCheckData.getMethodName:()Ljava/lang/String;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.startStaticCall:(Ljavax/lang/model/type/TypeMirror;Ljava/lang/String;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
aload 2
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.tree:(Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;)Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.end:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
pop
8: StackMap locals:
StackMap stack:
aload 3
invokevirtual com.oracle.truffle.dsl.processor.java.model.CodeTreeBuilder.build:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 typeSystem Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;
0 9 1 type Ljavax/lang/model/type/TypeMirror;
0 9 2 content Lcom/oracle/truffle/dsl/processor/java/model/CodeTree;
3 9 3 builder Lcom/oracle/truffle/dsl/processor/java/model/CodeTreeBuilder;
4 9 4 check Lcom/oracle/truffle/dsl/processor/model/TypeCheckData;
MethodParameters:
Name Flags
typeSystem
type
content
private static java.lang.String isTypeMethodName(com.oracle.truffle.dsl.processor.model.TypeSystemData, javax.lang.model.type.TypeMirror);
descriptor: (Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
ldc "is"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
aload 1
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.getTypeId:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 typeSystem Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;
0 1 1 type Ljavax/lang/model/type/TypeMirror;
MethodParameters:
Name Flags
typeSystem
type
private static java.lang.String getTypeId(com.oracle.truffle.dsl.processor.model.TypeSystemData, javax.lang.model.type.TypeMirror);
descriptor: (Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual com.oracle.truffle.dsl.processor.model.TypeSystemData.boxType:(Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/type/TypeMirror;
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.getTypeId:(Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 typeSystem Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;
0 1 1 type Ljavax/lang/model/type/TypeMirror;
MethodParameters:
Name Flags
typeSystem
type
private static java.lang.String isImplicitTypeMethodName(com.oracle.truffle.dsl.processor.model.TypeSystemData, javax.lang.model.type.TypeMirror);
descriptor: (Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
ldc "isImplicit"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
aload 1
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.getTypeId:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 typeSystem Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;
0 1 1 type Ljavax/lang/model/type/TypeMirror;
MethodParameters:
Name Flags
typeSystem
type
private static java.lang.String asTypeMethodName(com.oracle.truffle.dsl.processor.model.TypeSystemData, javax.lang.model.type.TypeMirror);
descriptor: (Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
ldc "as"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
aload 1
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.getTypeId:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 typeSystem Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;
0 1 1 type Ljavax/lang/model/type/TypeMirror;
MethodParameters:
Name Flags
typeSystem
type
private static java.lang.String asImplicitTypeMethodName(com.oracle.truffle.dsl.processor.model.TypeSystemData, javax.lang.model.type.TypeMirror);
descriptor: (Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
ldc "asImplicit"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
aload 1
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.getTypeId:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 typeSystem Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;
0 1 1 type Ljavax/lang/model/type/TypeMirror;
MethodParameters:
Name Flags
typeSystem
type
private static java.lang.String specializeImplicitTypeMethodName(com.oracle.truffle.dsl.processor.model.TypeSystemData, javax.lang.model.type.TypeMirror);
descriptor: (Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
ldc "specializeImplicit"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
aload 1
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.getTypeId:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 typeSystem Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;
0 1 1 type Ljavax/lang/model/type/TypeMirror;
MethodParameters:
Name Flags
typeSystem
type
private static java.lang.String expectImplicitTypeMethodName(com.oracle.truffle.dsl.processor.model.TypeSystemData, javax.lang.model.type.TypeMirror);
descriptor: (Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
ldc "expectImplicit"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
aload 1
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.getTypeId:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 typeSystem Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;
0 1 1 type Ljavax/lang/model/type/TypeMirror;
MethodParameters:
Name Flags
typeSystem
type
private static java.lang.String expectTypeMethodName(com.oracle.truffle.dsl.processor.model.TypeSystemData, javax.lang.model.type.TypeMirror);
descriptor: (Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
ldc "expect"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
aload 1
invokestatic com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.getTypeId:(Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 typeSystem Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;
0 1 1 type Ljavax/lang/model/type/TypeMirror;
MethodParameters:
Name Flags
typeSystem
type
static java.lang.String typeName(com.oracle.truffle.dsl.processor.model.TypeSystemData);
descriptor: (Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;)Ljava/lang/String;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual com.oracle.truffle.dsl.processor.model.TypeSystemData.getTemplateType:()Ljavax/lang/model/element/TypeElement;
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.getSimpleName:(Ljavax/lang/model/element/TypeElement;)Ljava/lang/String;
astore 1
start local 1 1: new java.lang.StringBuilder
dup
aload 1
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "Gen"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 typeSystem Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;
1 2 1 name Ljava/lang/String;
MethodParameters:
Name Flags
typeSystem
private static java.lang.String singletonName(com.oracle.truffle.dsl.processor.model.TypeSystemData);
descriptor: (Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;)Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.oracle.truffle.dsl.processor.model.TypeSystemData.getTemplateType:()Ljavax/lang/model/element/TypeElement;
invokeinterface javax.lang.model.element.TypeElement.asType:()Ljavax/lang/model/type/TypeMirror;
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.getSimpleName:(Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
invokestatic com.oracle.truffle.dsl.processor.java.ElementUtils.createConstantName:(Ljava/lang/String;)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 type Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;
MethodParameters:
Name Flags
type
public java.util.List<com.oracle.truffle.dsl.processor.java.model.CodeTypeElement> create(com.oracle.truffle.dsl.processor.ProcessorContext, com.oracle.truffle.dsl.processor.AnnotationProcessor<?>, com.oracle.truffle.dsl.processor.model.TypeSystemData);
descriptor: (Lcom/oracle/truffle/dsl/processor/ProcessorContext;Lcom/oracle/truffle/dsl/processor/AnnotationProcessor;Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;)Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator$TypeClassFactory
dup
aload 1
aload 3
invokespecial com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator$TypeClassFactory.<init>:(Lcom/oracle/truffle/dsl/processor/ProcessorContext;Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;)V
invokevirtual com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator$TypeClassFactory.create:()Lcom/oracle/truffle/dsl/processor/java/model/CodeTypeElement;
astore 4
start local 4 1: iconst_1
anewarray com.oracle.truffle.dsl.processor.java.model.CodeTypeElement
dup
iconst_0
aload 4
aastore
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/oracle/truffle/dsl/processor/generator/TypeSystemCodeGenerator;
0 2 1 context Lcom/oracle/truffle/dsl/processor/ProcessorContext;
0 2 2 processor Lcom/oracle/truffle/dsl/processor/AnnotationProcessor<*>;
0 2 3 typeSystem Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;
1 2 4 clazz Lcom/oracle/truffle/dsl/processor/java/model/CodeTypeElement;
Signature: (Lcom/oracle/truffle/dsl/processor/ProcessorContext;Lcom/oracle/truffle/dsl/processor/AnnotationProcessor<*>;Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;)Ljava/util/List<Lcom/oracle/truffle/dsl/processor/java/model/CodeTypeElement;>;
MethodParameters:
Name Flags
context
processor
typeSystem
public java.util.List create(com.oracle.truffle.dsl.processor.ProcessorContext, com.oracle.truffle.dsl.processor.AnnotationProcessor, java.lang.Object);
descriptor: (Lcom/oracle/truffle/dsl/processor/ProcessorContext;Lcom/oracle/truffle/dsl/processor/AnnotationProcessor;Ljava/lang/Object;)Ljava/util/List;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
0: aload 0
aload 1
aload 2
aload 3
checkcast com.oracle.truffle.dsl.processor.model.TypeSystemData
invokevirtual com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator.create:(Lcom/oracle/truffle/dsl/processor/ProcessorContext;Lcom/oracle/truffle/dsl/processor/AnnotationProcessor;Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;)Ljava/util/List;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Lcom/oracle/truffle/dsl/processor/generator/CodeTypeElementFactory<Lcom/oracle/truffle/dsl/processor/model/TypeSystemData;>;
SourceFile: "TypeSystemCodeGenerator.java"
NestMembers:
com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator$TypeClassFactory
InnerClasses:
private TypeClassFactory = com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator$TypeClassFactory of com.oracle.truffle.dsl.processor.generator.TypeSystemCodeGenerator