Class RegExpPrototypeBuiltins.JSRegExpReplaceNode
java.lang.Object
com.oracle.truffle.api.nodes.Node
com.oracle.truffle.js.nodes.JavaScriptBaseNode
com.oracle.truffle.js.nodes.JavaScriptNode
com.oracle.truffle.js.nodes.function.AbstractBodyNode
com.oracle.truffle.js.nodes.function.JSBuiltinNode
com.oracle.truffle.js.builtins.RegExpPrototypeBuiltins.RegExpPrototypeSymbolOperation
com.oracle.truffle.js.builtins.RegExpPrototypeBuiltins.JSRegExpReplaceNode
- All Implemented Interfaces:
com.oracle.truffle.api.instrumentation.InstrumentableNode, com.oracle.truffle.api.nodes.NodeInterface, RegExpPrototypeBuiltins.ReplaceStringConsumerTRegex.ParentNode, Cloneable
- Enclosing class:
RegExpPrototypeBuiltins
public abstract static class RegExpPrototypeBuiltins.JSRegExpReplaceNode
extends RegExpPrototypeBuiltins.RegExpPrototypeSymbolOperation
implements RegExpPrototypeBuiltins.ReplaceStringConsumerTRegex.ParentNode
This implements the RegExp.prototype.[@@replace] method.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static classprotected static classNested classes/interfaces inherited from class JSBuiltinNode
JSBuiltinNode.Inlineable, JSBuiltinNode.InlinedNested classes/interfaces inherited from class com.oracle.truffle.api.nodes.Node
com.oracle.truffle.api.nodes.Node.Child, com.oracle.truffle.api.nodes.Node.ChildrenNested classes/interfaces inherited from interface com.oracle.truffle.api.instrumentation.InstrumentableNode
com.oracle.truffle.api.instrumentation.InstrumentableNode.WrapperNode -
Field Summary
Fields inherited from class JSBuiltinNode
ARGUMENTSFields inherited from class JavaScriptNode
INTERMEDIATE_VALUE -
Method Summary
Modifier and TypeMethodDescriptionvoidappend(com.oracle.truffle.api.strings.TruffleStringBuilderUTF16 sb, com.oracle.truffle.api.strings.TruffleString s) voidappend(com.oracle.truffle.api.strings.TruffleStringBuilderUTF16 sb, com.oracle.truffle.api.strings.TruffleString s, int fromIndex, int toIndex) protected ObjectdoNoObject(Object rx, Object searchString, Object replaceValue) com.oracle.truffle.api.profiles.BranchProfileprotected ObjectreplaceDynamic(JSDynamicObject rx, Object searchValue, Object replaceValue, JSToStringNode toString1Node, RegExpPrototypeBuiltins.JSRegExpReplaceNode.ReplaceInternalNode replaceInternal, RegExpPrototypeBuiltins.JSRegExpReplaceNode.ReplaceAccordingToSpecNode replaceAccordingToSpec, com.oracle.truffle.api.profiles.InlinedConditionProfile functionalReplaceProfile) protected ObjectreplaceString(JSDynamicObject rx, Object searchValue, com.oracle.truffle.api.strings.TruffleString replaceValue, JSToStringNode toString1Node, RegExpPrototypeBuiltins.JSRegExpReplaceNode.ReplaceInternalNode replaceInternal, RegExpPrototypeBuiltins.JSRegExpReplaceNode.ReplaceAccordingToSpecNode replaceAccordingToSpec) protected ObjectreplaceStringCached(JSDynamicObject rx, Object searchValue, com.oracle.truffle.api.strings.TruffleString replaceValue, com.oracle.truffle.api.strings.TruffleString cachedReplaceValue, ReplaceStringParser.Token[] cachedParsedReplaceValueWithNamedCG, ReplaceStringParser.Token[] cachedParsedReplaceValueWithoutNamedCG, JSToStringNode toString1Node, com.oracle.truffle.api.strings.TruffleString.EqualNode equalsNode, RegExpPrototypeBuiltins.JSRegExpReplaceNode.ReplaceInternalNode replaceInternal, RegExpPrototypeBuiltins.JSRegExpReplaceNode.ReplaceAccordingToSpecNode replaceAccordingToSpec) Methods inherited from class RegExpPrototypeBuiltins.RegExpPrototypeSymbolOperation
advanceLastIndexAfterEmptyMatch, getArraySpeciesConstructorNode, getLastIndex, read, regexExecIntl, setLastIndex, setLastIndex, writeMethods inherited from class JSBuiltinNode
copyUninitialized, countsTowardsStackTraceLimit, createBuiltin, getArguments, getBuiltin, getContext, getNodeObject, hasTag, isCallerSensitive, isInlineable, isSplitImmediately, tryCreateInlinedMethods inherited from class AbstractBodyNode
executeBoolean, executeDouble, executeInt, executeVoidMethods inherited from class JavaScriptNode
addCallTag, addExpressionTag, addRootBodyTag, addStatementTag, cloneUninitialized, cloneUninitialized, copy, createWrapper, execute, expressionToString, findBlockScopeNode, getSourceSection, hasSourceSection, isInstrumentable, isResultAlwaysOfType, onReplace, setSourceSection, setSourceSection, toString, transferSourceSection, transferSourceSectionAddExpressionTag, transferSourceSectionAndTagsMethods inherited from class JavaScriptBaseNode
getJSContext, getLanguage, getLanguageOptions, getRealm, hasOverloadedOperators, reportLoopCount, reportLoopCountMethods inherited from class com.oracle.truffle.api.nodes.Node
accept, adoptChildren, atomic, atomic, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, insert, insert, isAdoptable, isSafelyReplaceableBy, notifyInserted, replace, replace, reportPolymorphicSpecialize, reportReplaceMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.oracle.truffle.api.instrumentation.InstrumentableNode
createProbe, findNearestNodeAt, findNearestNodeAt, findProbe, materializeInstrumentableNodes
-
Method Details
-
replaceStringCached
protected Object replaceStringCached(JSDynamicObject rx, Object searchValue, com.oracle.truffle.api.strings.TruffleString replaceValue, com.oracle.truffle.api.strings.TruffleString cachedReplaceValue, ReplaceStringParser.Token[] cachedParsedReplaceValueWithNamedCG, ReplaceStringParser.Token[] cachedParsedReplaceValueWithoutNamedCG, JSToStringNode toString1Node, com.oracle.truffle.api.strings.TruffleString.EqualNode equalsNode, RegExpPrototypeBuiltins.JSRegExpReplaceNode.ReplaceInternalNode replaceInternal, RegExpPrototypeBuiltins.JSRegExpReplaceNode.ReplaceAccordingToSpecNode replaceAccordingToSpec) -
replaceString
protected Object replaceString(JSDynamicObject rx, Object searchValue, com.oracle.truffle.api.strings.TruffleString replaceValue, JSToStringNode toString1Node, RegExpPrototypeBuiltins.JSRegExpReplaceNode.ReplaceInternalNode replaceInternal, RegExpPrototypeBuiltins.JSRegExpReplaceNode.ReplaceAccordingToSpecNode replaceAccordingToSpec) -
replaceDynamic
protected Object replaceDynamic(JSDynamicObject rx, Object searchValue, Object replaceValue, JSToStringNode toString1Node, RegExpPrototypeBuiltins.JSRegExpReplaceNode.ReplaceInternalNode replaceInternal, RegExpPrototypeBuiltins.JSRegExpReplaceNode.ReplaceAccordingToSpecNode replaceAccordingToSpec, com.oracle.truffle.api.profiles.InlinedConditionProfile functionalReplaceProfile) -
doNoObject
-
append
public void append(com.oracle.truffle.api.strings.TruffleStringBuilderUTF16 sb, com.oracle.truffle.api.strings.TruffleString s) - Specified by:
appendin interfaceRegExpPrototypeBuiltins.ReplaceStringConsumerTRegex.ParentNode
-
append
public void append(com.oracle.truffle.api.strings.TruffleStringBuilderUTF16 sb, com.oracle.truffle.api.strings.TruffleString s, int fromIndex, int toIndex) - Specified by:
appendin interfaceRegExpPrototypeBuiltins.ReplaceStringConsumerTRegex.ParentNode
-
getInvalidGroupNumberProfile
public com.oracle.truffle.api.profiles.BranchProfile getInvalidGroupNumberProfile()- Specified by:
getInvalidGroupNumberProfilein interfaceRegExpPrototypeBuiltins.ReplaceStringConsumerTRegex.ParentNode
-
getGetStartNode
- Specified by:
getGetStartNodein interfaceRegExpPrototypeBuiltins.ReplaceStringConsumerTRegex.ParentNode
-
getGetEndNode
- Specified by:
getGetEndNodein interfaceRegExpPrototypeBuiltins.ReplaceStringConsumerTRegex.ParentNode
-