Class StringPrototypeBuiltins.JSStringReplaceES5Node
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.StringPrototypeBuiltins.JSStringOperationWithRegExpArgument
com.oracle.truffle.js.builtins.StringPrototypeBuiltins.JSStringReplaceBaseNode
com.oracle.truffle.js.builtins.StringPrototypeBuiltins.JSStringReplaceES5Node
- All Implemented Interfaces:
com.oracle.truffle.api.instrumentation.InstrumentableNode,com.oracle.truffle.api.nodes.NodeInterface,Cloneable
- Enclosing class:
StringPrototypeBuiltins
public abstract static class StringPrototypeBuiltins.JSStringReplaceES5Node
extends StringPrototypeBuiltins.JSStringReplaceBaseNode
Implementation of the String.prototype.replace() method as specified by ECMAScript 5.1 in
15.5.4.11.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected static final classprotected static final classNested classes/interfaces inherited from class com.oracle.truffle.js.builtins.StringPrototypeBuiltins.JSStringReplaceBaseNode
StringPrototypeBuiltins.JSStringReplaceBaseNode.ReplaceStringConsumerNested classes/interfaces inherited from class com.oracle.truffle.js.nodes.function.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 com.oracle.truffle.js.builtins.StringPrototypeBuiltins.JSStringReplaceBaseNode
appendStringNode, appendSubStringNode, builderToStringNode, functionalReplaceProfile, functionReplaceCallNode, replaceNecessaryProfileFields inherited from class com.oracle.truffle.js.builtins.StringPrototypeBuiltins.JSStringOperationWithRegExpArgument
regExpIgnoreLastIndexNode, regExpNodeFields inherited from class com.oracle.truffle.js.nodes.function.JSBuiltinNode
ARGUMENTSFields inherited from class com.oracle.truffle.js.nodes.JavaScriptNode
INTERMEDIATE_VALUE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected final Objectmatch(JSRegExpObject regExp, com.oracle.truffle.api.strings.TruffleString input) protected Objectreplace(Object thisObj, Object searchValue, Object replaceValue, com.oracle.truffle.api.nodes.Node node, JSToStringNode toString2Node, JSToStringNode toString3Node, com.oracle.truffle.api.profiles.InlinedCountingConditionProfile ifIsMatch, com.oracle.truffle.api.profiles.InlinedConditionProfile isRegExp, com.oracle.truffle.api.profiles.InlinedCountingConditionProfile isFnRepl, TRegexUtil.InteropReadIntMemberNode readGroupCount, TRegexUtil.InteropReadBooleanMemberNode readIsMatch, TRegexUtil.TRegexCompiledRegexSingleFlagAccessorNode getGlobalFlag) protected final voidrequireObjectCoercible(Object target) protected inttoIntegerAsInt(Object target) protected com.oracle.truffle.api.strings.TruffleStringprotected static intwithin(int value, int min, int max) protected static intwithinNumber(Number value, int min, int max) Methods inherited from class com.oracle.truffle.js.builtins.StringPrototypeBuiltins.JSStringReplaceBaseNode
appendSubstitution, functionReplaceCall, parseReplaceValueMethods inherited from class com.oracle.truffle.js.builtins.StringPrototypeBuiltins.JSStringOperationWithRegExpArgument
call, getMethod, getRegExpIgnoreLastIndexNode, getRegExpNode, invoke, matchIgnoreLastIndexMethods inherited from class com.oracle.truffle.js.nodes.function.JSBuiltinNode
copyUninitialized, countsTowardsStackTraceLimit, createBuiltin, getArguments, getBuiltin, getContext, getNodeObject, hasTag, isCallerSensitive, isInlineable, isSplitImmediately, tryCreateInlinedMethods inherited from class com.oracle.truffle.js.nodes.function.AbstractBodyNode
executeBoolean, executeDouble, executeInt, executeVoidMethods inherited from class com.oracle.truffle.js.nodes.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 com.oracle.truffle.js.nodes.JavaScriptBaseNode
getJSContext, getLanguage, getLanguageOptions, getRealm, hasOverloadedOperatorsMethods 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, reportPolymorphicSpecializeMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.oracle.truffle.api.instrumentation.InstrumentableNode
findNearestNodeAt, findNearestNodeAt, materializeInstrumentableNodes
-
Constructor Details
-
JSStringReplaceES5Node
-
-
Method Details
-
replace
protected Object replace(Object thisObj, Object searchValue, Object replaceValue, com.oracle.truffle.api.nodes.Node node, JSToStringNode toString2Node, JSToStringNode toString3Node, com.oracle.truffle.api.profiles.InlinedCountingConditionProfile ifIsMatch, com.oracle.truffle.api.profiles.InlinedConditionProfile isRegExp, com.oracle.truffle.api.profiles.InlinedCountingConditionProfile isFnRepl, TRegexUtil.InteropReadIntMemberNode readGroupCount, TRegexUtil.InteropReadBooleanMemberNode readIsMatch, TRegexUtil.TRegexCompiledRegexSingleFlagAccessorNode getGlobalFlag) -
match
protected final Object match(JSRegExpObject regExp, com.oracle.truffle.api.strings.TruffleString input) -
within
protected static int within(int value, int min, int max) -
withinNumber
-
requireObjectCoercible
-
toString
-
toIntegerAsInt
-