public class org.jruby.RubyMethod extends org.jruby.AbstractRubyMethod
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.jruby.RubyMethod
super_class: org.jruby.AbstractRubyMethod
{
protected org.jruby.runtime.builtin.IRubyObject receiver;
descriptor: Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0004) ACC_PROTECTED
protected void <init>(org.jruby.Ruby, org.jruby.RubyClass);
descriptor: (Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokespecial org.jruby.AbstractRubyMethod.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/RubyMethod;
0 2 1 runtime Lorg/jruby/Ruby;
0 2 2 rubyClass Lorg/jruby/RubyClass;
MethodParameters:
Name Flags
runtime
rubyClass
public static org.jruby.RubyClass createMethodClass(org.jruby.Ruby);
descriptor: (Lorg/jruby/Ruby;)Lorg/jruby/RubyClass;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
ldc "Method"
aload 0
invokevirtual org.jruby.Ruby.getObject:()Lorg/jruby/RubyClass;
getstatic org.jruby.runtime.ObjectAllocator.NOT_ALLOCATABLE_ALLOCATOR:Lorg/jruby/runtime/ObjectAllocator;
invokevirtual org.jruby.Ruby.defineClass:(Ljava/lang/String;Lorg/jruby/RubyClass;Lorg/jruby/runtime/ObjectAllocator;)Lorg/jruby/RubyClass;
astore 1
start local 1 1: aload 1
getstatic org.jruby.runtime.ClassIndex.METHOD:Lorg/jruby/runtime/ClassIndex;
invokevirtual org.jruby.RubyClass.setClassIndex:(Lorg/jruby/runtime/ClassIndex;)V
2: aload 1
ldc Lorg/jruby/RubyMethod;
invokevirtual org.jruby.RubyClass.setReifiedClass:(Ljava/lang/Class;)V
3: aload 1
ldc Lorg/jruby/AbstractRubyMethod;
invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
4: aload 1
ldc Lorg/jruby/RubyMethod;
invokevirtual org.jruby.RubyClass.defineAnnotatedMethods:(Ljava/lang/Class;)V
5: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 runtime Lorg/jruby/Ruby;
1 6 1 methodClass Lorg/jruby/RubyClass;
MethodParameters:
Name Flags
runtime
public static org.jruby.RubyMethod newMethod(org.jruby.RubyModule, java.lang.String, org.jruby.RubyModule, java.lang.String, org.jruby.runtime.callsite.CacheEntry, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/runtime/callsite/CacheEntry;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyMethod;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=8, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
invokevirtual org.jruby.RubyModule.getRuntime:()Lorg/jruby/Ruby;
astore 6
start local 6 1: new org.jruby.RubyMethod
dup
aload 6
aload 6
invokevirtual org.jruby.Ruby.getMethod:()Lorg/jruby/RubyClass;
invokespecial org.jruby.RubyMethod.<init>:(Lorg/jruby/Ruby;Lorg/jruby/RubyClass;)V
astore 7
start local 7 2: aload 7
aload 0
putfield org.jruby.RubyMethod.implementationModule:Lorg/jruby/RubyModule;
3: aload 7
aload 1
putfield org.jruby.RubyMethod.methodName:Ljava/lang/String;
4: aload 7
aload 2
putfield org.jruby.RubyMethod.originModule:Lorg/jruby/RubyModule;
5: aload 7
aload 3
putfield org.jruby.RubyMethod.originName:Ljava/lang/String;
6: aload 7
aload 4
putfield org.jruby.RubyMethod.entry:Lorg/jruby/runtime/callsite/CacheEntry;
7: aload 7
aload 4
getfield org.jruby.runtime.callsite.CacheEntry.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
putfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
8: aload 7
aload 4
getfield org.jruby.runtime.callsite.CacheEntry.sourceModule:Lorg/jruby/RubyModule;
putfield org.jruby.RubyMethod.sourceModule:Lorg/jruby/RubyModule;
9: aload 7
aload 5
putfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
10: aload 7
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 11 0 implementationModule Lorg/jruby/RubyModule;
0 11 1 methodName Ljava/lang/String;
0 11 2 originModule Lorg/jruby/RubyModule;
0 11 3 originName Ljava/lang/String;
0 11 4 entry Lorg/jruby/runtime/callsite/CacheEntry;
0 11 5 receiver Lorg/jruby/runtime/builtin/IRubyObject;
1 11 6 runtime Lorg/jruby/Ruby;
2 11 7 newMethod Lorg/jruby/RubyMethod;
MethodParameters:
Name Flags
implementationModule
methodName
originModule
originName
entry
receiver
public org.jruby.runtime.builtin.IRubyObject call(org.jruby.runtime.ThreadContext, org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
aload 1
aload 0
getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
aload 0
getfield org.jruby.RubyMethod.sourceModule:Lorg/jruby/RubyModule;
aload 0
getfield org.jruby.RubyMethod.methodName:Ljava/lang/String;
aload 2
invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyMethod;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 block Lorg/jruby/runtime/Block;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"call", "[]"})
MethodParameters:
Name Flags
context
block
public org.jruby.runtime.builtin.IRubyObject call(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
aload 1
aload 0
getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
aload 0
getfield org.jruby.RubyMethod.sourceModule:Lorg/jruby/RubyModule;
aload 0
getfield org.jruby.RubyMethod.methodName:Ljava/lang/String;
aload 2
aload 3
invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyMethod;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 arg Lorg/jruby/runtime/builtin/IRubyObject;
0 1 3 block Lorg/jruby/runtime/Block;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"call", "[]"})
MethodParameters:
Name Flags
context
arg
block
public org.jruby.runtime.builtin.IRubyObject call(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
aload 1
aload 0
getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
aload 0
getfield org.jruby.RubyMethod.sourceModule:Lorg/jruby/RubyModule;
aload 0
getfield org.jruby.RubyMethod.methodName:Ljava/lang/String;
aload 2
aload 3
aload 4
invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyMethod;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 arg0 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 3 arg1 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 4 block Lorg/jruby/runtime/Block;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"call", "[]"})
MethodParameters:
Name Flags
context
arg0
arg1
block
public org.jruby.runtime.builtin.IRubyObject call(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
aload 1
aload 0
getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
aload 0
getfield org.jruby.RubyMethod.sourceModule:Lorg/jruby/RubyModule;
aload 0
getfield org.jruby.RubyMethod.methodName:Ljava/lang/String;
aload 2
aload 3
aload 4
aload 5
invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
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 1 0 this Lorg/jruby/RubyMethod;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 arg0 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 3 arg1 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 4 arg2 Lorg/jruby/runtime/builtin/IRubyObject;
0 1 5 block Lorg/jruby/runtime/Block;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"call", "[]"})
MethodParameters:
Name Flags
context
arg0
arg1
arg2
block
public org.jruby.runtime.builtin.IRubyObject call(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.Block);
descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
aload 1
aload 0
getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
aload 0
getfield org.jruby.RubyMethod.sourceModule:Lorg/jruby/RubyModule;
aload 0
getfield org.jruby.RubyMethod.methodName:Ljava/lang/String;
aload 2
aload 3
invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;[Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyMethod;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 args [Lorg/jruby/runtime/builtin/IRubyObject;
0 1 3 block Lorg/jruby/runtime/Block;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"call", "[]"}, rest = true)
MethodParameters:
Name Flags
context
args
block
public org.jruby.RubyFixnum arity();
descriptor: ()Lorg/jruby/RubyFixnum;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
instanceof org.jruby.internal.runtime.methods.IRMethodArgs
ifeq 3
1: aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
checkcast org.jruby.internal.runtime.methods.IRMethodArgs
invokeinterface org.jruby.internal.runtime.methods.IRMethodArgs.getSignature:()Lorg/jruby/runtime/Signature;
invokevirtual org.jruby.runtime.Signature.arityValue:()I
istore 1
start local 1 2: goto 4
end local 1 3: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getArity:()Lorg/jruby/runtime/Arity;
invokevirtual org.jruby.runtime.Arity.getValue:()I
istore 1
start local 1 4: StackMap locals: int
StackMap stack:
aload 0
invokevirtual org.jruby.RubyMethod.getRuntime:()Lorg/jruby/Ruby;
iload 1
invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/jruby/RubyMethod;
2 3 1 value I
4 5 1 value I
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
public org.jruby.runtime.builtin.IRubyObject op_eql(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokevirtual org.jruby.RubyMethod.op_equal:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyBoolean;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyMethod;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 other Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"eql?"}, required = 1)
MethodParameters:
Name Flags
context
other
public org.jruby.RubyBoolean op_equal(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyBoolean;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 0
aload 2
invokevirtual org.jruby.RubyMethod.equals:(Ljava/lang/Object;)Z
invokestatic org.jruby.RubyBoolean.newBoolean:(Lorg/jruby/runtime/ThreadContext;Z)Lorg/jruby/RubyBoolean;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyMethod;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 other Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"=="}, required = 1)
MethodParameters:
Name Flags
context
other
public org.jruby.runtime.builtin.IRubyObject op_eqq(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
aload 1
aload 0
getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
aload 0
getfield org.jruby.RubyMethod.sourceModule:Lorg/jruby/RubyModule;
aload 0
getfield org.jruby.RubyMethod.methodName:Ljava/lang/String;
aload 2
getstatic org.jruby.runtime.Block.NULL_BLOCK:Lorg/jruby/runtime/Block;
invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyMethod;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 other Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"==="}, required = 1)
MethodParameters:
Name Flags
context
other
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
instanceof org.jruby.RubyMethod
ifne 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
instanceof org.jruby.internal.runtime.methods.ProcMethod
ifeq 4
3: aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
checkcast org.jruby.internal.runtime.methods.ProcMethod
aload 1
checkcast org.jruby.RubyMethod
invokevirtual org.jruby.RubyMethod.getMethod:()Lorg/jruby/internal/runtime/methods/DynamicMethod;
invokevirtual org.jruby.internal.runtime.methods.ProcMethod.isSame:(Lorg/jruby/internal/runtime/methods/DynamicMethod;)Z
ireturn
4: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.jruby.RubyMethod.getMetaClass:()Lorg/jruby/RubyClass;
aload 1
checkcast org.jruby.RubyBasicObject
invokevirtual org.jruby.RubyBasicObject.getMetaClass:()Lorg/jruby/RubyClass;
if_acmpeq 6
5: iconst_0
ireturn
6: StackMap locals:
StackMap stack:
aload 1
checkcast org.jruby.RubyMethod
astore 2
start local 2 7: aload 0
getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
aload 2
getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
if_acmpne 10
aload 0
getfield org.jruby.RubyMethod.originModule:Lorg/jruby/RubyModule;
aload 2
getfield org.jruby.RubyMethod.originModule:Lorg/jruby/RubyModule;
if_acmpne 10
8: aload 0
aload 2
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
invokevirtual org.jruby.RubyMethod.isSerialMatch:(Lorg/jruby/internal/runtime/methods/DynamicMethod;)Z
ifne 9
aload 0
aload 2
invokevirtual org.jruby.RubyMethod.getMethod:()Lorg/jruby/internal/runtime/methods/DynamicMethod;
invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getRealMethod:()Lorg/jruby/internal/runtime/methods/DynamicMethod;
invokevirtual org.jruby.RubyMethod.isMethodMissingMatch:(Lorg/jruby/internal/runtime/methods/DynamicMethod;)Z
ifeq 10
9: StackMap locals: org.jruby.RubyMethod
StackMap stack:
iconst_1
ireturn
StackMap locals:
StackMap stack:
10: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/jruby/RubyMethod;
0 11 1 other Ljava/lang/Object;
7 11 2 otherMethod Lorg/jruby/RubyMethod;
MethodParameters:
Name Flags
other
private boolean isMethodMissingMatch(org.jruby.internal.runtime.methods.DynamicMethod);
descriptor: (Lorg/jruby/internal/runtime/methods/DynamicMethod;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getRealMethod:()Lorg/jruby/internal/runtime/methods/DynamicMethod;
instanceof org.jruby.RubyModule$RespondToMissingMethod
ifeq 3
1: aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getRealMethod:()Lorg/jruby/internal/runtime/methods/DynamicMethod;
checkcast org.jruby.RubyModule$RespondToMissingMethod
aload 1
invokevirtual org.jruby.RubyModule$RespondToMissingMethod.equals:(Ljava/lang/Object;)Z
ifeq 3
2: iconst_1
ireturn
StackMap locals:
StackMap stack:
3: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/RubyMethod;
0 4 1 other Lorg/jruby/internal/runtime/methods/DynamicMethod;
MethodParameters:
Name Flags
other
private boolean isSerialMatch(org.jruby.internal.runtime.methods.DynamicMethod);
descriptor: (Lorg/jruby/internal/runtime/methods/DynamicMethod;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getRealMethod:()Lorg/jruby/internal/runtime/methods/DynamicMethod;
invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getSerialNumber:()J
aload 1
invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getRealMethod:()Lorg/jruby/internal/runtime/methods/DynamicMethod;
invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getSerialNumber:()J
lcmp
ifne 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/RubyMethod;
0 2 1 otherMethod Lorg/jruby/internal/runtime/methods/DynamicMethod;
MethodParameters:
Name Flags
otherMethod
public org.jruby.RubyFixnum hash(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/RubyFixnum;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
invokevirtual org.jruby.RubyMethod.hashCodeImpl:()J
invokevirtual org.jruby.Ruby.newFixnum:(J)Lorg/jruby/RubyFixnum;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyMethod;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.RubyMethod.hashCodeImpl:()J
l2i
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyMethod;
private long hashCodeImpl();
descriptor: ()J
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
invokevirtual java.lang.Object.hashCode:()I
i2l
aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getRealMethod:()Lorg/jruby/internal/runtime/methods/DynamicMethod;
invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getSerialNumber:()J
lmul
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyMethod;
public org.jruby.RubyMethod rbClone();
descriptor: ()Lorg/jruby/RubyMethod;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyMethod.implementationModule:Lorg/jruby/RubyModule;
aload 0
getfield org.jruby.RubyMethod.methodName:Ljava/lang/String;
aload 0
getfield org.jruby.RubyMethod.originModule:Lorg/jruby/RubyModule;
aload 0
getfield org.jruby.RubyMethod.originName:Ljava/lang/String;
aload 0
getfield org.jruby.RubyMethod.entry:Lorg/jruby/runtime/callsite/CacheEntry;
aload 0
getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyMethod.newMethod:(Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/runtime/callsite/CacheEntry;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyMethod;
astore 1
start local 1 1: aload 1
aload 0
invokevirtual org.jruby.RubyMethod.getMetaClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyMethod.setMetaClass:(Lorg/jruby/RubyClass;)V
2: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/RubyMethod;
1 3 1 newMethod Lorg/jruby/RubyMethod;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"clone"})
public org.jruby.runtime.builtin.IRubyObject to_proc(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=12, locals=8, args_size=2
start local 0 start local 1 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 2
start local 2 1: aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
instanceof org.jruby.internal.runtime.methods.IRMethodArgs
ifeq 5
2: aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
checkcast org.jruby.internal.runtime.methods.IRMethodArgs
invokeinterface org.jruby.internal.runtime.methods.IRMethodArgs.getSignature:()Lorg/jruby/runtime/Signature;
astore 4
start local 4 3: aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
checkcast org.jruby.internal.runtime.methods.IRMethodArgs
invokeinterface org.jruby.internal.runtime.methods.IRMethodArgs.getArgumentDescriptors:()[Lorg/jruby/runtime/ArgumentDescriptor;
astore 5
start local 5 4: goto 7
end local 5 end local 4 5: StackMap locals: org.jruby.Ruby
StackMap stack:
aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getArity:()Lorg/jruby/runtime/Arity;
invokestatic org.jruby.runtime.Signature.from:(Lorg/jruby/runtime/Arity;)Lorg/jruby/runtime/Signature;
astore 4
start local 4 6: aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
invokestatic org.jruby.runtime.Helpers.methodToArgumentDescriptors:(Lorg/jruby/internal/runtime/methods/DynamicMethod;)[Lorg/jruby/runtime/ArgumentDescriptor;
astore 5
start local 5 7: StackMap locals: org.jruby.RubyMethod org.jruby.runtime.ThreadContext org.jruby.Ruby top org.jruby.runtime.Signature org.jruby.runtime.ArgumentDescriptor[]
StackMap stack:
aload 0
invokevirtual org.jruby.RubyMethod.getLine:()I
istore 6
start local 6 8: new org.jruby.runtime.MethodBlockBody
dup
aload 2
invokevirtual org.jruby.Ruby.getStaticScopeFactory:()Lorg/jruby/parser/StaticScopeFactory;
invokevirtual org.jruby.parser.StaticScopeFactory.getDummyScope:()Lorg/jruby/parser/StaticScope;
aload 4
aload 0
getfield org.jruby.RubyMethod.entry:Lorg/jruby/runtime/callsite/CacheEntry;
aload 5
9: aload 0
getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
aload 0
getfield org.jruby.RubyMethod.originModule:Lorg/jruby/RubyModule;
aload 0
getfield org.jruby.RubyMethod.originName:Ljava/lang/String;
aload 0
invokevirtual org.jruby.RubyMethod.getFilename:()Ljava/lang/String;
iload 6
iconst_m1
if_icmpne 10
iconst_m1
goto 11
StackMap locals: org.jruby.RubyMethod org.jruby.runtime.ThreadContext org.jruby.Ruby top org.jruby.runtime.Signature org.jruby.runtime.ArgumentDescriptor[] int
StackMap stack: new 8 new 8 org.jruby.parser.StaticScope org.jruby.runtime.Signature org.jruby.runtime.callsite.CacheEntry org.jruby.runtime.ArgumentDescriptor[] org.jruby.runtime.builtin.IRubyObject org.jruby.RubyModule java.lang.String java.lang.String
10: iload 6
iconst_1
isub
11: StackMap locals: org.jruby.RubyMethod org.jruby.runtime.ThreadContext org.jruby.Ruby top org.jruby.runtime.Signature org.jruby.runtime.ArgumentDescriptor[] int
StackMap stack: new 8 new 8 org.jruby.parser.StaticScope org.jruby.runtime.Signature org.jruby.runtime.callsite.CacheEntry org.jruby.runtime.ArgumentDescriptor[] org.jruby.runtime.builtin.IRubyObject org.jruby.RubyModule java.lang.String java.lang.String int
invokespecial org.jruby.runtime.MethodBlockBody.<init>:(Lorg/jruby/parser/StaticScope;Lorg/jruby/runtime/Signature;Lorg/jruby/runtime/callsite/CacheEntry;[Lorg/jruby/runtime/ArgumentDescriptor;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;Ljava/lang/String;I)V
astore 3
start local 3 12: aload 3
invokestatic org.jruby.runtime.MethodBlockBody.createMethodBlock:(Lorg/jruby/runtime/MethodBlockBody;)Lorg/jruby/runtime/Block;
astore 7
start local 7 13: aload 2
aload 7
getstatic org.jruby.runtime.Block$Type.LAMBDA:Lorg/jruby/runtime/Block$Type;
invokestatic org.jruby.RubyProc.newProc:(Lorg/jruby/Ruby;Lorg/jruby/runtime/Block;Lorg/jruby/runtime/Block$Type;)Lorg/jruby/RubyProc;
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 this Lorg/jruby/RubyMethod;
0 14 1 context Lorg/jruby/runtime/ThreadContext;
1 14 2 runtime Lorg/jruby/Ruby;
12 14 3 body Lorg/jruby/runtime/MethodBlockBody;
3 5 4 signature Lorg/jruby/runtime/Signature;
6 14 4 signature Lorg/jruby/runtime/Signature;
4 5 5 argsDesc [Lorg/jruby/runtime/ArgumentDescriptor;
7 14 5 argsDesc [Lorg/jruby/runtime/ArgumentDescriptor;
8 14 6 line I
13 14 7 b Lorg/jruby/runtime/Block;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
public org.jruby.RubyUnboundMethod unbind();
descriptor: ()Lorg/jruby/RubyUnboundMethod;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyMethod.implementationModule:Lorg/jruby/RubyModule;
aload 0
getfield org.jruby.RubyMethod.methodName:Ljava/lang/String;
aload 0
getfield org.jruby.RubyMethod.originModule:Lorg/jruby/RubyModule;
aload 0
getfield org.jruby.RubyMethod.originName:Ljava/lang/String;
aload 0
getfield org.jruby.RubyMethod.entry:Lorg/jruby/runtime/callsite/CacheEntry;
invokestatic org.jruby.RubyUnboundMethod.newUnboundMethod:(Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/RubyModule;Ljava/lang/String;Lorg/jruby/runtime/callsite/CacheEntry;)Lorg/jruby/RubyUnboundMethod;
1: astore 1
start local 1 2: aload 1
aload 0
invokevirtual org.jruby.RubyUnboundMethod.infectBy:(Lorg/jruby/RubyBasicObject;)Lorg/jruby/RubyBasicObject;
pop
3: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/jruby/RubyMethod;
2 4 1 unboundMethod Lorg/jruby/RubyUnboundMethod;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
public org.jruby.runtime.builtin.IRubyObject inspect();
descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=8, args_size=1
start local 0 0: aload 0
invokevirtual org.jruby.RubyMethod.getRuntime:()Lorg/jruby/Ruby;
astore 1
start local 1 1: aload 1
invokevirtual org.jruby.Ruby.getCurrentContext:()Lorg/jruby/runtime/ThreadContext;
astore 2
start local 2 2: aload 1
ldc "#<"
invokestatic org.jruby.RubyString.newString:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyString;
astore 3
start local 3 3: ldc "#"
astore 4
start local 4 4: aload 3
aload 0
invokevirtual org.jruby.RubyMethod.getType:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyClass.getName:()Ljava/lang/String;
invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
ldc ": "
invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
pop
5: aload 0
getfield org.jruby.RubyMethod.originModule:Lorg/jruby/RubyModule;
astore 6
start local 6 6: aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
instanceof org.jruby.internal.runtime.methods.AliasMethod
ifne 7
aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
instanceof org.jruby.internal.runtime.methods.DelegatingDynamicMethod
ifeq 9
7: StackMap locals: org.jruby.RubyMethod org.jruby.Ruby org.jruby.runtime.ThreadContext org.jruby.RubyString java.lang.String top org.jruby.RubyModule
StackMap stack:
aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getRealMethod:()Lorg/jruby/internal/runtime/methods/DynamicMethod;
invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getDefinedClass:()Lorg/jruby/RubyModule;
astore 5
start local 5 8: goto 10
end local 5 9: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getDefinedClass:()Lorg/jruby/RubyModule;
astore 5
start local 5 10: StackMap locals: org.jruby.RubyMethod org.jruby.Ruby org.jruby.runtime.ThreadContext org.jruby.RubyString java.lang.String org.jruby.RubyModule org.jruby.RubyModule
StackMap stack:
aload 5
invokevirtual org.jruby.RubyModule.isIncluded:()Z
ifeq 12
11: aload 5
invokevirtual org.jruby.RubyModule.getMetaClass:()Lorg/jruby/RubyClass;
astore 5
12: StackMap locals:
StackMap stack:
aload 6
invokevirtual org.jruby.RubyModule.isSingleton:()Z
ifeq 27
13: aload 6
checkcast org.jruby.MetaClass
invokevirtual org.jruby.MetaClass.getAttached:()Lorg/jruby/RubyBasicObject;
astore 7
start local 7 14: aload 0
getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
ifnonnull 17
15: aload 3
aload 2
aload 6
invokestatic org.jruby.RubyMethod.inspect:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
invokevirtual org.jruby.RubyString.convertToString:()Lorg/jruby/RubyString;
invokevirtual org.jruby.RubyString.cat19:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
pop
16: goto 32
StackMap locals: org.jruby.runtime.builtin.IRubyObject
StackMap stack:
17: aload 0
getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
aload 7
if_acmpne 21
18: aload 3
aload 2
aload 7
invokestatic org.jruby.RubyMethod.inspect:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
invokevirtual org.jruby.RubyString.convertToString:()Lorg/jruby/RubyString;
invokevirtual org.jruby.RubyString.cat19:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
pop
19: ldc "."
astore 4
20: goto 32
21: StackMap locals:
StackMap stack:
aload 3
aload 2
aload 0
getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyMethod.inspect:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
invokevirtual org.jruby.RubyString.convertToString:()Lorg/jruby/RubyString;
invokevirtual org.jruby.RubyString.cat19:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
pop
22: aload 3
ldc "("
invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
pop
23: aload 3
aload 2
aload 7
invokestatic org.jruby.RubyMethod.inspect:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyString;
invokevirtual org.jruby.RubyString.convertToString:()Lorg/jruby/RubyString;
invokevirtual org.jruby.RubyString.cat19:(Lorg/jruby/RubyString;)Lorg/jruby/RubyString;
pop
24: aload 3
ldc ")"
invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
pop
25: ldc "."
astore 4
end local 7 26: goto 32
27: StackMap locals:
StackMap stack:
aload 3
aload 6
invokevirtual org.jruby.RubyModule.getName:()Ljava/lang/String;
invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
pop
28: aload 5
aload 6
if_acmpeq 32
29: aload 3
ldc "("
invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
pop
30: aload 3
aload 5
invokevirtual org.jruby.RubyModule.getName:()Ljava/lang/String;
invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
pop
31: aload 3
ldc ")"
invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
pop
32: StackMap locals:
StackMap stack:
aload 3
aload 4
invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
pop
33: aload 3
aload 0
getfield org.jruby.RubyMethod.methodName:Ljava/lang/String;
invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
pop
34: aload 0
getfield org.jruby.RubyMethod.methodName:Ljava/lang/String;
aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getName:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 38
35: aload 3
ldc "("
invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
pop
36: aload 3
aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getName:()Ljava/lang/String;
invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
pop
37: aload 3
ldc ")"
invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
pop
38: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.isNotImplemented:()Z
ifeq 40
39: aload 3
ldc " (not-implemented)"
invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
pop
40: StackMap locals:
StackMap stack:
aload 3
ldc ">"
invokevirtual org.jruby.RubyString.catString:(Ljava/lang/String;)Lorg/jruby/RubyString;
pop
41: aload 3
areturn
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 42 0 this Lorg/jruby/RubyMethod;
1 42 1 runtime Lorg/jruby/Ruby;
2 42 2 context Lorg/jruby/runtime/ThreadContext;
3 42 3 str Lorg/jruby/RubyString;
4 42 4 sharp Ljava/lang/String;
8 9 5 definedClass Lorg/jruby/RubyModule;
10 42 5 definedClass Lorg/jruby/RubyModule;
6 42 6 mklass Lorg/jruby/RubyModule;
14 26 7 attached Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(name = {"inspect", "to_s"})
public org.jruby.runtime.builtin.IRubyObject receiver(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyMethod;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject source_location(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
astore 2
start local 2 1: aload 0
invokevirtual org.jruby.RubyMethod.getFilename:()Ljava/lang/String;
astore 3
start local 3 2: aload 3
ifnull 4
3: aload 2
aload 2
aload 3
invokevirtual org.jruby.Ruby.newString:(Ljava/lang/String;)Lorg/jruby/RubyString;
aload 2
aload 0
invokevirtual org.jruby.RubyMethod.getLine:()I
invokevirtual org.jruby.Ruby.newFixnum:(I)Lorg/jruby/RubyFixnum;
invokevirtual org.jruby.Ruby.newArray:(Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
areturn
4: StackMap locals: org.jruby.Ruby java.lang.String
StackMap stack:
aload 1
getfield org.jruby.runtime.ThreadContext.nil:Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/jruby/RubyMethod;
0 5 1 context Lorg/jruby/runtime/ThreadContext;
1 5 2 runtime Lorg/jruby/Ruby;
2 5 3 filename Ljava/lang/String;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
public java.lang.String getFilename();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getRealMethod:()Lorg/jruby/internal/runtime/methods/DynamicMethod;
astore 1
start local 1 1: aload 1
instanceof org.jruby.runtime.PositionAware
ifeq 4
2: aload 1
checkcast org.jruby.runtime.PositionAware
astore 2
start local 2 3: aload 2
invokeinterface org.jruby.runtime.PositionAware.getFile:()Ljava/lang/String;
areturn
end local 2 4: StackMap locals: org.jruby.internal.runtime.methods.DynamicMethod
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/jruby/RubyMethod;
1 5 1 realMethod Lorg/jruby/internal/runtime/methods/DynamicMethod;
3 4 2 poser Lorg/jruby/runtime/PositionAware;
public int getLine();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
invokevirtual org.jruby.internal.runtime.methods.DynamicMethod.getRealMethod:()Lorg/jruby/internal/runtime/methods/DynamicMethod;
astore 1
start local 1 1: aload 1
instanceof org.jruby.runtime.PositionAware
ifeq 4
2: aload 1
checkcast org.jruby.runtime.PositionAware
astore 2
start local 2 3: aload 2
invokeinterface org.jruby.runtime.PositionAware.getLine:()I
iconst_1
iadd
ireturn
end local 2 4: StackMap locals: org.jruby.internal.runtime.methods.DynamicMethod
StackMap stack:
iconst_m1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/jruby/RubyMethod;
1 5 1 realMethod Lorg/jruby/internal/runtime/methods/DynamicMethod;
3 4 2 poser Lorg/jruby/runtime/PositionAware;
public org.jruby.runtime.builtin.IRubyObject parameters(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
invokestatic org.jruby.runtime.Helpers.methodToParameters:(Lorg/jruby/Ruby;Lorg/jruby/AbstractRubyMethod;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyMethod;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject curry(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject[]);
descriptor: (Lorg/jruby/runtime/ThreadContext;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual org.jruby.RubyMethod.to_proc:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
aload 1
ldc "curry"
aload 2
invokeinterface org.jruby.runtime.builtin.IRubyObject.callMethod:(Lorg/jruby/runtime/ThreadContext;Ljava/lang/String;[Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyMethod;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
0 1 2 args [Lorg/jruby/runtime/builtin/IRubyObject;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod(optional = 1)
MethodParameters:
Name Flags
context
args
public org.jruby.runtime.builtin.IRubyObject super_method(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aload 0
getfield org.jruby.RubyMethod.receiver:Lorg/jruby/runtime/builtin/IRubyObject;
aload 0
getfield org.jruby.RubyMethod.sourceModule:Lorg/jruby/RubyModule;
invokevirtual org.jruby.RubyModule.getSuperClass:()Lorg/jruby/RubyClass;
invokevirtual org.jruby.RubyMethod.super_method:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyMethod;
0 1 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
public org.jruby.runtime.builtin.IRubyObject original_name(org.jruby.runtime.ThreadContext);
descriptor: (Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
instanceof org.jruby.internal.runtime.methods.AliasMethod
ifeq 2
1: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.RubyMethod.method:Lorg/jruby/internal/runtime/methods/DynamicMethod;
checkcast org.jruby.internal.runtime.methods.AliasMethod
invokevirtual org.jruby.internal.runtime.methods.AliasMethod.getOldName:()Ljava/lang/String;
invokevirtual org.jruby.Ruby.newSymbol:(Ljava/lang/String;)Lorg/jruby/RubySymbol;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.jruby.RubyMethod.name:(Lorg/jruby/runtime/ThreadContext;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/jruby/RubyMethod;
0 3 1 context Lorg/jruby/runtime/ThreadContext;
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyMethod()
MethodParameters:
Name Flags
context
public org.jruby.AbstractRubyMethod rbClone();
descriptor: ()Lorg/jruby/AbstractRubyMethod;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual org.jruby.RubyMethod.rbClone:()Lorg/jruby/RubyMethod;
areturn
LocalVariableTable:
Start End Slot Name Signature
public org.jruby.runtime.builtin.IRubyObject rbClone();
descriptor: ()Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual org.jruby.RubyMethod.rbClone:()Lorg/jruby/RubyMethod;
areturn
LocalVariableTable:
Start End Slot Name Signature
public org.jruby.runtime.builtin.IRubyObject op_equal(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
aload 2
invokevirtual org.jruby.RubyMethod.op_equal:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyBoolean;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "RubyMethod.java"
InnerClasses:
public RespondToMissingMethod = org.jruby.RubyModule$RespondToMissingMethod of org.jruby.RubyModule
public final Type = org.jruby.runtime.Block$Type of org.jruby.runtime.Block
RuntimeVisibleAnnotations:
org.jruby.anno.JRubyClass(name = {"Method"})