| Index: src/regexp.js
|
| diff --git a/src/regexp.js b/src/regexp.js
|
| index da1883f3a427ec0edbdfd45af99e219071215b79..bb07f178ef958ad9f49d8184231ed400a629fe58 100644
|
| --- a/src/regexp.js
|
| +++ b/src/regexp.js
|
| @@ -132,21 +132,13 @@ function BuildResultFromMatchInfo(lastMatchInfo, s) {
|
| var start = lastMatchInfo[CAPTURE0];
|
| var end = lastMatchInfo[CAPTURE1];
|
| var result = %_RegExpConstructResult(numResults, start, s);
|
| - if (start + 1 == end) {
|
| - result[0] = %_StringCharAt(s, start);
|
| - } else {
|
| - result[0] = %_SubString(s, start, end);
|
| - }
|
| + result[0] = %_SubString(s, start, end);
|
| var j = REGEXP_FIRST_CAPTURE + 2;
|
| for (var i = 1; i < numResults; i++) {
|
| start = lastMatchInfo[j++];
|
| if (start != -1) {
|
| end = lastMatchInfo[j];
|
| - if (start + 1 == end) {
|
| - result[i] = %_StringCharAt(s, start);
|
| - } else {
|
| - result[i] = %_SubString(s, start, end);
|
| - }
|
| + result[i] = %_SubString(s, start, end);
|
| }
|
| j++;
|
| }
|
| @@ -270,7 +262,7 @@ function TrimRegExp(regexp) {
|
| if (!%_ObjectEquals(regexp_key, regexp)) {
|
| regexp_key = regexp;
|
| regexp_val =
|
| - new $RegExp(SubString(regexp.source, 2, regexp.source.length),
|
| + new $RegExp(%_SubString(regexp.source, 2, regexp.source.length),
|
| (regexp.ignoreCase ? regexp.multiline ? "im" : "i"
|
| : regexp.multiline ? "m" : ""));
|
| }
|
| @@ -300,9 +292,9 @@ function RegExpGetLastMatch() {
|
| return OVERRIDE_MATCH(lastMatchInfoOverride);
|
| }
|
| var regExpSubject = LAST_SUBJECT(lastMatchInfo);
|
| - return SubString(regExpSubject,
|
| - lastMatchInfo[CAPTURE0],
|
| - lastMatchInfo[CAPTURE1]);
|
| + return %_SubString(regExpSubject,
|
| + lastMatchInfo[CAPTURE0],
|
| + lastMatchInfo[CAPTURE1]);
|
| }
|
|
|
|
|
| @@ -321,7 +313,7 @@ function RegExpGetLastParen() {
|
| var start = lastMatchInfo[CAPTURE(length - 2)];
|
| var end = lastMatchInfo[CAPTURE(length - 1)];
|
| if (start != -1 && end != -1) {
|
| - return SubString(regExpSubject, start, end);
|
| + return %_SubString(regExpSubject, start, end);
|
| }
|
| return "";
|
| }
|
| @@ -338,7 +330,7 @@ function RegExpGetLeftContext() {
|
| start_index = OVERRIDE_POS(override);
|
| subject = OVERRIDE_SUBJECT(override);
|
| }
|
| - return SubString(subject, 0, start_index);
|
| + return %_SubString(subject, 0, start_index);
|
| }
|
|
|
|
|
| @@ -354,7 +346,7 @@ function RegExpGetRightContext() {
|
| var match = OVERRIDE_MATCH(override);
|
| start_index = OVERRIDE_POS(override) + match.length;
|
| }
|
| - return SubString(subject, start_index, subject.length);
|
| + return %_SubString(subject, start_index, subject.length);
|
| }
|
|
|
|
|
| @@ -374,7 +366,7 @@ function RegExpMakeCaptureGetter(n) {
|
| var matchStart = lastMatchInfo[CAPTURE(index)];
|
| var matchEnd = lastMatchInfo[CAPTURE(index + 1)];
|
| if (matchStart == -1 || matchEnd == -1) return '';
|
| - return SubString(LAST_SUBJECT(lastMatchInfo), matchStart, matchEnd);
|
| + return %_SubString(LAST_SUBJECT(lastMatchInfo), matchStart, matchEnd);
|
| };
|
| }
|
|
|
|
|