public class AttrAssignInstr extends NoResultCallInstr
argsCount, callSite, callSiteCounter, callSiteId, hasClosure, name, procNew
operands
EMPTY_OPERANDS
Modifier | Constructor and Description |
---|---|
protected |
AttrAssignInstr(IRScope scope,
CallType callType,
RubySymbol name,
Operand receiver,
Operand[] args,
boolean potentiallyRefined,
CallSite callSite,
long callSiteId) |
|
AttrAssignInstr(IRScope scope,
Operand obj,
RubySymbol attr,
Operand[] args,
boolean isPotentiallyRefined) |
Modifier and Type | Method and Description |
---|---|
Instr |
clone(CloneInfo ii)
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).
|
static AttrAssignInstr |
create(IRScope scope,
Operand obj,
RubySymbol attr,
Operand[] args,
boolean isPotentiallyRefined) |
static AttrAssignInstr |
decode(IRReaderDecoder d) |
void |
encode(IRWriterEncoder e) |
java.lang.Object |
interpret(ThreadContext context,
StaticScope currScope,
DynamicScope dynamicScope,
IRubyObject self,
java.lang.Object[] temp) |
void |
visit(IRVisitor visitor) |
create, getResult
blockInlining, canBeEval, cloneCallArgs, computeScopeFlags, containsArgSplat, getArg1, getArgsCount, getCallArgs, getCallSite, getCallSiteFor, getCallSiteId, getCallType, getClosureArg, getClosureArg, getId, getName, getReceiver, hasLiteralClosure, inliningBlocked, isAllFixnums, isAllFloats, isPotentiallyRefined, prepareArguments, prepareArgumentsComplex, prepareArgumentsSimple, prepareBlock, setCallSiteId, setProcNew, simplifyOperands, splatMap, targetRequiresCallersBinding, targetRequiresCallersFrame, toStringNonOperandArgs
getOperands, setOperand
canBeDeletedFromScope, canRaiseException, cloneOperands, dumpableFields, getOperation, getUsedVariables, hasSideEffects, interpretAndGetNewIPC, isDead, isDeletable, markDead, renameVars, simplifyAndGetResult, toString, transfersControl
protected AttrAssignInstr(IRScope scope, CallType callType, RubySymbol name, Operand receiver, Operand[] args, boolean potentiallyRefined, CallSite callSite, long callSiteId)
public AttrAssignInstr(IRScope scope, Operand obj, RubySymbol attr, Operand[] args, boolean isPotentiallyRefined)
public static AttrAssignInstr create(IRScope scope, Operand obj, RubySymbol attr, Operand[] args, boolean isPotentiallyRefined)
public Instr clone(CloneInfo ii)
Instr
clone
in class NoResultCallInstr
ii
- This object manages renaming of variables and labels, handles
args and return values.public void encode(IRWriterEncoder e)
public static AttrAssignInstr decode(IRReaderDecoder d)
public java.lang.Object interpret(ThreadContext context, StaticScope currScope, DynamicScope dynamicScope, IRubyObject self, java.lang.Object[] temp)
public void visit(IRVisitor visitor)
visit
in class NoResultCallInstr
Copyright © 2001-2022 JRuby. All Rights Reserved.