public final class FrameWithBoxing extends Object implements com.oracle.truffle.api.frame.VirtualFrame, com.oracle.truffle.api.frame.MaterializedFrame
Modifier and Type | Field and Description |
---|---|
private Object[] |
arguments |
private com.oracle.truffle.api.frame.FrameDescriptor |
descriptor |
private Object[] |
locals |
Constructor and Description |
---|
FrameWithBoxing(com.oracle.truffle.api.frame.FrameDescriptor descriptor,
Object[] arguments) |
Modifier and Type | Method and Description |
---|---|
Object[] |
getArguments() |
boolean |
getBoolean(com.oracle.truffle.api.frame.FrameSlot slot) |
byte |
getByte(com.oracle.truffle.api.frame.FrameSlot slot) |
double |
getDouble(com.oracle.truffle.api.frame.FrameSlot slot) |
float |
getFloat(com.oracle.truffle.api.frame.FrameSlot slot) |
com.oracle.truffle.api.frame.FrameDescriptor |
getFrameDescriptor() |
int |
getInt(com.oracle.truffle.api.frame.FrameSlot slot) |
private Object[] |
getLocals() |
long |
getLong(com.oracle.truffle.api.frame.FrameSlot slot) |
Object |
getObject(com.oracle.truffle.api.frame.FrameSlot slot) |
Object |
getValue(com.oracle.truffle.api.frame.FrameSlot slot) |
boolean |
isBoolean(com.oracle.truffle.api.frame.FrameSlot slot) |
boolean |
isByte(com.oracle.truffle.api.frame.FrameSlot slot) |
boolean |
isDouble(com.oracle.truffle.api.frame.FrameSlot slot) |
boolean |
isFloat(com.oracle.truffle.api.frame.FrameSlot slot) |
boolean |
isInt(com.oracle.truffle.api.frame.FrameSlot slot) |
boolean |
isLong(com.oracle.truffle.api.frame.FrameSlot slot) |
boolean |
isObject(com.oracle.truffle.api.frame.FrameSlot slot) |
com.oracle.truffle.api.frame.MaterializedFrame |
materialize() |
private boolean |
resize() |
private Object[] |
resizeAndCheck(com.oracle.truffle.api.frame.FrameSlot slot) |
void |
setBoolean(com.oracle.truffle.api.frame.FrameSlot slot,
boolean value) |
void |
setByte(com.oracle.truffle.api.frame.FrameSlot slot,
byte value) |
void |
setDouble(com.oracle.truffle.api.frame.FrameSlot slot,
double value) |
void |
setFloat(com.oracle.truffle.api.frame.FrameSlot slot,
float value) |
void |
setInt(com.oracle.truffle.api.frame.FrameSlot slot,
int value) |
void |
setLong(com.oracle.truffle.api.frame.FrameSlot slot,
long value) |
void |
setObject(com.oracle.truffle.api.frame.FrameSlot slot,
Object value) |
(package private) static <T> T |
unsafeCast(Object value,
Class<T> type,
boolean condition,
boolean nonNull) |
private final com.oracle.truffle.api.frame.FrameDescriptor descriptor
public FrameWithBoxing(com.oracle.truffle.api.frame.FrameDescriptor descriptor, Object[] arguments)
public Object[] getArguments()
getArguments
in interface com.oracle.truffle.api.frame.Frame
public com.oracle.truffle.api.frame.MaterializedFrame materialize()
materialize
in interface com.oracle.truffle.api.frame.Frame
public Object getObject(com.oracle.truffle.api.frame.FrameSlot slot)
getObject
in interface com.oracle.truffle.api.frame.Frame
public void setObject(com.oracle.truffle.api.frame.FrameSlot slot, Object value)
setObject
in interface com.oracle.truffle.api.frame.Frame
public byte getByte(com.oracle.truffle.api.frame.FrameSlot slot) throws com.oracle.truffle.api.frame.FrameSlotTypeException
getByte
in interface com.oracle.truffle.api.frame.Frame
com.oracle.truffle.api.frame.FrameSlotTypeException
public void setByte(com.oracle.truffle.api.frame.FrameSlot slot, byte value)
setByte
in interface com.oracle.truffle.api.frame.Frame
public boolean getBoolean(com.oracle.truffle.api.frame.FrameSlot slot) throws com.oracle.truffle.api.frame.FrameSlotTypeException
getBoolean
in interface com.oracle.truffle.api.frame.Frame
com.oracle.truffle.api.frame.FrameSlotTypeException
public void setBoolean(com.oracle.truffle.api.frame.FrameSlot slot, boolean value)
setBoolean
in interface com.oracle.truffle.api.frame.Frame
public float getFloat(com.oracle.truffle.api.frame.FrameSlot slot) throws com.oracle.truffle.api.frame.FrameSlotTypeException
getFloat
in interface com.oracle.truffle.api.frame.Frame
com.oracle.truffle.api.frame.FrameSlotTypeException
public void setFloat(com.oracle.truffle.api.frame.FrameSlot slot, float value)
setFloat
in interface com.oracle.truffle.api.frame.Frame
public long getLong(com.oracle.truffle.api.frame.FrameSlot slot) throws com.oracle.truffle.api.frame.FrameSlotTypeException
getLong
in interface com.oracle.truffle.api.frame.Frame
com.oracle.truffle.api.frame.FrameSlotTypeException
public void setLong(com.oracle.truffle.api.frame.FrameSlot slot, long value)
setLong
in interface com.oracle.truffle.api.frame.Frame
public int getInt(com.oracle.truffle.api.frame.FrameSlot slot) throws com.oracle.truffle.api.frame.FrameSlotTypeException
getInt
in interface com.oracle.truffle.api.frame.Frame
com.oracle.truffle.api.frame.FrameSlotTypeException
public void setInt(com.oracle.truffle.api.frame.FrameSlot slot, int value)
setInt
in interface com.oracle.truffle.api.frame.Frame
public double getDouble(com.oracle.truffle.api.frame.FrameSlot slot) throws com.oracle.truffle.api.frame.FrameSlotTypeException
getDouble
in interface com.oracle.truffle.api.frame.Frame
com.oracle.truffle.api.frame.FrameSlotTypeException
public void setDouble(com.oracle.truffle.api.frame.FrameSlot slot, double value)
setDouble
in interface com.oracle.truffle.api.frame.Frame
public com.oracle.truffle.api.frame.FrameDescriptor getFrameDescriptor()
getFrameDescriptor
in interface com.oracle.truffle.api.frame.Frame
private Object[] resizeAndCheck(com.oracle.truffle.api.frame.FrameSlot slot)
public Object getValue(com.oracle.truffle.api.frame.FrameSlot slot)
getValue
in interface com.oracle.truffle.api.frame.Frame
private boolean resize()
public boolean isObject(com.oracle.truffle.api.frame.FrameSlot slot)
isObject
in interface com.oracle.truffle.api.frame.Frame
public boolean isByte(com.oracle.truffle.api.frame.FrameSlot slot)
isByte
in interface com.oracle.truffle.api.frame.Frame
public boolean isBoolean(com.oracle.truffle.api.frame.FrameSlot slot)
isBoolean
in interface com.oracle.truffle.api.frame.Frame
public boolean isInt(com.oracle.truffle.api.frame.FrameSlot slot)
isInt
in interface com.oracle.truffle.api.frame.Frame
public boolean isLong(com.oracle.truffle.api.frame.FrameSlot slot)
isLong
in interface com.oracle.truffle.api.frame.Frame
public boolean isFloat(com.oracle.truffle.api.frame.FrameSlot slot)
isFloat
in interface com.oracle.truffle.api.frame.Frame
public boolean isDouble(com.oracle.truffle.api.frame.FrameSlot slot)
isDouble
in interface com.oracle.truffle.api.frame.Frame
static <T> T unsafeCast(Object value, Class<T> type, boolean condition, boolean nonNull)