Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(543)

Unified Diff: lib/runtime/dart/_js_helper.js

Issue 1178523004: fixes #215, removes special case for length (Closed) Base URL: git@github.com:dart-lang/dev_compiler.git@master
Patch Set: Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: lib/runtime/dart/_js_helper.js
diff --git a/lib/runtime/dart/_js_helper.js b/lib/runtime/dart/_js_helper.js
index 88220b5a26f6c5c979f9e5f1ea1663c659ac0136..dff92663168aae01c9411ad5b0d6f4794538f21e 100644
--- a/lib/runtime/dart/_js_helper.js
+++ b/lib/runtime/dart/_js_helper.js
@@ -148,8 +148,8 @@ dart.library('dart/_js_helper', null, /* Imports */[
start = 0;
checkString(string);
checkInt(start);
- if (dart.notNull(start) < 0 || dart.notNull(start) > dart.notNull(string.length)) {
- throw new core.RangeError.range(start, 0, string.length);
+ if (dart.notNull(start) < 0 || dart.notNull(start) > dart.notNull(string[dartx.length])) {
+ throw new core.RangeError.range(start, 0, string[dartx.length]);
}
return new _AllMatchesIterable(this, string, start);
}
@@ -167,16 +167,16 @@ dart.library('dart/_js_helper', null, /* Imports */[
let match = dart.as(regexp.exec(string), core.List);
if (match == null)
return null;
- if (match[dartx.get](dart.notNull(match.length) - 1) != null)
+ if (match[dartx.get](dart.notNull(match[dartx.length]) - 1) != null)
return null;
- match.length = dart.notNull(match.length) - 1;
+ match[dartx.length] = dart.notNull(match[dartx.length]) - 1;
return new _MatchImplementation(this, dart.as(match, core.List$(core.String)));
}
matchAsPrefix(string, start) {
if (start === void 0)
start = 0;
- if (dart.notNull(start) < 0 || dart.notNull(start) > dart.notNull(string.length)) {
- throw new core.RangeError.range(start, 0, string.length);
+ if (dart.notNull(start) < 0 || dart.notNull(start) > dart.notNull(string[dartx.length])) {
+ throw new core.RangeError.range(start, 0, string[dartx.length]);
}
return this[_execAnchored](string, start);
}
@@ -218,7 +218,7 @@ dart.library('dart/_js_helper', null, /* Imports */[
return this[_match].index;
}
get end() {
- return dart.notNull(this.start) + dart.notNull(this[_match][dartx.get](0).length);
+ return dart.notNull(this.start) + dart.notNull(this[_match][dartx.get](0)[dartx.length]);
}
group(index) {
return this[_match][dartx.get](index);
@@ -227,7 +227,7 @@ dart.library('dart/_js_helper', null, /* Imports */[
return this.group(index);
}
get groupCount() {
- return dart.notNull(this[_match].length) - 1;
+ return dart.notNull(this[_match][dartx.length]) - 1;
}
groups(groups) {
let out = dart.list([], core.String);
@@ -280,7 +280,7 @@ dart.library('dart/_js_helper', null, /* Imports */[
moveNext() {
if (this[_string] == null)
return false;
- if (dart.notNull(this[_nextIndex]) <= dart.notNull(this[_string].length)) {
+ if (dart.notNull(this[_nextIndex]) <= dart.notNull(this[_string][dartx.length])) {
let match = this[_regExp][_execGlobal](this[_string], this[_nextIndex]);
if (match != null) {
this[_current] = match;
@@ -313,7 +313,7 @@ dart.library('dart/_js_helper', null, /* Imports */[
this.pattern = pattern;
}
get end() {
- return dart.notNull(this.start) + dart.notNull(this.pattern.length);
+ return dart.notNull(this.start) + dart.notNull(this.pattern[dartx.length]);
}
get(g) {
return this.group(g);
@@ -346,8 +346,8 @@ dart.library('dart/_js_helper', null, /* Imports */[
});
function allMatchesInStringUnchecked(needle, haystack, startIndex) {
let result = core.List$(core.Match).new();
- let length = haystack.length;
- let patternLength = needle.length;
+ let length = haystack[dartx.length];
+ let patternLength = needle[dartx.length];
while (true) {
let position = haystack[dartx.indexOf](needle, startIndex);
if (position == -1) {
@@ -599,7 +599,7 @@ dart.library('dart/_js_helper', null, /* Imports */[
maxCharCode = 97 + dart.notNull(radix) - 10 - 1;
}
let digitsPart = dart.as(dart.dindex(match, digitsIndex), core.String);
- for (let i = 0; dart.notNull(i) < dart.notNull(digitsPart.length); i = dart.notNull(i) + 1) {
+ for (let i = 0; dart.notNull(i) < dart.notNull(digitsPart[dartx.length]); i = dart.notNull(i) + 1) {
let characterCode = dart.notNull(digitsPart[dartx.codeUnitAt](0)) | 32;
if (dart.notNull(digitsPart[dartx.codeUnitAt](i)) > dart.notNull(maxCharCode)) {
return handleError(source);
@@ -672,7 +672,7 @@ dart.library('dart/_js_helper', null, /* Imports */[
static _fromCharCodeApply(array) {
let result = "";
let kMaxApply = 500;
- let end = array.length;
+ let end = array[dartx.length];
for (let i = 0; dart.notNull(i) < dart.notNull(end); i = dart.notNull(i) + dart.notNull(kMaxApply)) {
let subarray = null;
if (dart.notNull(end) <= dart.notNull(kMaxApply)) {

Powered by Google App Engine
This is Rietveld 408576698