Class TruffleStringIterator.NextNode
java.lang.Object
com.oracle.truffle.api.nodes.Node
com.oracle.truffle.api.strings.TruffleStringIterator.NextNode
- All Implemented Interfaces:
NodeInterface, Cloneable
- Enclosing class:
TruffleStringIterator
Returns the next codepoint in the string.
- Since:
- 22.1
-
Nested Class Summary
Nested classes/interfaces inherited from class Node
Node.Child, Node.Children
Modifier and TypeClassDescriptionstatic @interface
Marks fields that represent child nodes of this node.static @interface
Marks array fields that are children of this node. -
Method Summary
Modifier and TypeMethodDescriptioncreate()
Create a newTruffleStringIterator.NextNode
.final int
Deprecated.abstract int
execute
(TruffleStringIterator it, TruffleString.Encoding encoding) Returns the next codepoint in the string.Get the uncached version ofTruffleStringIterator.NextNode
.Methods inherited from class Node
accept, adoptChildren, atomic, atomic, copy, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, getSourceSection, insert, insert, isAdoptable, isSafelyReplaceableBy, notifyInserted, onReplace, replace, replace, reportPolymorphicSpecialize, reportReplace, toString
Modifier and TypeMethodDescriptionfinal void
accept
(NodeVisitor nodeVisitor) Invokes theNodeVisitor.visit(Node)
method for this node and recursively also for all child nodes.final void
final void
final <T> T
copy()
Creates a shallow copy of this node.deepCopy()
Creates a deep copy of this node.Iterator over the children of this node.getCost()
Deprecated.in 24.1 without replacementReturns properties of this node interesting for debugging and can be overwritten by subclasses to add their own custom properties.Returns a user-readable description of the purpose of the Node, or "" if no description is available.Retrieves the segment of guest language source code that is represented by this Node, if present; otherwise retrieves the segment represented by the nearest AST ancestor that has this information.protected final Lock
getLock()
Returns a lock object that can be used to synchronize modifications to the AST.final Node
The current parent node of this node.final RootNode
Get the root node of the tree a node belongs to.Retrieves the segment of guest language source code that is represented by this Node.final <T extends Node>
Tinsert
(T newChild) final <T extends Node>
T[]insert
(T[] newChildren) boolean
Returnstrue
if this node can be adopted by a parent.final boolean
isSafelyReplaceableBy
(Node newNode) Checks if this node can be replaced by another node: tree structure & type.protected final void
notifyInserted
(Node node) Notifies the framework about the insertion of one or more nodes during execution.protected void
onReplace
(Node newNode, CharSequence reason) Intended to be implemented by subclasses ofNode
to receive a notification when the node is rewritten.final <T extends Node>
Treplace
(T newNode) Replaces this node with another node.final <T extends Node>
Treplace
(T newNode, CharSequence reason) Replaces this node with another node.final void
Notifies the runtime that this node specialized to a polymorphic state.protected final void
reportReplace
(Node oldNode, Node newNode, CharSequence reason) Reports thatoldNode
was replaced withnewNode
, notifying anyreplace observers
and invalidating any compiled call targets.toString()
Converts this node to a textual representation useful for debugging.
-
Method Details
-
execute
Deprecated.useexecute(TruffleStringIterator, Encoding)
instead.Returns the next codepoint in the string.- Since:
- 22.1
-
execute
Returns the next codepoint in the string.- Since:
- 25.0
-
create
Create a newTruffleStringIterator.NextNode
.- Since:
- 22.1
-
getUncached
Get the uncached version ofTruffleStringIterator.NextNode
.- Since:
- 22.1
-
execute(TruffleStringIterator, Encoding)
instead.