public class MixedModeIRBlockBody extends IRBlockBody implements Compilable<CompiledIRBlockBody>
Modifier and Type | Field and Description |
---|---|
protected boolean |
pushScope |
protected boolean |
reuseParentScope |
closure, fileName, lineNumber
scope
NULL_BODY, signature, testBlockBody
Constructor and Description |
---|
MixedModeIRBlockBody(IRClosure closure,
Signature signature) |
Modifier and Type | Method and Description |
---|---|
protected IRubyObject |
callDirect(ThreadContext context,
Block block,
IRubyObject[] args,
Block blockArg) |
boolean |
canCallDirect() |
protected IRubyObject |
commonYieldPath(ThreadContext context,
Block block,
Block.Type type,
IRubyObject[] args,
IRubyObject self,
Block blockArg) |
void |
completeBuild(CompiledIRBlockBody blockBody) |
InterpreterContext |
ensureInstrsReady() |
ArgumentDescriptor[] |
getArgumentDescriptors() |
java.lang.String |
getClassName(ThreadContext context) |
RubyModule |
getImplementationClass() |
IRScope |
getIRScope() |
BlockBody |
getJittedBody() |
java.lang.String |
getName() |
void |
setCallCount(int callCount) |
void |
setEvalType(EvalType evalType) |
protected IRubyObject |
yieldDirect(ThreadContext context,
Block block,
IRubyObject[] args,
IRubyObject self) |
call, call, call, call, call, call, doYield, doYield, doYieldLambda, getEvalType, getFile, getLine, getScope, yieldSpecific, yieldSpecific, yieldSpecific, yieldSpecific
getStaticScope, post, pre, setStaticScope
arity, call, call, call, call, getSignature, getTestBlockBody, isGiven, prepareArgumentsForCall, testBlockBody, yield, yield, yield, yield
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getFile, getLine
protected boolean pushScope
protected boolean reuseParentScope
public void setEvalType(EvalType evalType)
setEvalType
in class IRBlockBody
public boolean canCallDirect()
canCallDirect
in class IRBlockBody
public void setCallCount(int callCount)
setCallCount
in interface Compilable<CompiledIRBlockBody>
public void completeBuild(CompiledIRBlockBody blockBody)
completeBuild
in interface Compilable<CompiledIRBlockBody>
public IRScope getIRScope()
getIRScope
in interface Compilable<CompiledIRBlockBody>
public BlockBody getJittedBody()
public ArgumentDescriptor[] getArgumentDescriptors()
getArgumentDescriptors
in class BlockBody
public InterpreterContext ensureInstrsReady()
ensureInstrsReady
in interface Compilable<CompiledIRBlockBody>
public java.lang.String getClassName(ThreadContext context)
getClassName
in interface Compilable<CompiledIRBlockBody>
public java.lang.String getName()
getName
in interface Compilable<CompiledIRBlockBody>
protected IRubyObject callDirect(ThreadContext context, Block block, IRubyObject[] args, Block blockArg)
callDirect
in class BlockBody
protected IRubyObject yieldDirect(ThreadContext context, Block block, IRubyObject[] args, IRubyObject self)
yieldDirect
in class BlockBody
protected IRubyObject commonYieldPath(ThreadContext context, Block block, Block.Type type, IRubyObject[] args, IRubyObject self, Block blockArg)
commonYieldPath
in class IRBlockBody
public RubyModule getImplementationClass()
getImplementationClass
in interface Compilable<CompiledIRBlockBody>
Copyright © 2001-2018 JRuby. All Rights Reserved.