Package org.jruby.runtime
Class CompiledIRBlockBody
java.lang.Object
org.jruby.runtime.BlockBody
org.jruby.runtime.ContextAwareBlockBody
org.jruby.runtime.IRBlockBody
org.jruby.runtime.CompiledIRBlockBody
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final MethodHandleprivate static final MethodHandleprivate final Stringprotected final MethodHandleprivate static final MethodHandles.Lookupprotected MethodHandleprotected MethodHandleprotected MethodHandleprivate static final MethodHandleprivate static final MethodHandleprotected final MethodHandleFields inherited from class org.jruby.runtime.IRBlockBody
fileName, lineNumberFields inherited from class org.jruby.runtime.ContextAwareBlockBody
scopeFields inherited from class org.jruby.runtime.BlockBody
NULL_BODY, signature, testBlockBody -
Constructor Summary
ConstructorsConstructorDescriptionCompiledIRBlockBody(MethodHandle handle, StaticScope scope, String file, int line, String encodedArgumentDescriptors, long encodedSignature) -
Method Summary
Modifier and TypeMethodDescriptionprotected IRubyObjectcallDirect(ThreadContext context, Block block, IRubyObject[] args, Block blockArg) booleanprivate static voidcheckArity(ThreadContext context, Block selfBlock, IRubyObject[] args, Block block) protected IRubyObjectcommonYieldPath(ThreadContext context, Block block, Block.Type type, IRubyObject[] args, IRubyObject self, Block blockArg) private static IRubyObject[]wrapValue(IRubyObject value) protected IRubyObjectyieldDirect(ThreadContext context, Block block, IRubyObject[] args, IRubyObject self) Methods inherited from class org.jruby.runtime.IRBlockBody
call, call, call, call, call, call, doYield, doYield, doYieldLambda, getFile, getLine, getScope, postYield, toAry, yieldSpecific, yieldSpecific, yieldSpecific, yieldSpecificMethods inherited from class org.jruby.runtime.ContextAwareBlockBody
getStaticScope, post, pre, setStaticScopeMethods inherited from class org.jruby.runtime.BlockBody
arity, call, call, call, call, getSignature, getTestBlockBody, isGiven, prepareArgumentsForCall, testBlockBody, yield, yield, yield, yield
-
Field Details
-
handle
-
callHandle
-
yieldDirectHandle
-
normalYieldHandle
-
normalYieldSpecificHandle
-
normalYieldUnwrapHandle
-
encodedArgumentDescriptors
-
LOOKUP
-
VALUE_TO_ARRAY
-
WRAP_VALUE
-
CHECK_ARITY
-
-
Constructor Details
-
CompiledIRBlockBody
public CompiledIRBlockBody(MethodHandle handle, StaticScope scope, String file, int line, String encodedArgumentDescriptors, long encodedSignature)
-
-
Method Details
-
checkArity
private static void checkArity(ThreadContext context, Block selfBlock, IRubyObject[] args, Block block) -
wrapValue
-
getArgumentDescriptors
- Overrides:
getArgumentDescriptorsin classBlockBody
-
canCallDirect
public boolean canCallDirect()- Specified by:
canCallDirectin classIRBlockBody
-
getCallHandle
-
getNormalYieldSpecificHandle
-
getNormalYieldHandle
-
getNormalYieldUnwrapHandle
-
callDirect
protected IRubyObject callDirect(ThreadContext context, Block block, IRubyObject[] args, Block blockArg) - Overrides:
callDirectin classBlockBody
-
yieldDirect
protected IRubyObject yieldDirect(ThreadContext context, Block block, IRubyObject[] args, IRubyObject self) - Overrides:
yieldDirectin classBlockBody
-
commonYieldPath
protected IRubyObject commonYieldPath(ThreadContext context, Block block, Block.Type type, IRubyObject[] args, IRubyObject self, Block blockArg) - Specified by:
commonYieldPathin classIRBlockBody
-