public class MethodBlockBody extends ContextAwareBlockBody
scope
EMPTY_PARAMETER_LIST, NULL_BODY, signature
Constructor and Description |
---|
MethodBlockBody(StaticScope staticScope,
Signature signature,
DynamicMethod method,
ArgumentDescriptor[] argsDesc,
IRubyObject receiver,
RubyModule originModule,
String originName,
String file,
int line) |
Modifier and Type | Method and Description |
---|---|
IRubyObject |
call(ThreadContext context,
IRubyObject[] args,
Binding binding,
Block.Type type) |
IRubyObject |
call(ThreadContext context,
IRubyObject[] args,
Binding binding,
Block.Type type,
Block block) |
static Block |
createMethodBlock(MethodBlockBody body) |
protected IRubyObject |
doYield(ThreadContext context,
IRubyObject[] args,
IRubyObject self,
Binding binding,
Block.Type type)
Subclass specific yield implementation.
|
protected IRubyObject |
doYield(ThreadContext context,
IRubyObject value,
Binding binding,
Block.Type type)
Subclass specific yield implementation.
|
ArgumentDescriptor[] |
getArgumentDescriptors() |
String |
getFile()
Get the filename for this block
|
int |
getLine()
get The line number for this block
|
void |
setEvalType(EvalType evalType) |
getStaticScope, post, pre, setStaticScope
arity, call, call, call, call, call, call, call, call, getSignature, isGiven, prepareArgumentsForCall, yield, yield, yield, yield, yieldSpecific, yieldSpecific, yieldSpecific, yieldSpecific
public MethodBlockBody(StaticScope staticScope, Signature signature, DynamicMethod method, ArgumentDescriptor[] argsDesc, IRubyObject receiver, RubyModule originModule, String originName, String file, int line)
public static Block createMethodBlock(MethodBlockBody body)
public IRubyObject call(ThreadContext context, IRubyObject[] args, Binding binding, Block.Type type)
public IRubyObject call(ThreadContext context, IRubyObject[] args, Binding binding, Block.Type type, Block block)
protected IRubyObject doYield(ThreadContext context, IRubyObject value, Binding binding, Block.Type type)
BlockBody
Should not be called directly. Gets called by BlockBody.yield(ThreadContext, IRubyObject, Binding, Block.Type)
after ensuring that any common yield logic is taken care of.
protected IRubyObject doYield(ThreadContext context, IRubyObject[] args, IRubyObject self, Binding binding, Block.Type type)
BlockBody
Should not be called directly. Gets called by BlockBody.yield(ThreadContext, org.jruby.runtime.builtin.IRubyObject[], org.jruby.runtime.builtin.IRubyObject, Binding, org.jruby.runtime.Block.Type)
after ensuring that all common yield logic is taken care of.
public String getFile()
BlockBody
public int getLine()
BlockBody
public ArgumentDescriptor[] getArgumentDescriptors()
getArgumentDescriptors
in class BlockBody
public void setEvalType(EvalType evalType)
setEvalType
in class BlockBody
Copyright © 2001-2015 JRuby. All Rights Reserved.