Package com.oracle.truffle.api.strings
Class MutableTruffleString.ForceEncodingNode
java.lang.Object
com.oracle.truffle.api.nodes.Node
com.oracle.truffle.api.strings.MutableTruffleString.ForceEncodingNode
- All Implemented Interfaces:
NodeInterface
,Cloneable
- Enclosing class:
MutableTruffleString
Node to forcibly assign any encoding to a string. See
execute(AbstractTruffleString, TruffleString.Encoding, TruffleString.Encoding)
for
details.- Since:
- 22.1
-
Nested Class Summary
Nested classes/interfaces inherited from class com.oracle.truffle.api.nodes.Node
Node.Child, Node.Children
-
Method Summary
Modifier and TypeMethodDescriptioncreate()
Create a newMutableTruffleString.ForceEncodingNode
.abstract MutableTruffleString
execute
(AbstractTruffleString a, TruffleString.Encoding expectedEncoding, TruffleString.Encoding targetEncoding) Returns a version of stringa
assigned to the given encoding.Get the uncached version ofMutableTruffleString.ForceEncodingNode
.Methods inherited from class com.oracle.truffle.api.nodes.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, toString
-
Method Details
-
execute
public abstract MutableTruffleString execute(AbstractTruffleString a, TruffleString.Encoding expectedEncoding, TruffleString.Encoding targetEncoding) Returns a version of stringa
assigned to the given encoding. If the string is already in the given encoding, it is returned. Otherwise, a new string containing the same (copied) bytes but assigned to the new encoding is returned. This node does not transcode the string's contents in any way, it is the "encoding-equivalent" to a C-style reinterpret-cast.- Since:
- 22.1
-
create
Create a newMutableTruffleString.ForceEncodingNode
.- Since:
- 22.1
-
getUncached
Get the uncached version ofMutableTruffleString.ForceEncodingNode
.- Since:
- 22.1
-