Remove regenerator finished generator error

This commit is contained in:
Sebastian McKenzie
2014-12-10 21:10:59 +11:00
parent e6da342e8b
commit 187f7ba01e
3 changed files with 11 additions and 24 deletions

View File

@@ -20,14 +20,6 @@ exports.raise = function raise(argument) {
};
exports.assertAlreadyFinished = function assertAlreadyFinished(generator) {
try {
generator.next();
assert.ok(false, "should have thrown an exception");
} catch (err) {
assert.ok(err instanceof Error);
assert.strictEqual(
err.message,
"Generator has already finished"
);
}
var item = generator.next();
assert.ok(item.done && item.value === undefined, "not finished");
};

View File

@@ -15,18 +15,10 @@ function *gen(n) {
function decrement(x) {
return x - 1;
}
} else {
// The behavior of function declarations nested inside conditional
// blocks is notoriously underspecified, and in V8 it appears the
// halve function is still defined when we take this branch, so
// "undefine" it for consistency with regenerator semantics.
halve = void 0;
}
yield typeof halve;
yield increment(increment(n));
}
genHelpers.check(gen(3), [4, 1, "function", 5]);
genHelpers.check(gen(4), [5, "undefined", 6]);
genHelpers.check(gen(3), [4, 1, 5]);
genHelpers.check(gen(4), [5, 6]);