Top Fields Constructors Methods
org.jruby.ir.instructions

public Class NoResultCallInstr

extends CallBase
Class Inheritance
Known Direct Subclasses
org.jruby.ir.instructions.specialized.OneOperandArgNoBlockNoResultCallInstr, org.jruby.ir.instructions.AttrAssignInstr
Imports
org.jruby.RubyInstanceConfig, .RubySymbol, org.jruby.ir.IRScope, .IRVisitor, .Operation, org.jruby.ir.instructions.specialized.OneOperandArgNoBlockNoResultCallInstr, org.jruby.ir.operands.NullBlock, .Operand, .Variable, org.jruby.ir.persistence.IRReaderDecoder, org.jruby.ir.transformations.inlining.CloneInfo, org.jruby.runtime.CallSite, .CallType

Field Summary

Inherited from org.jruby.ir.instructions.CallBase:
argsCountcallSitecallSiteCountercallSiteIdhasClosurename

Constructor Summary

AccessConstructor and Description
protected
NoResultCallInstr(IRScope scope, Operation op, CallType callType, RubySymbol name, Operand receiver, Operand[] args, Operand closure, int flags, boolean potentiallyRefined, CallSite callSite, long callSiteId)

public
NoResultCallInstr(IRScope scope, Operation op, CallType callType, RubySymbol name, Operand receiver, Operand[] args, Operand closure, int flags, boolean isPotentiallyRefined)

Method Summary

Modifier and TypeMethod and Description
public Instr
clone(CloneInfo
This object manages renaming of variables and labels, handles args and return values.
ii
)

Implements abstract org.jruby.ir.instructions.Instr.clone.

Clone the instruction for use in an inlining context (either when a scope is inlined into another scope, or when a block has to be cloned because its associated call belongs to an inlined scope).

public static NoResultCallInstr
create(IRScope scope, CallType callType, RubySymbol name, Operand receiver, Operand[] args, Operand closure, int flags, boolean isPotentiallyRefined)

public static NoResultCallInstr
public Variable
getResult()

Implements abstract org.jruby.ir.instructions.CallBase.getResult.

result and non-result call instructions are processed with the same code so we provide this method to make that same code simpler.

public void
Inherited from org.jruby.ir.instructions.CallBase:
blockInliningcanBeEvalcloneCallArgscomputeScopeFlagscontainsArgSplatencodegetArg1getArgsCountgetCallArgsgetCallSitegetCallSiteForgetCallSiteIdgetCallTypegetClosureArggetClosureArggetFlagsgetIdgetNamegetReceiverhasLiteralClosureinliningBlockedinterpretisAllFixnumsisAllFloatsisPotentiallyRefinedprepareArgumentsprepareArgumentsComplexprepareArgumentsSimpleprepareBlocksetCallSiteIdsimplifyOperandssplatMaptargetRequiresCallersBindingtargetRequiresCallersFrametoStringNonOperandArgs

Constructor Detail

NoResultCallInstrback to summary
protected NoResultCallInstr(IRScope scope, Operation op, CallType callType, RubySymbol name, Operand receiver, Operand[] args, Operand closure, int flags, boolean potentiallyRefined, CallSite callSite, long callSiteId)
NoResultCallInstrback to summary
public NoResultCallInstr(IRScope scope, Operation op, CallType callType, RubySymbol name, Operand receiver, Operand[] args, Operand closure, int flags, boolean isPotentiallyRefined)

Method Detail

cloneback to summary
public Instr clone(CloneInfo ii)

Implements abstract org.jruby.ir.instructions.Instr.clone.

Doc from org.jruby.ir.instructions.Instr.clone.

Clone the instruction for use in an inlining context (either when a scope is inlined into another scope, or when a block has to be cloned because its associated call belongs to an inlined scope). This might renaming variables and labels to eliminate naming conflicts. The implementation might vary on the cloning mode.

Parameters
ii:CloneInfo

This object manages renaming of variables and labels, handles args and return values.

Returns:Instr

a new instruction that can be used in the target scope.

Annotations
@Override
createback to summary
public static NoResultCallInstr create(IRScope scope, CallType callType, RubySymbol name, Operand receiver, Operand[] args, Operand closure, int flags, boolean isPotentiallyRefined)
decodeback to summary
public static NoResultCallInstr decode(IRReaderDecoder d)
getResultback to summary
public Variable getResult()

Implements abstract org.jruby.ir.instructions.CallBase.getResult.

result and non-result call instructions are processed with the same code so we provide this method to make that same code simpler.

Annotations
@Override
visitback to summary
public void visit(IRVisitor visitor)

Overrides org.jruby.ir.instructions.Instr.visit.

Annotations
@Override