Remove regenerator finished generator error
This commit is contained in:
@@ -87,9 +87,7 @@ function Generator(innerFn, outerFn, self, tryList) {
|
||||
throw new Error("Generator is already running");
|
||||
}
|
||||
|
||||
if (state === GenStateCompleted) {
|
||||
throw new Error("Generator has already finished");
|
||||
}
|
||||
var alreadyFinished = state === GenStateCompleted;
|
||||
|
||||
while (true) {
|
||||
var delegate = context.delegate;
|
||||
@@ -162,7 +160,8 @@ function Generator(innerFn, outerFn, self, tryList) {
|
||||
state = GenStateExecuting;
|
||||
|
||||
try {
|
||||
var value = innerFn.call(self, context);
|
||||
var value;
|
||||
if (!alreadyFinished) value = innerFn.call(self, context);
|
||||
|
||||
// If an exception is thrown from innerFn, we leave state ===
|
||||
// GenStateExecuting and loop back for another invocation.
|
||||
@@ -267,6 +266,10 @@ runtime.keys = function (object) {
|
||||
};
|
||||
};
|
||||
|
||||
function isIn(key, obj) {
|
||||
return typeof obj !== "string" && typeof obj !== "number" && key in obj;
|
||||
}
|
||||
|
||||
function values(iterable) {
|
||||
var iterator = iterable;
|
||||
if (iteratorSymbol in iterable) {
|
||||
|
||||
Reference in New Issue
Block a user