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

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

Issue 1126713002: fixes #130, accept anything with `iterator` in for loops (Closed) Base URL: git@github.com:dart-lang/dev_compiler.git@master
Patch Set: fix iterator Created 5 years, 8 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/core.js
diff --git a/lib/runtime/dart/core.js b/lib/runtime/dart/core.js
index e8aca91215771c4b2d4173bd71cc5cdc4cc6358c..5895ba35075319340e516ee55146da61d8db23ef 100644
--- a/lib/runtime/dart/core.js
+++ b/lib/runtime/dart/core.js
@@ -1074,6 +1074,7 @@ var core;
return dart.notNull(this.isGetter) || dart.notNull(this.isSetter);
}
}
+ let $iterator = dart.JsSymbol('$iterator');
let $join = dart.JsSymbol('$join');
let Iterable$ = dart.generic(function(E) {
class Iterable extends Object {
@@ -1086,6 +1087,9 @@ var core;
return new (_internal.EmptyIterable$(E))();
return new (exports._GeneratorIterable$(E))(count, generator);
}
+ [dart.JsSymbol.iterator]() {
+ return new dart.JsIterator(this[$iterator]);
+ }
[$join](separator) {
if (separator === void 0)
separator = "";
@@ -1093,15 +1097,6 @@ var core;
buffer.writeAll(this, separator);
return dart.toString(buffer);
}
- [dart.JsSymbol.iterator]() {
- var iterator = this.iterator;
- return {
- next() {
- var done = iterator.moveNext();
- return {done: done, current: done ? void 0 : iterator.current};
- }
- };
- }
}
dart.defineNamedConstructor(Iterable, 'generate');
return Iterable;
@@ -1115,7 +1110,6 @@ var core;
let _end = dart.JsSymbol('_end');
let _start = dart.JsSymbol('_start');
let _generator = dart.JsSymbol('_generator');
- let $iterator = dart.JsSymbol('$iterator');
let $skip = dart.JsSymbol('$skip');
let $take = dart.JsSymbol('$take');
let _GeneratorIterable$ = dart.generic(function(E) {
@@ -3401,10 +3395,10 @@ var core;
exports.identityHashCode = identityHashCode;
exports.int = int;
exports.Invocation = Invocation;
+ exports.$iterator = $iterator;
exports.$join = $join;
exports.Iterable$ = Iterable$;
exports.Iterable = Iterable;
- exports.$iterator = $iterator;
exports.$skip = $skip;
exports.$take = $take;
exports.BidirectionalIterator$ = BidirectionalIterator$;

Powered by Google App Engine
This is Rietveld 408576698