public abstract static class StringPrototypeBuiltins.JSStringSplitNode extends StringPrototypeBuiltins.JSStringOperationWithRegExpArgument
JSBuiltinNode.Inlineable, JSBuiltinNode.InlinedregExpIgnoreLastIndexNode, regExpNodeARGUMENTSINTERMEDIATE_VALUE| Constructor and Description |
|---|
JSStringSplitNode(JSContext context,
JSBuiltin builtin) |
| Modifier and Type | Method and Description |
|---|---|
protected boolean |
isES6OrNewer() |
protected boolean |
isFastPath(Object thisObj,
Object separator,
Object limit) |
protected void |
requireObjectCoercible(Object target) |
protected Object |
splitES5(Object thisObj,
Object separator,
Object limitObj,
com.oracle.truffle.api.profiles.InlinedBranchProfile isUndefinedBranch,
com.oracle.truffle.api.profiles.InlinedBranchProfile isRegexpBranch,
com.oracle.truffle.api.profiles.InlinedBranchProfile isStringBranch,
com.oracle.truffle.js.builtins.StringPrototypeBuiltins.JSStringSplitNode.StringSplitter stringSplitter,
com.oracle.truffle.js.builtins.StringPrototypeBuiltins.JSStringSplitNode.RegExpSplitter regexpSplitter,
com.oracle.truffle.api.profiles.InlinedConditionProfile zeroLimit,
TRegexUtil.InteropReadIntMemberNode readGroupCount) |
protected Object |
splitES6Generic(Object thisObj,
Object separator,
Object limit,
com.oracle.truffle.js.builtins.StringPrototypeBuiltins.JSStringSplitNode.StringSplitter stringSplitter,
com.oracle.truffle.api.profiles.InlinedConditionProfile zeroLimit,
com.oracle.truffle.api.profiles.InlinedConditionProfile isSpecialProfile,
com.oracle.truffle.api.profiles.InlinedConditionProfile callSpecialProfile) |
protected Object |
splitES6StrStrUndefined(com.oracle.truffle.api.strings.TruffleString thisStr,
com.oracle.truffle.api.strings.TruffleString sepStr,
JSDynamicObject limit,
com.oracle.truffle.js.builtins.StringPrototypeBuiltins.JSStringSplitNode.StringSplitter stringSplitter,
com.oracle.truffle.api.profiles.InlinedConditionProfile zeroLimit) |
protected int |
toIntegerAsInt(Object target) |
protected com.oracle.truffle.api.strings.TruffleString |
toString(Object target) |
protected static int |
within(int value,
int min,
int max) |
protected static int |
withinNumber(Number value,
int min,
int max) |
call, getMethod, getRegExpIgnoreLastIndexNode, getRegExpNode, invoke, matchIgnoreLastIndexcopyUninitialized, countsTowardsStackTraceLimit, createBuiltin, getArguments, getBuiltin, getContext, getNodeObject, hasTag, isCallerSensitive, isInlineable, isSplitImmediately, tryCreateInlinedaddCallTag, addExpressionTag, addRootBodyTag, addStatementTag, cloneUninitialized, cloneUninitialized, copy, createWrapper, execute, executeBoolean, executeDouble, executeInt, executeLong, executeVoid, expressionToString, findBlockScopeNode, getSourceSection, hasSourceSection, isInstrumentable, isResultAlwaysOfType, onReplace, removeSourceSection, setSourceSection, setSourceSection, toString, transferSourceSection, transferSourceSectionAddExpressionTag, transferSourceSectionAndTagsgetLanguage, getRealm, hasOverloadedOperatorsaccept, adoptChildren, atomic, atomic, deepCopy, getChildren, getCost, getDebugProperties, getDescription, getEncapsulatingSourceSection, getLock, getParent, getRootNode, insert, insert, isAdoptable, isSafelyReplaceableBy, notifyInserted, replace, replace, reportPolymorphicSpecializeprotected final boolean isES6OrNewer()
protected Object splitES5(Object thisObj, Object separator, Object limitObj, com.oracle.truffle.api.profiles.InlinedBranchProfile isUndefinedBranch, com.oracle.truffle.api.profiles.InlinedBranchProfile isRegexpBranch, com.oracle.truffle.api.profiles.InlinedBranchProfile isStringBranch, com.oracle.truffle.js.builtins.StringPrototypeBuiltins.JSStringSplitNode.StringSplitter stringSplitter, com.oracle.truffle.js.builtins.StringPrototypeBuiltins.JSStringSplitNode.RegExpSplitter regexpSplitter, com.oracle.truffle.api.profiles.InlinedConditionProfile zeroLimit, TRegexUtil.InteropReadIntMemberNode readGroupCount)
protected Object splitES6StrStrUndefined(com.oracle.truffle.api.strings.TruffleString thisStr, com.oracle.truffle.api.strings.TruffleString sepStr, JSDynamicObject limit, com.oracle.truffle.js.builtins.StringPrototypeBuiltins.JSStringSplitNode.StringSplitter stringSplitter, com.oracle.truffle.api.profiles.InlinedConditionProfile zeroLimit)
protected Object splitES6Generic(Object thisObj, Object separator, Object limit, com.oracle.truffle.js.builtins.StringPrototypeBuiltins.JSStringSplitNode.StringSplitter stringSplitter, com.oracle.truffle.api.profiles.InlinedConditionProfile zeroLimit, com.oracle.truffle.api.profiles.InlinedConditionProfile isSpecialProfile, com.oracle.truffle.api.profiles.InlinedConditionProfile callSpecialProfile)
protected static int within(int value,
int min,
int max)
protected static int withinNumber(Number value, int min, int max)
protected final void requireObjectCoercible(Object target)
protected com.oracle.truffle.api.strings.TruffleString toString(Object target)
protected int toIntegerAsInt(Object target)