public abstract class SLStatementNode extends SLScopedNode implements com.oracle.truffle.api.instrumentation.InstrumentableNode
VirtualFrame provides access to the
local variables.| Constructor and Description |
|---|
SLStatementNode() |
| Modifier and Type | Method and Description |
|---|---|
void |
addRootTag()
Marks this node as being a
StandardTags.RootTag and StandardTags.RootBodyTag
for instrumentation purposes. |
void |
addStatementTag()
Marks this node as being a
StandardTags.StatementTag for instrumentation purposes. |
com.oracle.truffle.api.instrumentation.InstrumentableNode.WrapperNode |
createWrapper(com.oracle.truffle.api.instrumentation.ProbeNode probe) |
abstract void |
executeVoid(com.oracle.truffle.api.frame.VirtualFrame frame)
Execute this node as as statement, where no return value is necessary.
|
static String |
formatSourceSection(com.oracle.truffle.api.nodes.Node node)
Formats a source section of a node in human readable form.
|
int |
getSourceCharIndex() |
int |
getSourceEndIndex() |
int |
getSourceLength() |
com.oracle.truffle.api.source.SourceSection |
getSourceSection() |
boolean |
hasSource() |
boolean |
hasTag(Class<? extends com.oracle.truffle.api.instrumentation.Tag> tag) |
boolean |
isInstrumentable() |
void |
setSourceSection(int charIndex,
int length) |
void |
setUnavailableSourceSection() |
String |
toString() |
findBlock, getVisibleVariablesIndexOnEnter, hasScope, setVisibleVariablesIndexOnEnter, setVisibleVariablesIndexOnExitaccept, adoptChildren, atomic, atomic, copy, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, insert, insert, isAdoptable, isSafelyReplaceableBy, notifyInserted, onReplace, replace, replace, reportPolymorphicSpecializepublic final com.oracle.truffle.api.source.SourceSection getSourceSection()
getSourceSection in class com.oracle.truffle.api.nodes.Nodepublic final boolean hasSource()
public final boolean isInstrumentable()
isInstrumentable in interface com.oracle.truffle.api.instrumentation.InstrumentableNodepublic final int getSourceCharIndex()
public final int getSourceEndIndex()
public final int getSourceLength()
public final void setSourceSection(int charIndex,
int length)
public final void setUnavailableSourceSection()
public boolean hasTag(Class<? extends com.oracle.truffle.api.instrumentation.Tag> tag)
hasTag in interface com.oracle.truffle.api.instrumentation.InstrumentableNodepublic com.oracle.truffle.api.instrumentation.InstrumentableNode.WrapperNode createWrapper(com.oracle.truffle.api.instrumentation.ProbeNode probe)
createWrapper in interface com.oracle.truffle.api.instrumentation.InstrumentableNodepublic abstract void executeVoid(com.oracle.truffle.api.frame.VirtualFrame frame)
public final void addStatementTag()
StandardTags.StatementTag for instrumentation purposes.public final void addRootTag()
StandardTags.RootTag and StandardTags.RootBodyTag
for instrumentation purposes.public String toString()
toString in class com.oracle.truffle.api.nodes.Nodepublic static String formatSourceSection(com.oracle.truffle.api.nodes.Node node)
'~' at the end.node - the node to format.