Package com.oracle.truffle.api.frame
Class FrameDescriptor
- java.lang.Object
-
- com.oracle.truffle.api.frame.FrameDescriptor
-
- All Implemented Interfaces:
java.lang.Cloneable
public final class FrameDescriptor extends java.lang.Object implements java.lang.Cloneable
Descriptor of the slots of frame objects. Multiple frame instances are associated with one such descriptor.
-
-
Constructor Summary
Constructors Constructor Description FrameDescriptor()
FrameDescriptor(java.lang.Object defaultValue)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description FrameSlot
addFrameSlot(java.lang.Object identifier)
FrameSlot
addFrameSlot(java.lang.Object identifier, FrameSlotKind kind)
FrameSlot
addFrameSlot(java.lang.Object identifier, java.lang.Object info, FrameSlotKind kind)
FrameDescriptor
copy()
static FrameDescriptor
create()
static FrameDescriptor
create(java.lang.Object defaultValue)
FrameSlot
findFrameSlot(java.lang.Object identifier)
FrameSlot
findOrAddFrameSlot(java.lang.Object identifier)
FrameSlot
findOrAddFrameSlot(java.lang.Object identifier, FrameSlotKind kind)
FrameSlot
findOrAddFrameSlot(java.lang.Object identifier, java.lang.Object info, FrameSlotKind kind)
java.lang.Object
getDefaultValue()
java.util.Set<java.lang.Object>
getIdentifiers()
Retrieve the list of all the identifiers associated with this frame descriptor.Assumption
getNotInFrameAssumption(java.lang.Object identifier)
int
getSize()
java.util.List<? extends FrameSlot>
getSlots()
Assumption
getVersion()
void
removeFrameSlot(java.lang.Object identifier)
FrameDescriptor
shallowCopy()
-
-
-
Method Detail
-
create
public static FrameDescriptor create()
-
create
public static FrameDescriptor create(java.lang.Object defaultValue)
-
addFrameSlot
public FrameSlot addFrameSlot(java.lang.Object identifier)
-
addFrameSlot
public FrameSlot addFrameSlot(java.lang.Object identifier, FrameSlotKind kind)
-
addFrameSlot
public FrameSlot addFrameSlot(java.lang.Object identifier, java.lang.Object info, FrameSlotKind kind)
-
findFrameSlot
public FrameSlot findFrameSlot(java.lang.Object identifier)
-
findOrAddFrameSlot
public FrameSlot findOrAddFrameSlot(java.lang.Object identifier)
-
findOrAddFrameSlot
public FrameSlot findOrAddFrameSlot(java.lang.Object identifier, FrameSlotKind kind)
-
findOrAddFrameSlot
public FrameSlot findOrAddFrameSlot(java.lang.Object identifier, java.lang.Object info, FrameSlotKind kind)
-
removeFrameSlot
public void removeFrameSlot(java.lang.Object identifier)
-
getSize
public int getSize()
-
getSlots
public java.util.List<? extends FrameSlot> getSlots()
-
getIdentifiers
public java.util.Set<java.lang.Object> getIdentifiers()
Retrieve the list of all the identifiers associated with this frame descriptor.- Returns:
- the list of all the identifiers in this frame descriptor
-
copy
public FrameDescriptor copy()
-
shallowCopy
public FrameDescriptor shallowCopy()
-
getVersion
public Assumption getVersion()
-
getDefaultValue
public java.lang.Object getDefaultValue()
-
getNotInFrameAssumption
public Assumption getNotInFrameAssumption(java.lang.Object identifier)
-
-