class org.jruby.RubyNumeric$2 implements org.jruby.runtime.ThreadContext$RecursiveFunctionEx<org.jruby.runtime.JavaSites$CheckedSites>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.jruby.RubyNumeric$2
super_class: java.lang.Object
{
final org.jruby.RubyNumeric this$0;
descriptor: Lorg/jruby/RubyNumeric;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private final org.jruby.runtime.builtin.IRubyObject val$x;
descriptor: Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
void <init>(org.jruby.RubyNumeric, org.jruby.runtime.builtin.IRubyObject);
descriptor: (Lorg/jruby/RubyNumeric;Lorg/jruby/runtime/builtin/IRubyObject;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 0: aload 0
aload 1
putfield org.jruby.RubyNumeric$2.this$0:Lorg/jruby/RubyNumeric;
aload 0
aload 2
putfield org.jruby.RubyNumeric$2.val$x:Lorg/jruby/runtime/builtin/IRubyObject;
aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/RubyNumeric$2;
MethodParameters:
Name Flags
this$0 final
val$x final
public org.jruby.runtime.builtin.IRubyObject call(org.jruby.runtime.ThreadContext, org.jruby.runtime.JavaSites$CheckedSites, org.jruby.runtime.builtin.IRubyObject, boolean);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/JavaSites$CheckedSites;Lorg/jruby/runtime/builtin/IRubyObject;Z)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: iload 4
ifeq 2
1: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
ldc "recursive call to "
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 2
getfield org.jruby.runtime.JavaSites$CheckedSites.methodName:Ljava/lang/String;
invokestatic org.jruby.util.RubyStringBuilder.ids:(Lorg/jruby/Ruby;Ljava/lang/String;)Lorg/jruby/RubyString;
invokestatic org.jruby.util.RubyStringBuilder.str:(Lorg/jruby/Ruby;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;)Ljava/lang/String;
aload 2
getfield org.jruby.runtime.JavaSites$CheckedSites.methodName:Ljava/lang/String;
invokevirtual org.jruby.Ruby.newNameError:(Ljava/lang/String;Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield org.jruby.RubyNumeric$2.val$x:Lorg/jruby/runtime/builtin/IRubyObject;
invokestatic org.jruby.RubyNumeric.getMetaClass:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyClass;
aload 1
aload 0
getfield org.jruby.RubyNumeric$2.val$x:Lorg/jruby/runtime/builtin/IRubyObject;
aload 2
iconst_1
anewarray org.jruby.runtime.builtin.IRubyObject
dup
iconst_0
aload 3
aastore
invokevirtual org.jruby.RubyClass.finvokeChecked:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/JavaSites$CheckedSites;[Lorg/jruby/runtime/builtin/IRubyObject;)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 3 0 this Lorg/jruby/RubyNumeric$2;
0 3 1 context Lorg/jruby/runtime/ThreadContext;
0 3 2 site Lorg/jruby/runtime/JavaSites$CheckedSites;
0 3 3 obj Lorg/jruby/runtime/builtin/IRubyObject;
0 3 4 recur Z
MethodParameters:
Name Flags
context
site
obj
recur
public org.jruby.runtime.builtin.IRubyObject call(org.jruby.runtime.ThreadContext, java.lang.Object, org.jruby.runtime.builtin.IRubyObject, boolean);
descriptor: (Lorg/jruby/runtime/ThreadContext;Ljava/lang/Object;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=5, locals=5, args_size=5
0: aload 0
aload 1
aload 2
checkcast org.jruby.runtime.JavaSites$CheckedSites
aload 3
iload 4
invokevirtual org.jruby.RubyNumeric$2.call:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/JavaSites$CheckedSites;Lorg/jruby/runtime/builtin/IRubyObject;Z)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Ljava/lang/Object;Lorg/jruby/runtime/ThreadContext$RecursiveFunctionEx<Lorg/jruby/runtime/JavaSites$CheckedSites;>;
SourceFile: "RubyNumeric.java"
EnclosingMethod: org.jruby.RubyNumeric.coerceBit:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/JavaSites$CheckedSites;Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/runtime/builtin/IRubyObject;
NestHost: org.jruby.RubyNumeric
InnerClasses:
org.jruby.RubyNumeric$2
public CheckedSites = org.jruby.runtime.JavaSites$CheckedSites of org.jruby.runtime.JavaSites
public abstract RecursiveFunctionEx = org.jruby.runtime.ThreadContext$RecursiveFunctionEx of org.jruby.runtime.ThreadContext