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 MethodHandle
protected final MethodHandle
protected MethodHandle
protected MethodHandle
protected MethodHandle
protected final MethodHandle
Fields inherited from class org.jruby.runtime.IRBlockBody
fileName, lineNumber
Fields inherited from class org.jruby.runtime.ContextAwareBlockBody
scope
Fields 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 IRubyObject
callDirect
(ThreadContext context, Block block, IRubyObject[] args, Block blockArg) boolean
protected IRubyObject
commonYieldPath
(ThreadContext context, Block block, IRubyObject[] args, IRubyObject self, Block blockArg) protected IRubyObject
yieldDirect
(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, isRubyBlock, toAry, yieldSpecific, yieldSpecific, yieldSpecific, yieldSpecific
Methods inherited from class org.jruby.runtime.ContextAwareBlockBody
getStaticScope, post, pre, setStaticScope
Methods 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
-
-
Constructor Details
-
CompiledIRBlockBody
public CompiledIRBlockBody(MethodHandle handle, StaticScope scope, String file, int line, String encodedArgumentDescriptors, long encodedSignature)
-
-
Method Details
-
getArgumentDescriptors
- Overrides:
getArgumentDescriptors
in classBlockBody
-
canCallDirect
public boolean canCallDirect()- Specified by:
canCallDirect
in classIRBlockBody
-
getCallHandle
-
getNormalYieldSpecificHandle
-
getNormalYieldHandle
-
getNormalYieldUnwrapHandle
-
callDirect
protected IRubyObject callDirect(ThreadContext context, Block block, IRubyObject[] args, Block blockArg) - Overrides:
callDirect
in classBlockBody
-
yieldDirect
protected IRubyObject yieldDirect(ThreadContext context, Block block, IRubyObject[] args, IRubyObject self) - Overrides:
yieldDirect
in classBlockBody
-
commonYieldPath
protected IRubyObject commonYieldPath(ThreadContext context, Block block, IRubyObject[] args, IRubyObject self, Block blockArg) - Specified by:
commonYieldPath
in classIRBlockBody
-