public abstract class ExecutableNode extends Node
executed using a frame instance
created by the framework.TruffleLanguage.parse(com.oracle.truffle.api.TruffleLanguage.InlineParsingRequest)Node.Child, Node.Children| Modifier | Constructor and Description |
|---|---|
protected |
ExecutableNode(TruffleLanguage<?> language)
Creates new executable node with a given language instance.
|
| Modifier and Type | Method and Description |
|---|---|
abstract Object |
execute(VirtualFrame frame)
Execute this fragment at the place where it was parsed.
|
<C extends TruffleLanguage> |
getLanguage(Class<C> languageClass)
Returns the language instance associated with this executable node.
|
LanguageInfo |
getLanguageInfo()
Returns public information about the language.
|
accept, adoptChildren, atomic, atomic, copy, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, getSourceSection, insert, insert, isAdoptable, isSafelyReplaceableBy, notifyInserted, onReplace, replace, replace, reportPolymorphicSpecialize, toStringprotected ExecutableNode(TruffleLanguage<?> language)
TruffleLanguage.parse(InlineParsingRequest) is executed.language - the language this executable node is associated withpublic abstract Object execute(VirtualFrame frame)
frame - the actual frame valid at the parsed locationnull.public final LanguageInfo getLanguageInfo()
TruffleLanguage.LanguageReference.public final <C extends TruffleLanguage> C getLanguage(Class<C> languageClass)
ExecutableNode.getLanguageInfo(). The language is null if the executable node is not
associated with a language. This method is guaranteed to return a
PE constant if the root node
is also a PE constant.ExecutableNode.getLanguageInfo()