class org.jruby.java.proxies.JavaInterfaceTemplate$AppendFeatures extends org.jruby.internal.runtime.methods.JavaMethod$JavaMethodOneBlock
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.jruby.java.proxies.JavaInterfaceTemplate$AppendFeatures
super_class: org.jruby.internal.runtime.methods.JavaMethod$JavaMethodOneBlock
{
void <init>(org.jruby.RubyModule);
descriptor: (Lorg/jruby/RubyModule;)V
flags: (0x0000)
Code:
stack=4, locals=2, args_size=2
start local 0 // org.jruby.java.proxies.JavaInterfaceTemplate$AppendFeatures this
start local 1 // org.jruby.RubyModule singletonClass
0: .line 322
aload 0 /* this */
aload 1 /* singletonClass */
getstatic org.jruby.runtime.Visibility.PUBLIC:Lorg/jruby/runtime/Visibility;
ldc "append_features"
invokespecial org.jruby.internal.runtime.methods.JavaMethod$JavaMethodOneBlock.<init>:(Lorg/jruby/RubyModule;Lorg/jruby/runtime/Visibility;Ljava/lang/String;)V
return
end local 1 // org.jruby.RubyModule singletonClass
end local 0 // org.jruby.java.proxies.JavaInterfaceTemplate$AppendFeatures this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/jruby/java/proxies/JavaInterfaceTemplate$AppendFeatures;
0 1 1 singletonClass Lorg/jruby/RubyModule;
MethodParameters:
Name Flags
singletonClass
public org.jruby.runtime.builtin.IRubyObject call(org.jruby.runtime.ThreadContext, org.jruby.runtime.builtin.IRubyObject, org.jruby.RubyModule, java.lang.String, org.jruby.runtime.builtin.IRubyObject, org.jruby.runtime.Block);
descriptor: (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;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=8, args_size=7
start local 0 // org.jruby.java.proxies.JavaInterfaceTemplate$AppendFeatures this
start local 1 // org.jruby.runtime.ThreadContext context
start local 2 // org.jruby.runtime.builtin.IRubyObject self
start local 3 // org.jruby.RubyModule clazz
start local 4 // java.lang.String name
start local 5 // org.jruby.runtime.builtin.IRubyObject arg
start local 6 // org.jruby.runtime.Block block
0: .line 326
aload 5 /* arg */
instanceof org.jruby.RubyModule
ifne 2
1: .line 327
aload 1 /* context */
getfield org.jruby.runtime.ThreadContext.runtime:Lorg/jruby/Ruby;
ldc "append_features called with non-module"
invokevirtual org.jruby.Ruby.newTypeError:(Ljava/lang/String;)Lorg/jruby/exceptions/RaiseException;
athrow
2: .line 330
StackMap locals:
StackMap stack:
aload 5 /* arg */
checkcast org.jruby.RubyModule
astore 7 /* target */
start local 7 // org.jruby.RubyModule target
3: .line 331
aload 7 /* target */
aload 2 /* self */
invokestatic org.jruby.java.proxies.JavaInterfaceTemplate.getInterfaceModules:(Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyArray;
invokevirtual org.jruby.RubyArray.toJavaArrayMaybeUnsafe:()[Lorg/jruby/runtime/builtin/IRubyObject;
invokevirtual org.jruby.RubyModule.include:([Lorg/jruby/runtime/builtin/IRubyObject;)Lorg/jruby/RubyModule;
pop
4: .line 333
aload 1 /* context */
aload 3 /* clazz */
invokevirtual org.jruby.RubyModule.getSuperClass:()Lorg/jruby/RubyClass;
aload 2 /* self */
aload 4 /* name */
aload 5 /* arg */
aload 6 /* block */
invokestatic org.jruby.runtime.Helpers.invokeAs:(Lorg/jruby/runtime/ThreadContext;Lorg/jruby/RubyClass;Lorg/jruby/runtime/builtin/IRubyObject;Ljava/lang/String;Lorg/jruby/runtime/builtin/IRubyObject;Lorg/jruby/runtime/Block;)Lorg/jruby/runtime/builtin/IRubyObject;
areturn
end local 7 // org.jruby.RubyModule target
end local 6 // org.jruby.runtime.Block block
end local 5 // org.jruby.runtime.builtin.IRubyObject arg
end local 4 // java.lang.String name
end local 3 // org.jruby.RubyModule clazz
end local 2 // org.jruby.runtime.builtin.IRubyObject self
end local 1 // org.jruby.runtime.ThreadContext context
end local 0 // org.jruby.java.proxies.JavaInterfaceTemplate$AppendFeatures this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/jruby/java/proxies/JavaInterfaceTemplate$AppendFeatures;
0 5 1 context Lorg/jruby/runtime/ThreadContext;
0 5 2 self Lorg/jruby/runtime/builtin/IRubyObject;
0 5 3 clazz Lorg/jruby/RubyModule;
0 5 4 name Ljava/lang/String;
0 5 5 arg Lorg/jruby/runtime/builtin/IRubyObject;
0 5 6 block Lorg/jruby/runtime/Block;
3 5 7 target Lorg/jruby/RubyModule;
MethodParameters:
Name Flags
context
self
clazz
name
arg
block
}
SourceFile: "JavaInterfaceTemplate.java"
NestHost: org.jruby.java.proxies.JavaInterfaceTemplate
InnerClasses:
public abstract JavaMethodOneBlock = org.jruby.internal.runtime.methods.JavaMethod$JavaMethodOneBlock of org.jruby.internal.runtime.methods.JavaMethod
private AppendFeatures = org.jruby.java.proxies.JavaInterfaceTemplate$AppendFeatures of org.jruby.java.proxies.JavaInterfaceTemplate