public class CompiledIRBlockBody extends IRBlockBody
| Modifier and Type | Field and Description |
|---|---|
protected java.lang.invoke.MethodHandle |
handle |
protected java.lang.invoke.MethodHandle |
normalYieldHandle |
protected java.lang.invoke.MethodHandle |
normalYieldSpecificHandle |
protected java.lang.invoke.MethodHandle |
normalYieldUnwrapHandle |
protected java.lang.invoke.MethodHandle |
testBlockBody |
closure, evalType, fileName, lineNumberscopeEMPTY_PARAMETER_LIST, NULL_BODY, signature| Constructor and Description |
|---|
CompiledIRBlockBody(java.lang.invoke.MethodHandle handle,
IRScope closure,
long encodedSignature) |
| Modifier and Type | Method and Description |
|---|---|
protected IRubyObject |
callDirect(ThreadContext context,
Block block,
IRubyObject[] args,
Block blockArg) |
boolean |
canCallDirect() |
ArgumentDescriptor[] |
getArgumentDescriptors() |
java.lang.invoke.MethodHandle |
getHandle() |
java.lang.invoke.MethodHandle |
getNormalYieldHandle() |
java.lang.invoke.MethodHandle |
getNormalYieldSpecificHandle() |
java.lang.invoke.MethodHandle |
getNormalYieldUnwrapHandle() |
java.lang.invoke.MethodHandle |
getTestBlockBody() |
static boolean |
testBlockBody(Block block,
IRBlockBody body) |
protected IRubyObject |
yieldDirect(ThreadContext context,
Block block,
IRubyObject[] args,
IRubyObject self) |
call, call, call, call, call, call, commonYieldPath, doYield, doYield, doYieldLambda, getEvalType, getFile, getLine, getScope, setEvalType, yieldSpecific, yieldSpecific, yieldSpecific, yieldSpecificgetStaticScope, post, pre, setStaticScopeprotected final java.lang.invoke.MethodHandle handle
protected volatile java.lang.invoke.MethodHandle normalYieldSpecificHandle
protected volatile java.lang.invoke.MethodHandle normalYieldHandle
protected volatile java.lang.invoke.MethodHandle normalYieldUnwrapHandle
protected volatile java.lang.invoke.MethodHandle testBlockBody
public CompiledIRBlockBody(java.lang.invoke.MethodHandle handle, IRScope closure, long encodedSignature)
public static boolean testBlockBody(Block block, IRBlockBody body)
public ArgumentDescriptor[] getArgumentDescriptors()
getArgumentDescriptors in class BlockBodypublic boolean canCallDirect()
canCallDirect in class IRBlockBodypublic java.lang.invoke.MethodHandle getHandle()
public java.lang.invoke.MethodHandle getNormalYieldSpecificHandle()
public java.lang.invoke.MethodHandle getNormalYieldHandle()
public java.lang.invoke.MethodHandle getNormalYieldUnwrapHandle()
public java.lang.invoke.MethodHandle getTestBlockBody()
protected IRubyObject callDirect(ThreadContext context, Block block, IRubyObject[] args, Block blockArg)
callDirect in class BlockBodyprotected IRubyObject yieldDirect(ThreadContext context, Block block, IRubyObject[] args, IRubyObject self)
yieldDirect in class BlockBodyCopyright © 2001-2016 JRuby. All Rights Reserved.