public class org.jruby.anno.ExecutableElementDescriptor extends org.jruby.anno.MethodDescriptor<javax.lang.model.element.ExecutableElement>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.jruby.anno.ExecutableElementDescriptor
super_class: org.jruby.anno.MethodDescriptor
{
public final javax.lang.model.element.ExecutableElement method;
descriptor: Ljavax/lang/model/element/ExecutableElement;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public void <init>(javax.lang.model.element.ExecutableElement);
descriptor: (Ljavax/lang/model/element/ExecutableElement;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokespecial org.jruby.anno.MethodDescriptor.<init>:(Ljava/lang/Object;)V
1: aload 0
aload 1
putfield org.jruby.anno.ExecutableElementDescriptor.method:Ljavax/lang/model/element/ExecutableElement;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/anno/ExecutableElementDescriptor;
0 3 1 method Ljavax/lang/model/element/ExecutableElement;
MethodParameters:
Name Flags
method
protected <A extends java.lang.annotation.Annotation> A getAnnotation(javax.lang.model.element.ExecutableElement, java.lang.Class<A>);
descriptor: (Ljavax/lang/model/element/ExecutableElement;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 2
invokeinterface javax.lang.model.element.ExecutableElement.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/anno/ExecutableElementDescriptor;
0 1 1 methodObject Ljavax/lang/model/element/ExecutableElement;
0 1 2 annotationType Ljava/lang/Class<TA;>;
Signature: <A::Ljava/lang/annotation/Annotation;>(Ljavax/lang/model/element/ExecutableElement;Ljava/lang/Class<TA;>;)TA;
MethodParameters:
Name Flags
methodObject
annotationType
protected int getModifiers(javax.lang.model.element.ExecutableElement);
descriptor: (Ljavax/lang/model/element/ExecutableElement;)I
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=6, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface javax.lang.model.element.ExecutableElement.getModifiers:()Ljava/util/Set;
astore 2
start local 2 1: iconst_0
istore 3
start local 3 2: aload 2
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 5
goto 5
StackMap locals: org.jruby.anno.ExecutableElementDescriptor javax.lang.model.element.ExecutableElement java.util.Set int top java.util.Iterator
StackMap stack:
3: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast javax.lang.model.element.Modifier
astore 4
start local 4 4: iload 3
ldc Ljava/lang/reflect/Modifier;
aload 4
invokevirtual javax.lang.model.element.Modifier.name:()Ljava/lang/String;
invokevirtual java.lang.Class.getField:(Ljava/lang/String;)Ljava/lang/reflect/Field;
aconst_null
invokevirtual java.lang.reflect.Field.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.Integer
invokevirtual java.lang.Integer.intValue:()I
ior
istore 3
end local 4 5: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
6: goto 9
7: StackMap locals: org.jruby.anno.ExecutableElementDescriptor javax.lang.model.element.ExecutableElement java.util.Set int
StackMap stack: java.lang.ReflectiveOperationException
astore 4
start local 4 8: new java.lang.RuntimeException
dup
aload 4
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 4 9: StackMap locals:
StackMap stack:
iload 3
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/jruby/anno/ExecutableElementDescriptor;
0 10 1 methodObject Ljavax/lang/model/element/ExecutableElement;
1 10 2 mods Ljava/util/Set<Ljavax/lang/model/element/Modifier;>;
2 10 3 modifierTmp I
4 5 4 mod Ljavax/lang/model/element/Modifier;
8 9 4 e Ljava/lang/ReflectiveOperationException;
Exception table:
from to target type
2 6 7 Class java.lang.NoSuchFieldException
2 6 7 Class java.lang.IllegalAccessException
MethodParameters:
Name Flags
methodObject
protected java.lang.String getDeclaringClassName(javax.lang.model.element.ExecutableElement);
descriptor: (Ljavax/lang/model/element/ExecutableElement;)Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface javax.lang.model.element.ExecutableElement.getEnclosingElement:()Ljavax/lang/model/element/Element;
checkcast javax.lang.model.element.TypeElement
invokestatic org.jruby.anno.ExecutableElementDescriptor.getActualQualifiedName:(Ljavax/lang/model/element/TypeElement;)Ljava/lang/CharSequence;
invokeinterface java.lang.CharSequence.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/anno/ExecutableElementDescriptor;
0 1 1 methodObject Ljavax/lang/model/element/ExecutableElement;
MethodParameters:
Name Flags
methodObject
protected java.lang.String getSimpleName(javax.lang.model.element.ExecutableElement);
descriptor: (Ljavax/lang/model/element/ExecutableElement;)Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface javax.lang.model.element.ExecutableElement.getSimpleName:()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 Lorg/jruby/anno/ExecutableElementDescriptor;
0 1 1 methodObject Ljavax/lang/model/element/ExecutableElement;
MethodParameters:
Name Flags
methodObject
protected boolean hasContext(javax.lang.model.element.ExecutableElement);
descriptor: (Ljavax/lang/model/element/ExecutableElement;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface javax.lang.model.element.ExecutableElement.getParameters:()Ljava/util/List;
astore 2
start local 2 1: aload 2
invokeinterface java.util.List.size:()I
ifle 3
2: aload 2
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast javax.lang.model.element.VariableElement
invokeinterface javax.lang.model.element.VariableElement.asType:()Ljavax/lang/model/type/TypeMirror;
invokeinterface javax.lang.model.type.TypeMirror.toString:()Ljava/lang/String;
ldc "org.jruby.runtime.ThreadContext"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ireturn
3: StackMap locals: java.util.List
StackMap stack:
iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/anno/ExecutableElementDescriptor;
0 4 1 methodObject Ljavax/lang/model/element/ExecutableElement;
1 4 2 symbolicParameters Ljava/util/List<+Ljavax/lang/model/element/VariableElement;>;
MethodParameters:
Name Flags
methodObject
protected boolean hasBlock(javax.lang.model.element.ExecutableElement);
descriptor: (Ljavax/lang/model/element/ExecutableElement;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface javax.lang.model.element.ExecutableElement.getParameters:()Ljava/util/List;
astore 2
start local 2 1: aload 2
invokeinterface java.util.List.size:()I
ifle 3
2: aload 2
aload 2
invokeinterface java.util.List.size:()I
iconst_1
isub
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast javax.lang.model.element.VariableElement
invokeinterface javax.lang.model.element.VariableElement.asType:()Ljavax/lang/model/type/TypeMirror;
invokeinterface javax.lang.model.type.TypeMirror.toString:()Ljava/lang/String;
ldc "org.jruby.runtime.Block"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ireturn
3: StackMap locals: java.util.List
StackMap stack:
iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/anno/ExecutableElementDescriptor;
0 4 1 methodObject Ljavax/lang/model/element/ExecutableElement;
1 4 2 symbolicParameters Ljava/util/List<+Ljavax/lang/model/element/VariableElement;>;
MethodParameters:
Name Flags
methodObject
protected int parameterCount(javax.lang.model.element.ExecutableElement);
descriptor: (Ljavax/lang/model/element/ExecutableElement;)I
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface javax.lang.model.element.ExecutableElement.getParameters:()Ljava/util/List;
invokeinterface java.util.List.size:()I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/anno/ExecutableElementDescriptor;
0 1 1 methodObject Ljavax/lang/model/element/ExecutableElement;
MethodParameters:
Name Flags
methodObject
protected java.lang.String parameterAsString(javax.lang.model.element.ExecutableElement, int);
descriptor: (Ljavax/lang/model/element/ExecutableElement;I)Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokeinterface javax.lang.model.element.ExecutableElement.getParameters:()Ljava/util/List;
iload 2
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast javax.lang.model.element.VariableElement
invokeinterface javax.lang.model.element.VariableElement.asType:()Ljavax/lang/model/type/TypeMirror;
invokeinterface javax.lang.model.type.TypeMirror.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/anno/ExecutableElementDescriptor;
0 1 1 methodObject Ljavax/lang/model/element/ExecutableElement;
0 1 2 index I
MethodParameters:
Name Flags
methodObject
index
public static java.lang.CharSequence getActualQualifiedName(javax.lang.model.element.TypeElement);
descriptor: (Ljavax/lang/model/element/TypeElement;)Ljava/lang/CharSequence;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokeinterface javax.lang.model.element.TypeElement.getNestingKind:()Ljavax/lang/model/element/NestingKind;
getstatic javax.lang.model.element.NestingKind.MEMBER:Ljavax/lang/model/element/NestingKind;
if_acmpne 2
1: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
aload 0
invokeinterface javax.lang.model.element.TypeElement.getEnclosingElement:()Ljavax/lang/model/element/Element;
checkcast javax.lang.model.element.TypeElement
invokestatic org.jruby.anno.ExecutableElementDescriptor.getActualQualifiedName:(Ljavax/lang/model/element/TypeElement;)Ljava/lang/CharSequence;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "$"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokeinterface javax.lang.model.element.TypeElement.getSimpleName:()Ljavax/lang/model/element/Name;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
2: StackMap locals:
StackMap stack:
aload 0
invokeinterface javax.lang.model.element.TypeElement.getQualifiedName:()Ljavax/lang/model/element/Name;
invokeinterface javax.lang.model.element.Name.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 td Ljavax/lang/model/element/TypeElement;
MethodParameters:
Name Flags
td
protected java.lang.String parameterAsString(java.lang.Object, int);
descriptor: (Ljava/lang/Object;I)Ljava/lang/String;
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
checkcast javax.lang.model.element.ExecutableElement
iload 2
invokevirtual org.jruby.anno.ExecutableElementDescriptor.parameterAsString:(Ljavax/lang/model/element/ExecutableElement;I)Ljava/lang/String;
areturn
LocalVariableTable:
Start End Slot Name Signature
protected java.lang.String getSimpleName(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/String;
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast javax.lang.model.element.ExecutableElement
invokevirtual org.jruby.anno.ExecutableElementDescriptor.getSimpleName:(Ljavax/lang/model/element/ExecutableElement;)Ljava/lang/String;
areturn
LocalVariableTable:
Start End Slot Name Signature
protected boolean hasContext(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast javax.lang.model.element.ExecutableElement
invokevirtual org.jruby.anno.ExecutableElementDescriptor.hasContext:(Ljavax/lang/model/element/ExecutableElement;)Z
ireturn
LocalVariableTable:
Start End Slot Name Signature
protected int parameterCount(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast javax.lang.model.element.ExecutableElement
invokevirtual org.jruby.anno.ExecutableElementDescriptor.parameterCount:(Ljavax/lang/model/element/ExecutableElement;)I
ireturn
LocalVariableTable:
Start End Slot Name Signature
protected java.lang.annotation.Annotation getAnnotation(java.lang.Object, java.lang.Class);
descriptor: (Ljava/lang/Object;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
checkcast javax.lang.model.element.ExecutableElement
aload 2
checkcast java.lang.Class
invokevirtual org.jruby.anno.ExecutableElementDescriptor.getAnnotation:(Ljavax/lang/model/element/ExecutableElement;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
areturn
LocalVariableTable:
Start End Slot Name Signature
protected java.lang.String getDeclaringClassName(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/String;
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast javax.lang.model.element.ExecutableElement
invokevirtual org.jruby.anno.ExecutableElementDescriptor.getDeclaringClassName:(Ljavax/lang/model/element/ExecutableElement;)Ljava/lang/String;
areturn
LocalVariableTable:
Start End Slot Name Signature
protected int getModifiers(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast javax.lang.model.element.ExecutableElement
invokevirtual org.jruby.anno.ExecutableElementDescriptor.getModifiers:(Ljavax/lang/model/element/ExecutableElement;)I
ireturn
LocalVariableTable:
Start End Slot Name Signature
protected boolean hasBlock(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x1044) ACC_PROTECTED, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast javax.lang.model.element.ExecutableElement
invokevirtual org.jruby.anno.ExecutableElementDescriptor.hasBlock:(Ljavax/lang/model/element/ExecutableElement;)Z
ireturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Lorg/jruby/anno/MethodDescriptor<Ljavax/lang/model/element/ExecutableElement;>;
SourceFile: "ExecutableElementDescriptor.java"