public class org.jruby.java.invokers.InstanceFieldGetter extends org.jruby.java.invokers.FieldMethodZero
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.jruby.java.invokers.InstanceFieldGetter
super_class: org.jruby.java.invokers.FieldMethodZero
{
public void <init>(java.lang.String, org.jruby.RubyModule, java.lang.reflect.Field);
descriptor: (Ljava/lang/String;Lorg/jruby/RubyModule;Ljava/lang/reflect/Field;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
aload 3
invokespecial org.jruby.java.invokers.FieldMethodZero.<init>:(Ljava/lang/String;Lorg/jruby/RubyModule;Ljava/lang/reflect/Field;)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/jruby/java/invokers/InstanceFieldGetter;
0 2 1 name Ljava/lang/String;
0 2 2 host Lorg/jruby/RubyModule;
0 2 3 field Ljava/lang/reflect/Field;
MethodParameters:
Name Flags
name
host
field
public final org.jruby.runtime.builtin.IRubyObject call(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.RubyModule, java.lang.String);
descriptor: (Lorg/jruby/runtime/ThreadContext;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/RubyModule;Ljava/lang/String;)Lorg/jruby/runtime/builtin/IRubyObject;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=4, locals=6, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 0
getfield org.jruby.java.invokers.InstanceFieldGetter.field:Ljava/lang/reflect/Field;
aload 0
aload 2
invokevirtual org.jruby.java.invokers.InstanceFieldGetter.retrieveTarget:(Lorg/jruby/runtime/builtin/IRubyObject;)Ljava/lang/Object;
invokevirtual java.lang.reflect.Field.get:(Ljava/lang/Object;)Ljava/lang/Object;
invokestatic org.jruby.javasupport.JavaUtil.convertJavaToUsableRubyObject:(Lorg/jruby/Ruby;Ljava/lang/Object;)Lorg/jruby/runtime/builtin/IRubyObject;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.IllegalAccessException
astore 5
start local 5 3: aload 0
aload 1
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
aload 5
invokevirtual org.jruby.java.invokers.InstanceFieldGetter.handleGetException:(Lorg/jruby/Ruby;Ljava/lang/IllegalAccessException;)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 4 0 this Lorg/jruby/java/invokers/InstanceFieldGetter;
0 4 1 context Lorg/jruby/runtime/ThreadContext;
0 4 2 self Lorg/jruby/runtime/builtin/IRubyObject;
0 4 3 clazz Lorg/jruby/RubyModule;
0 4 4 name Ljava/lang/String;
3 4 5 ex Ljava/lang/IllegalAccessException;
Exception table:
from to target type
0 1 2 Class java.lang.IllegalAccessException
MethodParameters:
Name Flags
context
self
clazz
name
}
SourceFile: "InstanceFieldGetter.java"