public class ArrayDerefInstr extends OneOperandArgNoBlockCallInstr
Modifier and Type | Field and Description |
---|---|
static ByteList |
AREF |
static ByteList |
ASET |
argsCount, callSite, callSiteCounter, callSiteId, hasClosure, name, procNew
operands
EMPTY_OPERANDS
Constructor and Description |
---|
ArrayDerefInstr(IRScope scope,
Variable result,
Operand obj,
FrozenString arg0) |
ArrayDerefInstr(IRScope scope,
Variable result,
Operand obj,
FrozenString arg0,
CallSite callSite,
long callSiteId) |
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 ArrayDerefInstr |
create(IRScope scope,
Variable result,
Operand obj,
FrozenString arg0) |
static ArrayDerefInstr |
decode(IRReaderDecoder d) |
void |
encode(IRWriterEncoder e) |
FrozenString |
getKey() |
java.lang.Object |
interpret(ThreadContext context,
StaticScope currScope,
DynamicScope dynamicScope,
IRubyObject self,
java.lang.Object[] temp) |
void |
visit(IRVisitor visitor) |
create, create, createWithKwargs, getResult, updateResult
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
public ArrayDerefInstr(IRScope scope, Variable result, Operand obj, FrozenString arg0, CallSite callSite, long callSiteId)
public ArrayDerefInstr(IRScope scope, Variable result, Operand obj, FrozenString arg0)
public static ArrayDerefInstr create(IRScope scope, Variable result, Operand obj, FrozenString arg0)
public Instr clone(CloneInfo ii)
Instr
clone
in class OneOperandArgNoBlockCallInstr
ii
- This object manages renaming of variables and labels, handles
args and return values.public void encode(IRWriterEncoder e)
public static ArrayDerefInstr decode(IRReaderDecoder d)
public java.lang.Object interpret(ThreadContext context, StaticScope currScope, DynamicScope dynamicScope, IRubyObject self, java.lang.Object[] temp)
interpret
in class OneOperandArgNoBlockCallInstr
public FrozenString getKey()
Copyright © 2001-2022 JRuby. All Rights Reserved.