0c148ecef4
Highlights * compile one module at a time * use summaries to speed up compiles * use command runner so we can add more commands later * some long needed renames and file organization * various other technical debt has been addressed Lowlights * lost node.js runner/tests (node output format still supported) * possibly lost some closure support/workarounds (format still supported) * needs more end-to-end tests of the new system R=vsm@google.com Review URL: https://codereview.chromium.org/1879373004 .
54 lines
1.8 KiB
JavaScript
54 lines
1.8 KiB
JavaScript
dart_library.library('syncstar_syntax', null, /* Imports */[
|
|
'dart_sdk',
|
|
'expect'
|
|
], function(exports, dart_sdk, expect) {
|
|
'use strict';
|
|
const core = dart_sdk.core;
|
|
const dart = dart_sdk.dart;
|
|
const dartx = dart_sdk.dartx;
|
|
const expect$ = expect.expect;
|
|
const syncstar_syntax = Object.create(null);
|
|
syncstar_syntax.foo = function() {
|
|
return dart.syncStar(function*() {
|
|
yield 1;
|
|
yield* dart.list([2, 3], core.int);
|
|
}, core.int);
|
|
};
|
|
dart.fn(syncstar_syntax.foo, core.Iterable$(core.int), []);
|
|
syncstar_syntax.Class = class Class extends core.Object {
|
|
bar() {
|
|
return dart.syncStar(function*() {
|
|
yield 1;
|
|
yield* dart.list([2, 3], core.int);
|
|
}, core.int);
|
|
}
|
|
static baz() {
|
|
return dart.syncStar(function*() {
|
|
yield 1;
|
|
yield* dart.list([2, 3], core.int);
|
|
}, core.int);
|
|
}
|
|
};
|
|
dart.setSignature(syncstar_syntax.Class, {
|
|
methods: () => ({bar: [core.Iterable$(core.int), []]}),
|
|
statics: () => ({baz: [core.Iterable$(core.int), []]}),
|
|
names: ['baz']
|
|
});
|
|
syncstar_syntax.main = function() {
|
|
function qux() {
|
|
return dart.syncStar(function*() {
|
|
yield 1;
|
|
yield* dart.list([2, 3], core.int);
|
|
}, core.int);
|
|
}
|
|
dart.fn(qux, core.Iterable$(core.int), []);
|
|
expect$.Expect.listEquals(dart.list([1, 2, 3], core.int), syncstar_syntax.foo()[dartx.toList]());
|
|
expect$.Expect.listEquals(dart.list([1, 2, 3], core.int), new syncstar_syntax.Class().bar()[dartx.toList]());
|
|
expect$.Expect.listEquals(dart.list([1, 2, 3], core.int), syncstar_syntax.Class.baz()[dartx.toList]());
|
|
expect$.Expect.listEquals(dart.list([1, 2, 3], core.int), qux()[dartx.toList]());
|
|
};
|
|
dart.fn(syncstar_syntax.main);
|
|
// Exports:
|
|
exports.syncstar_syntax = syncstar_syntax;
|
|
});
|