public abstract class com.oracle.truffle.js.factory.processor.AbstractFactoryProcessor extends javax.annotation.processing.AbstractProcessor
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: com.oracle.truffle.js.factory.processor.AbstractFactoryProcessor
super_class: javax.annotation.processing.AbstractProcessor
{
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial javax.annotation.processing.AbstractProcessor.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/factory/processor/AbstractFactoryProcessor;
public final javax.lang.model.SourceVersion getSupportedSourceVersion();
descriptor: ()Ljavax/lang/model/SourceVersion;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: invokestatic javax.lang.model.SourceVersion.latest:()Ljavax/lang/model/SourceVersion;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/factory/processor/AbstractFactoryProcessor;
protected final java.util.List<javax.lang.model.element.ExecutableElement> getOverridableMethods(javax.lang.model.element.TypeElement);
descriptor: (Ljavax/lang/model/element/TypeElement;)Ljava/util/List;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 2
start local 2 1: aload 0
aload 1
aload 2
invokevirtual com.oracle.truffle.js.factory.processor.AbstractFactoryProcessor.collectOverridableMethods:(Ljavax/lang/model/element/TypeElement;Ljava/util/List;)V
2: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/js/factory/processor/AbstractFactoryProcessor;
0 3 1 typeElement Ljavax/lang/model/element/TypeElement;
1 3 2 list Ljava/util/List<Ljavax/lang/model/element/ExecutableElement;>;
Signature: (Ljavax/lang/model/element/TypeElement;)Ljava/util/List<Ljavax/lang/model/element/ExecutableElement;>;
MethodParameters:
Name Flags
typeElement
private void collectOverridableMethods(javax.lang.model.element.TypeElement, java.util.List<javax.lang.model.element.ExecutableElement>);
descriptor: (Ljavax/lang/model/element/TypeElement;Ljava/util/List;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokeinterface javax.lang.model.element.TypeElement.getSuperclass:()Ljavax/lang/model/type/TypeMirror;
instanceof javax.lang.model.type.NoType
ifne 2
aload 1
invokeinterface javax.lang.model.element.TypeElement.getSuperclass:()Ljavax/lang/model/type/TypeMirror;
invokeinterface javax.lang.model.type.TypeMirror.toString:()Ljava/lang/String;
ldc "java.lang.Object"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 2
1: aload 0
aload 0
getfield com.oracle.truffle.js.factory.processor.AbstractFactoryProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getTypeUtils:()Ljavax/lang/model/util/Types;
aload 1
invokeinterface javax.lang.model.element.TypeElement.getSuperclass:()Ljavax/lang/model/type/TypeMirror;
invokeinterface javax.lang.model.util.Types.asElement:(Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/element/Element;
checkcast javax.lang.model.element.TypeElement
aload 2
invokevirtual com.oracle.truffle.js.factory.processor.AbstractFactoryProcessor.collectOverridableMethods:(Ljavax/lang/model/element/TypeElement;Ljava/util/List;)V
2: StackMap locals:
StackMap stack:
aload 1
invokeinterface javax.lang.model.element.TypeElement.getInterfaces:()Ljava/util/List;
aload 0
aload 2
invokedynamic accept(Lcom/oracle/truffle/js/factory/processor/AbstractFactoryProcessor;Ljava/util/List;)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
com/oracle/truffle/js/factory/processor/AbstractFactoryProcessor.lambda$0(Ljava/util/List;Ljavax/lang/model/type/TypeMirror;)V (7)
(Ljavax/lang/model/type/TypeMirror;)V
invokeinterface java.util.List.forEach:(Ljava/util/function/Consumer;)V
3: aload 1
invokeinterface javax.lang.model.element.TypeElement.getEnclosedElements:()Ljava/util/List;
invokestatic javax.lang.model.util.ElementFilter.methodsIn:(Ljava/lang/Iterable;)Ljava/util/List;
invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
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
com/oracle/truffle/js/factory/processor/AbstractFactoryProcessor.lambda$1(Ljavax/lang/model/element/ExecutableElement;)Z (6)
(Ljavax/lang/model/element/ExecutableElement;)Z
invokeinterface java.util.stream.Stream.filter:(Ljava/util/function/Predicate;)Ljava/util/stream/Stream;
aload 2
dup
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
pop
invokedynamic accept(Ljava/util/List;)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
java/util/List.add(Ljava/lang/Object;)Z (9 itf)
(Ljavax/lang/model/element/ExecutableElement;)V
invokeinterface java.util.stream.Stream.forEach:(Ljava/util/function/Consumer;)V
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/js/factory/processor/AbstractFactoryProcessor;
0 5 1 typeElement Ljavax/lang/model/element/TypeElement;
0 5 2 list Ljava/util/List<Ljavax/lang/model/element/ExecutableElement;>;
Signature: (Ljavax/lang/model/element/TypeElement;Ljava/util/List<Ljavax/lang/model/element/ExecutableElement;>;)V
MethodParameters:
Name Flags
typeElement
list
protected static boolean isInterface(javax.lang.model.element.TypeElement);
descriptor: (Ljavax/lang/model/element/TypeElement;)Z
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokeinterface javax.lang.model.element.TypeElement.getSuperclass:()Ljavax/lang/model/type/TypeMirror;
instanceof javax.lang.model.type.NoType
ifeq 1
aload 0
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
ldc "java.lang.Object"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 typeElement Ljavax/lang/model/element/TypeElement;
MethodParameters:
Name Flags
typeElement
private static boolean isOverridable(javax.lang.model.element.ExecutableElement);
descriptor: (Ljavax/lang/model/element/ExecutableElement;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokeinterface javax.lang.model.element.ExecutableElement.getModifiers:()Ljava/util/Set;
getstatic javax.lang.model.element.Modifier.PUBLIC:Ljavax/lang/model/element/Modifier;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifeq 1
aload 0
invokeinterface javax.lang.model.element.ExecutableElement.getModifiers:()Ljava/util/Set;
getstatic javax.lang.model.element.Modifier.STATIC:Ljavax/lang/model/element/Modifier;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 1
aload 0
invokeinterface javax.lang.model.element.ExecutableElement.getModifiers:()Ljava/util/Set;
getstatic javax.lang.model.element.Modifier.FINAL:Ljavax/lang/model/element/Modifier;
invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
ifne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 m Ljavax/lang/model/element/ExecutableElement;
MethodParameters:
Name Flags
m
protected static java.lang.String getClassLiteralString(javax.lang.model.type.TypeMirror);
descriptor: (Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
aload 0
invokestatic com.oracle.truffle.js.factory.processor.AbstractFactoryProcessor.getErasedTypeName:(Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ".class"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 type Ljavax/lang/model/type/TypeMirror;
MethodParameters:
Name Flags
type
protected static java.lang.String getErasedTypeName(javax.lang.model.type.TypeMirror);
descriptor: (Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
invokeinterface javax.lang.model.type.TypeMirror.getKind:()Ljavax/lang/model/type/TypeKind;
getstatic javax.lang.model.type.TypeKind.DECLARED:Ljavax/lang/model/type/TypeKind;
if_acmpne 3
1: aload 0
checkcast javax.lang.model.type.DeclaredType
invokeinterface javax.lang.model.type.DeclaredType.asElement:()Ljavax/lang/model/element/Element;
checkcast javax.lang.model.element.TypeElement
invokeinterface javax.lang.model.element.TypeElement.getQualifiedName:()Ljavax/lang/model/element/Name;
invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
astore 1
start local 1 2: goto 7
end local 1 StackMap locals:
StackMap stack:
3: aload 0
invokeinterface javax.lang.model.type.TypeMirror.getKind:()Ljavax/lang/model/type/TypeKind;
getstatic javax.lang.model.type.TypeKind.ARRAY:Ljavax/lang/model/type/TypeKind;
if_acmpne 6
4: new java.lang.StringBuilder
dup
aload 0
checkcast javax.lang.model.type.ArrayType
invokeinterface javax.lang.model.type.ArrayType.getComponentType:()Ljavax/lang/model/type/TypeMirror;
invokestatic com.oracle.truffle.js.factory.processor.AbstractFactoryProcessor.getErasedTypeName:(Ljavax/lang/model/type/TypeMirror;)Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "[]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 1
start local 1 5: goto 7
end local 1 6: StackMap locals:
StackMap stack:
aload 0
invokeinterface javax.lang.model.type.TypeMirror.toString:()Ljava/lang/String;
astore 1
start local 1 7: StackMap locals: java.lang.String
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 type Ljavax/lang/model/type/TypeMirror;
2 3 1 qualifiedName Ljava/lang/String;
5 6 1 qualifiedName Ljava/lang/String;
7 8 1 qualifiedName Ljava/lang/String;
MethodParameters:
Name Flags
type
protected final javax.lang.model.type.TypeMirror erasure(javax.lang.model.type.TypeMirror);
descriptor: (Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/type/TypeMirror;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface javax.lang.model.type.TypeMirror.getKind:()Ljavax/lang/model/type/TypeKind;
getstatic javax.lang.model.type.TypeKind.DECLARED:Ljavax/lang/model/type/TypeKind;
if_acmpeq 1
aload 1
invokeinterface javax.lang.model.type.TypeMirror.getKind:()Ljavax/lang/model/type/TypeKind;
getstatic javax.lang.model.type.TypeKind.ARRAY:Ljavax/lang/model/type/TypeKind;
if_acmpne 2
1: StackMap locals:
StackMap stack:
aload 0
getfield com.oracle.truffle.js.factory.processor.AbstractFactoryProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getTypeUtils:()Ljavax/lang/model/util/Types;
aload 1
invokeinterface javax.lang.model.util.Types.erasure:(Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/type/TypeMirror;
areturn
2: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/oracle/truffle/js/factory/processor/AbstractFactoryProcessor;
0 3 1 type Ljavax/lang/model/type/TypeMirror;
MethodParameters:
Name Flags
type
protected final java.lang.String getPackageName(javax.lang.model.element.TypeElement);
descriptor: (Ljavax/lang/model/element/TypeElement;)Ljava/lang/String;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.js.factory.processor.AbstractFactoryProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getElementUtils:()Ljavax/lang/model/util/Elements;
aload 1
invokeinterface javax.lang.model.util.Elements.getPackageOf:(Ljavax/lang/model/element/Element;)Ljavax/lang/model/element/PackageElement;
invokeinterface javax.lang.model.element.PackageElement.getQualifiedName:()Ljavax/lang/model/element/Name;
invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/factory/processor/AbstractFactoryProcessor;
0 1 1 typeElement Ljavax/lang/model/element/TypeElement;
MethodParameters:
Name Flags
typeElement
private void lambda$0(java.util.List, javax.lang.model.type.TypeMirror);
descriptor: (Ljava/util/List;Ljavax/lang/model/type/TypeMirror;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 2 0: aload 0
aload 0
getfield com.oracle.truffle.js.factory.processor.AbstractFactoryProcessor.processingEnv:Ljavax/annotation/processing/ProcessingEnvironment;
invokeinterface javax.annotation.processing.ProcessingEnvironment.getTypeUtils:()Ljavax/lang/model/util/Types;
aload 2
invokeinterface javax.lang.model.util.Types.asElement:(Ljavax/lang/model/type/TypeMirror;)Ljavax/lang/model/element/Element;
checkcast javax.lang.model.element.TypeElement
aload 1
invokevirtual com.oracle.truffle.js.factory.processor.AbstractFactoryProcessor.collectOverridableMethods:(Ljavax/lang/model/element/TypeElement;Ljava/util/List;)V
return
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/js/factory/processor/AbstractFactoryProcessor;
0 1 2 intf Ljavax/lang/model/type/TypeMirror;
private static boolean lambda$1(javax.lang.model.element.ExecutableElement);
descriptor: (Ljavax/lang/model/element/ExecutableElement;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokestatic com.oracle.truffle.js.factory.processor.AbstractFactoryProcessor.isOverridable:(Ljavax/lang/model/element/ExecutableElement;)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 m Ljavax/lang/model/element/ExecutableElement;
}
SourceFile: "AbstractFactoryProcessor.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles