Name Description Size
await-as-binding-identifier-escaped.js --- description: await is a reserved keyword within generator function bodies and may not be used as a binding identifier. (Static async generator private method as a ClassExpression element) esid: prod-AsyncGeneratorMethod features: [async-iteration, class-static-methods-private] flags: [generated] negative: phase: parse type: SyntaxError info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * # PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } BindingIdentifier : Identifier It is a Syntax Error if this production has a [Await] parameter and StringValue of Identifier is "await". --- 1126
await-as-binding-identifier.js --- description: await is a reserved keyword within generator function bodies and may not be used as a binding identifier. (Static async generator private method as a ClassExpression element) esid: prod-AsyncGeneratorMethod features: [async-iteration, class-static-methods-private] flags: [generated] negative: phase: parse type: SyntaxError info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * # PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } BindingIdentifier : Identifier It is a Syntax Error if this production has a [Await] parameter and StringValue of Identifier is "await". --- 1113
await-as-identifier-reference-escaped.js --- description: await is a reserved keyword within generator function bodies and may not be used as an identifier reference. (Static async generator private method as a ClassExpression element) esid: prod-AsyncGeneratorMethod features: [async-iteration, class-static-methods-private] flags: [generated] negative: phase: parse type: SyntaxError info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * # PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } IdentifierReference : Identifier It is a Syntax Error if this production has a [Await] parameter and StringValue of Identifier is "await". --- 1134
await-as-identifier-reference.js --- description: await is a reserved keyword within generator function bodies and may not be used as an identifier reference. (Static async generator private method as a ClassExpression element) esid: prod-AsyncGeneratorMethod features: [async-iteration, class-static-methods-private] flags: [generated] negative: phase: parse type: SyntaxError info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * # PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } IdentifierReference : Identifier It is a Syntax Error if this production has a [Await] parameter and StringValue of Identifier is "await". --- 1121
await-as-label-identifier-escaped.js --- description: await is a reserved keyword within generator function bodies and may not be used as a label identifier. (Static async generator private method as a ClassExpression element) esid: prod-AsyncGeneratorMethod features: [async-iteration, class-static-methods-private] flags: [generated] negative: phase: parse type: SyntaxError info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * # PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } LabelIdentifier : Identifier It is a Syntax Error if this production has a [Await] parameter and StringValue of Identifier is "await". --- 1118
await-as-label-identifier.js --- description: await is a reserved keyword within generator function bodies and may not be used as a label identifier. (Static async generator private method as a ClassExpression element) esid: prod-AsyncGeneratorMethod features: [async-iteration, class-static-methods-private] flags: [generated] negative: phase: parse type: SyntaxError info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * # PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } LabelIdentifier : Identifier It is a Syntax Error if this production has a [Await] parameter and StringValue of Identifier is "await". --- 1105
browser.js 0
shell.js 0
yield-as-binding-identifier-escaped.js --- description: yield is a reserved keyword within generator function bodies and may not be used as a binding identifier. (Static async generator private method as a ClassExpression element) esid: prod-AsyncGeneratorMethod features: [async-iteration, class-static-methods-private] flags: [generated] negative: phase: parse type: SyntaxError info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * # PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } BindingIdentifier : Identifier It is a Syntax Error if this production has a [Yield] parameter and StringValue of Identifier is "yield". --- 1126
yield-as-binding-identifier.js --- description: yield is a reserved keyword within generator function bodies and may not be used as a binding identifier. (Static async generator private method as a ClassExpression element) esid: prod-AsyncGeneratorMethod features: [async-iteration, class-static-methods-private] flags: [generated] negative: phase: parse type: SyntaxError info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * # PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } BindingIdentifier : Identifier It is a Syntax Error if this production has a [Yield] parameter and StringValue of Identifier is "yield". --- 1113
yield-as-identifier-reference-escaped.js --- description: yield is a reserved keyword within generator function bodies and may not be used as an identifier reference. (Static async generator private method as a ClassExpression element) esid: prod-AsyncGeneratorMethod features: [async-iteration, class-static-methods-private] flags: [generated] negative: phase: parse type: SyntaxError info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * # PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } IdentifierReference : Identifier It is a Syntax Error if this production has a [Yield] parameter and StringValue of Identifier is "yield". --- 1134
yield-as-identifier-reference.js --- description: yield is a reserved keyword within generator function bodies and may not be used as an identifier reference. (Static async generator private method as a ClassExpression element) esid: prod-AsyncGeneratorMethod features: [async-iteration, class-static-methods-private] flags: [generated] negative: phase: parse type: SyntaxError info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * # PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } IdentifierReference : Identifier It is a Syntax Error if this production has a [Yield] parameter and StringValue of Identifier is "yield". --- 1121
yield-as-label-identifier-escaped.js --- description: yield is a reserved keyword within generator function bodies and may not be used as a label identifier. (Static async generator private method as a ClassExpression element) esid: prod-AsyncGeneratorMethod features: [async-iteration, class-static-methods-private] flags: [generated] negative: phase: parse type: SyntaxError info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * # PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } LabelIdentifier : Identifier It is a Syntax Error if this production has a [Yield] parameter and StringValue of Identifier is "yield". --- 1118
yield-as-label-identifier.js --- description: yield is a reserved keyword within generator function bodies and may not be used as a label identifier. (Static async generator private method as a ClassExpression element) esid: prod-AsyncGeneratorMethod features: [async-iteration, class-static-methods-private] flags: [generated] negative: phase: parse type: SyntaxError info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * # PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } LabelIdentifier : Identifier It is a Syntax Error if this production has a [Yield] parameter and StringValue of Identifier is "yield". --- 1105
yield-identifier-spread-strict-strict.js --- description: It's an early error if the AssignmentExpression is a function body with yield as an identifier in strict mode. (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [object-spread, async-iteration, class-static-methods-private] flags: [generated, onlyStrict] negative: phase: parse type: SyntaxError info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } Spread Properties PropertyDefinition[Yield]: (...) ...AssignmentExpression[In, ?Yield] --- 2064
yield-identifier-strict-strict.js --- description: It's an early error if the generator body has another function body with yield as an identifier in strict mode. (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [async-iteration, class-static-methods-private] flags: [generated, onlyStrict] negative: phase: parse type: SyntaxError info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } --- 1884
yield-promise-reject-next-catch.js --- description: yield Promise.reject(value) is treated as throw value (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } --- 2185
yield-promise-reject-next-for-await-of-async-iterator.js --- description: yield * [Promise.reject(value)] is treated as throw value (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } --- 2316
yield-promise-reject-next-for-await-of-sync-iterator.js --- description: yield Promise.reject(value) in for-await-of is treated as throw value (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } --- 2301
yield-promise-reject-next-yield-star-async-iterator.js --- description: yield * (async iterator) is treated as throw value (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } --- 2265
yield-promise-reject-next-yield-star-sync-iterator.js --- description: yield * (async iterator) is treated as throw value (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } --- 2229
yield-promise-reject-next.js --- description: yield Promise.reject(value) is treated as throw value (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } --- 2186
yield-spread-arr-multiple.js --- description: Use yield value in a array spread position (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [async-iteration, class-static-methods-private] flags: [generated, async] includes: [compareArray.js] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } Array Initializer SpreadElement[Yield, Await]: ...AssignmentExpression[+In, ?Yield, ?Await] --- 2094
yield-spread-arr-single.js --- description: Use yield value in a array spread position (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } Array Initializer SpreadElement[Yield, Await]: ...AssignmentExpression[+In, ?Yield, ?Await] --- 2186
yield-spread-obj.js --- description: Use yield value in a object spread position (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [object-spread, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } Spread Properties PropertyDefinition[Yield]: (...) ...AssignmentExpression[In, ?Yield] --- 2137
yield-star-async-next.js --- description: Execution order for yield* with async iterator and next() (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, async-iteration, Symbol.asyncIterator, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } --- 8149
yield-star-async-return.js --- description: execution order for yield* with async iterator and return() (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [async-iteration, Symbol.asyncIterator, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 6. Repeat ... c. Else, i. Assert: received.[[Type]] is return. ii. Let return be ? GetMethod(iterator, "return"). iii. If return is undefined, return Completion(received). iv. Let innerReturnResult be ? Call(return, iterator, « received.[[Value]] »). v. If generatorKind is async, then set innerReturnResult to ? Await(innerReturnResult). ... vii. Let done be ? IteratorComplete(innerReturnResult). viii. If done is true, then 1. Let value be ? IteratorValue(innerReturnResult). 2. If generatorKind is async, then set value to ? Await(value). 3. Return Completion{[[Type]]: return, [[Value]]: value, [[Target]]: empty}. ix. If generatorKind is async, then let received be AsyncGeneratorYield(? IteratorValue(innerResult)). ... AsyncGeneratorYield ( value ) ... 8. Return ! AsyncGeneratorResolve(generator, value, false). ... --- 8838
yield-star-async-throw.js --- description: execution order for yield* with async iterator and throw() (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [async-iteration, Symbol.asyncIterator, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 6. Repeat ... b. Else if received.[[Type]] is throw, then i. Let throw be ? GetMethod(iterator, "throw"). ii. If throw is not undefined, then 1. Let innerResult be ? Call(throw, iterator, « received.[[Value]] »). 2. If generatorKind is async, then set innerResult to ? Await(innerResult). ... 5. Let done be ? IteratorComplete(innerResult). 6. If done is true, then a. Let resultValue be Return ? IteratorValue(innerResult). b. If generatorKind is async, then set resultValue to ? Await(resultValue). c. Return resultValue. 7. If generatorKind is async, then let received be AsyncGeneratorYield(? IteratorValue(innerResult)). ... AsyncGeneratorYield ( value ) ... 8. Return ! AsyncGeneratorResolve(generator, value, false). ... --- 8890
yield-star-expr-abrupt.js --- description: Abrupt completion while getting yield* operand (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). ... --- 2296
yield-star-getiter-async-get-abrupt.js --- description: Abrupt completion while getting [Symbol.asyncIterator] (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). ... GetMethod ( V, P ) ... 2. Let func be ? GetV(V, P). ... --- 2803
yield-star-getiter-async-not-callable-boolean-throw.js --- description: Throws a TypeError on a non-callable [Symbol.asyncIterator] (boolean) (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). ... GetMethod ( V, P ) ... 2. Let func be ? GetV(V, P). 3. If func is either undefined or null, return undefined. 4. If IsCallable(func) is false, throw a TypeError exception. ... --- 2933
yield-star-getiter-async-not-callable-number-throw.js --- description: Throws a TypeError on a non-callable [Symbol.asyncIterator] (number) (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). ... GetMethod ( V, P ) ... 2. Let func be ? GetV(V, P). 3. If func is either undefined or null, return undefined. 4. If IsCallable(func) is false, throw a TypeError exception. ... --- 2927
yield-star-getiter-async-not-callable-object-throw.js --- description: Throws a TypeError on a non-callable [Symbol.asyncIterator] (object) (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). ... GetMethod ( V, P ) ... 2. Let func be ? GetV(V, P). 3. If func is either undefined or null, return undefined. 4. If IsCallable(func) is false, throw a TypeError exception. ... --- 2928
yield-star-getiter-async-not-callable-string-throw.js --- description: Throws a TypeError on a non-callable [Symbol.asyncIterator] (string) (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). ... GetMethod ( V, P ) ... 2. Let func be ? GetV(V, P). 3. If func is either undefined or null, return undefined. 4. If IsCallable(func) is false, throw a TypeError exception. ... --- 2928
yield-star-getiter-async-not-callable-symbol-throw.js --- description: Throws a TypeError on a non-callable [Symbol.asyncIterator] (symbol) (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). ... GetMethod ( V, P ) ... 2. Let func be ? GetV(V, P). 3. If func is either undefined or null, return undefined. 4. If IsCallable(func) is false, throw a TypeError exception. ... --- 2946
yield-star-getiter-async-null-sync-get-abrupt.js --- description: Abrupt completion while getting @@iterator after null @@asyncIterator (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). b. If method is undefined, i. Let syncMethod be ? GetMethod(obj, @@iterator). ... GetMethod ( V, P ) ... 2. Let func be ? GetV(V, P). ... --- 2933
yield-star-getiter-async-returns-abrupt.js --- description: Abrupt completion while calling [Symbol.asyncIterator] (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). ... 6. Let iterator be ? Call(method, obj). ... --- 2781
yield-star-getiter-async-returns-boolean-throw.js --- description: Non object returned by [Symbol.asyncIterator]() - boolean (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). ... 6. Let iterator be ? Call(method, obj). 7. If Type(iterator) is not Object, throw a TypeError exception. ... --- 2853
yield-star-getiter-async-returns-null-throw.js --- description: Non object returned by [Symbol.asyncIterator]() - null (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). ... 6. Let iterator be ? Call(method, obj). 7. If Type(iterator) is not Object, throw a TypeError exception. ... --- 2847
yield-star-getiter-async-returns-number-throw.js --- description: Non object returned by [Symbol.asyncIterator]() - number (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). ... 6. Let iterator be ? Call(method, obj). 7. If Type(iterator) is not Object, throw a TypeError exception. ... --- 2849
yield-star-getiter-async-returns-string-throw.js --- description: Non object returned by [Symbol.asyncIterator]() - string (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). ... 6. Let iterator be ? Call(method, obj). 7. If Type(iterator) is not Object, throw a TypeError exception. ... --- 2851
yield-star-getiter-async-returns-symbol-throw.js --- description: Non object returned by [Symbol.asyncIterator]() - symbol (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). ... 6. Let iterator be ? Call(method, obj). 7. If Type(iterator) is not Object, throw a TypeError exception. ... --- 2867
yield-star-getiter-async-returns-undefined-throw.js --- description: Non object returned by [Symbol.asyncIterator]() - undefined (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). ... 6. Let iterator be ? Call(method, obj). 7. If Type(iterator) is not Object, throw a TypeError exception. ... --- 2862
yield-star-getiter-async-undefined-sync-get-abrupt.js --- description: Abrupt completion while getting @@iterator after undefined @@asyncIterator (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). b. If method is undefined, i. Let syncMethod be ? GetMethod(obj, @@iterator). ... GetMethod ( V, P ) ... 2. Let func be ? GetV(V, P). ... --- 2948
yield-star-getiter-sync-get-abrupt.js --- description: Abrupt completion while getting [Symbol.iterator] (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). b. If method is undefined, i. Let syncMethod be ? GetMethod(obj, @@iterator). ... GetMethod ( V, P ) ... 2. Let func be ? GetV(V, P). ... --- 2786
yield-star-getiter-sync-not-callable-boolean-throw.js --- description: Throws a TypeError on a non-callable [Symbol.iterator] (boolean) (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). b. If method is undefined, i. Let syncMethod be ? GetMethod(obj, @@iterator). ... GetMethod ( V, P ) ... 2. Let func be ? GetV(V, P). ... 4. If IsCallable(func) is false, throw a TypeError exception. ... --- 2840
yield-star-getiter-sync-not-callable-number-throw.js --- description: Throws a TypeError on a non-callable [Symbol.iterator] (number) (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). b. If method is undefined, i. Let syncMethod be ? GetMethod(obj, @@iterator). ... GetMethod ( V, P ) ... 2. Let func be ? GetV(V, P). ... 4. If IsCallable(func) is false, throw a TypeError exception. ... --- 2834
yield-star-getiter-sync-not-callable-object-throw.js --- description: Throws a TypeError on a non-callable [Symbol.iterator] (object) (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). b. If method is undefined, i. Let syncMethod be ? GetMethod(obj, @@iterator). ... GetMethod ( V, P ) ... 2. Let func be ? GetV(V, P). ... 4. If IsCallable(func) is false, throw a TypeError exception. ... --- 2835
yield-star-getiter-sync-not-callable-string-throw.js --- description: Throws a TypeError on a non-callable [Symbol.iterator] (string) (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). b. If method is undefined, i. Let syncMethod be ? GetMethod(obj, @@iterator). ... GetMethod ( V, P ) ... 2. Let func be ? GetV(V, P). ... 4. If IsCallable(func) is false, throw a TypeError exception. ... --- 2835
yield-star-getiter-sync-not-callable-symbol-throw.js --- description: Throws a TypeError on a non-callable [Symbol.iterator] (symbol) (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). b. If method is undefined, i. Let syncMethod be ? GetMethod(obj, @@iterator). ... GetMethod ( V, P ) ... 2. Let func be ? GetV(V, P). ... 4. If IsCallable(func) is false, throw a TypeError exception. ... --- 2870
yield-star-getiter-sync-returns-abrupt.js --- description: Abrupt completion while calling [Symbol.iterator] (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). i. Let syncMethod be ? GetMethod(obj, @@iterator). ii. Let syncIterator be ? Call(syncMethod, obj). ... --- 2736
yield-star-getiter-sync-returns-boolean-throw.js --- description: Non object returned by [Symbol.iterator]() - boolean (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). i. Let syncMethod be ? GetMethod(obj, @@iterator). ii. Let syncIterator be ? Call(syncMethod, obj). iii. Return ? CreateAsyncFromSyncIterator(syncIterator). ... CreateAsyncFromSyncIterator(syncIterator) 1. If Type(syncIterator) is not Object, throw a TypeError exception. ... --- 2911
yield-star-getiter-sync-returns-null-throw.js --- description: Non object returned by [Symbol.iterator]() - null (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). i. Let syncMethod be ? GetMethod(obj, @@iterator). ii. Let syncIterator be ? Call(syncMethod, obj). iii. Return ? CreateAsyncFromSyncIterator(syncIterator). ... CreateAsyncFromSyncIterator(syncIterator) 1. If Type(syncIterator) is not Object, throw a TypeError exception. ... --- 2905
yield-star-getiter-sync-returns-number-throw.js --- description: Non object returned by [Symbol.iterator]() - number (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). i. Let syncMethod be ? GetMethod(obj, @@iterator). ii. Let syncIterator be ? Call(syncMethod, obj). iii. Return ? CreateAsyncFromSyncIterator(syncIterator). ... CreateAsyncFromSyncIterator(syncIterator) 1. If Type(syncIterator) is not Object, throw a TypeError exception. ... --- 2906
yield-star-getiter-sync-returns-string-throw.js --- description: Non object returned by [Symbol.iterator]() - string (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). i. Let syncMethod be ? GetMethod(obj, @@iterator). ii. Let syncIterator be ? Call(syncMethod, obj). iii. Return ? CreateAsyncFromSyncIterator(syncIterator). ... CreateAsyncFromSyncIterator(syncIterator) 1. If Type(syncIterator) is not Object, throw a TypeError exception. ... --- 2907
yield-star-getiter-sync-returns-symbol-throw.js --- description: Non object returned by [Symbol.iterator]() - symbol (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). i. Let syncMethod be ? GetMethod(obj, @@iterator). ii. Let syncIterator be ? Call(syncMethod, obj). iii. Return ? CreateAsyncFromSyncIterator(syncIterator). ... CreateAsyncFromSyncIterator(syncIterator) 1. If Type(syncIterator) is not Object, throw a TypeError exception. ... --- 2920
yield-star-getiter-sync-returns-undefined-throw.js --- description: Non object returned by [Symbol.iterator]() - undefined (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression 1. Let exprRef be the result of evaluating AssignmentExpression. 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). i. Let syncMethod be ? GetMethod(obj, @@iterator). ii. Let syncIterator be ? Call(syncMethod, obj). iii. Return ? CreateAsyncFromSyncIterator(syncIterator). ... CreateAsyncFromSyncIterator(syncIterator) 1. If Type(syncIterator) is not Object, throw a TypeError exception. ... --- 2920
yield-star-next-call-done-get-abrupt.js --- description: Abrupt completion while getting done (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 6. Repeat a. If received.[[Type]] is normal, then ii. Let innerResult be ? Invoke(iterator, "next", « received.[[Value]] »). iii. If generatorKind is async, then set innerResult to ? Await(innerResult). ... v. Let done be ? IteratorComplete(innerResult). ... --- 2797
yield-star-next-call-returns-abrupt.js --- description: Abrupt completion while calling next (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 6. Repeat a. If received.[[Type]] is normal, then ii. Let innerResult be ? Invoke(iterator, "next", « received.[[Value]] »). ... --- 2562
yield-star-next-call-value-get-abrupt.js --- description: Abrupt completion while getting value (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 6. Repeat a. If received.[[Type]] is normal, then ii. Let innerResult be ? Invoke(iterator, "next", « received.[[Value]] »). iii. If generatorKind is async, then set innerResult to ? Await(innerResult). ... vi. If done is true, then 1. Return ? IteratorValue(innerResult). ... --- 2851
yield-star-next-get-abrupt.js --- description: Abrupt completion while getting next (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 6. Repeat a. If received.[[Type]] is normal, then ii. Let innerResult be ? Invoke(iterator, "next", « received.[[Value]] »). ... --- 2557
yield-star-next-non-object-ignores-then.js --- description: If next() value is not-object, do not access respective then property (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 6. Repeat a. If received.[[Type]] is normal, then ii. Let innerResult be ? Invoke(iterator, "next", « received.[[Value]] »). iii. If generatorKind is async, then set innerResult to ? Await(innerResult). iv. If Type(innerResult) is not Object, throw a TypeError exception. ... Await ... 2. Let promiseCapability be ! NewPromiseCapability(%Promise%). 3. Perform ! Call(promiseCapability.[[Resolve]], undefined, « promise »). ... Promise Resolve Functions ... 7. If Type(resolution) is not Object, then a. Return FulfillPromise(promise, resolution). 8. Let then be Get(resolution, "then"). ... --- 3233
yield-star-next-not-callable-boolean-throw.js --- description: Not-callable next value in a yield star position - boolean (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 6. Repeat a. If received.[[Type]] is normal, then ii. Let innerResult be ? Invoke(iterator, "next", « received.[[Value]] »). ... --- 2557
yield-star-next-not-callable-null-throw.js --- description: Not-callable next value in a yield star position - null (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 6. Repeat a. If received.[[Type]] is normal, then ii. Let innerResult be ? Invoke(iterator, "next", « received.[[Value]] »). ... --- 2551
yield-star-next-not-callable-number-throw.js --- description: Not-callable next value in a yield star position - number (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 6. Repeat a. If received.[[Type]] is normal, then ii. Let innerResult be ? Invoke(iterator, "next", « received.[[Value]] »). ... --- 2553
yield-star-next-not-callable-object-throw.js --- description: Not-callable next value in a yield star position - object (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 6. Repeat a. If received.[[Type]] is normal, then ii. Let innerResult be ? Invoke(iterator, "next", « received.[[Value]] »). ... --- 2553
yield-star-next-not-callable-string-throw.js --- description: Not-callable next value in a yield star position - string (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 6. Repeat a. If received.[[Type]] is normal, then ii. Let innerResult be ? Invoke(iterator, "next", « received.[[Value]] »). ... --- 2553
yield-star-next-not-callable-symbol-throw.js --- description: Not-callable next value in a yield star position - symbol (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 6. Repeat a. If received.[[Type]] is normal, then ii. Let innerResult be ? Invoke(iterator, "next", « received.[[Value]] »). ... --- 2563
yield-star-next-not-callable-undefined-throw.js --- description: Not-callable next value in a yield star position - undefined (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 6. Repeat a. If received.[[Type]] is normal, then ii. Let innerResult be ? Invoke(iterator, "next", « received.[[Value]] »). ... --- 2566
yield-star-next-then-get-abrupt.js --- description: Return abrupt after getting next().then (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 6. Repeat a. If received.[[Type]] is normal, then ii. Let innerResult be ? Invoke(iterator, "next", « received.[[Value]] »). iii. If generatorKind is async, then set innerResult to ? Await(innerResult). ... Await ... 2. Let promiseCapability be ! NewPromiseCapability(%Promise%). 3. Perform ! Call(promiseCapability.[[Resolve]], undefined, « promise »). ... Promise Resolve Functions ... 8. Let then be Get(resolution, "then"). ... 10. Get thenAction be then.[[Value]]. ... 12. Perform EnqueueJob("PromiseJobs", PromiseResolveThenableJob, « promise, resolution, thenAction »). ... --- 3169
yield-star-next-then-non-callable-boolean-fulfillpromise.js --- description: FulfillPromise if next().then is not-callable (boolean) (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 6. Repeat a. If received.[[Type]] is normal, then ii. Let innerResult be ? Invoke(iterator, "next", « received.[[Value]] »). iii. If generatorKind is async, then set innerResult to ? Await(innerResult). iv. If Type(innerResult) is not Object, throw a TypeError exception. ... Await ... 2. Let promiseCapability be ! NewPromiseCapability(%Promise%). 3. Perform ! Call(promiseCapability.[[Resolve]], undefined, « promise »). ... Promise Resolve Functions ... 7. If Type(resolution) is not Object, then a. Return FulfillPromise(promise, resolution). 8. Let then be Get(resolution, "then"). ... 11. If IsCallable(thenAction) is false, then a. Return FulfillPromise(promise, resolution). ... --- 3075
yield-star-next-then-non-callable-null-fulfillpromise.js --- description: FulfillPromise if next().then is not-callable (null) (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 6. Repeat a. If received.[[Type]] is normal, then ii. Let innerResult be ? Invoke(iterator, "next", « received.[[Value]] »). iii. If generatorKind is async, then set innerResult to ? Await(innerResult). iv. If Type(innerResult) is not Object, throw a TypeError exception. ... Await ... 2. Let promiseCapability be ! NewPromiseCapability(%Promise%). 3. Perform ! Call(promiseCapability.[[Resolve]], undefined, « promise »). ... Promise Resolve Functions ... 7. If Type(resolution) is not Object, then a. Return FulfillPromise(promise, resolution). 8. Let then be Get(resolution, "then"). ... 11. If IsCallable(thenAction) is false, then a. Return FulfillPromise(promise, resolution). ... --- 3069
yield-star-next-then-non-callable-number-fulfillpromise.js --- description: FulfillPromise if next().then is not-callable (number) (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 6. Repeat a. If received.[[Type]] is normal, then ii. Let innerResult be ? Invoke(iterator, "next", « received.[[Value]] »). iii. If generatorKind is async, then set innerResult to ? Await(innerResult). iv. If Type(innerResult) is not Object, throw a TypeError exception. ... Await ... 2. Let promiseCapability be ! NewPromiseCapability(%Promise%). 3. Perform ! Call(promiseCapability.[[Resolve]], undefined, « promise »). ... Promise Resolve Functions ... 7. If Type(resolution) is not Object, then a. Return FulfillPromise(promise, resolution). 8. Let then be Get(resolution, "then"). ... 11. If IsCallable(thenAction) is false, then a. Return FulfillPromise(promise, resolution). ... --- 3071
yield-star-next-then-non-callable-object-fulfillpromise.js --- description: FulfillPromise if next().then is not-callable (object) (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 6. Repeat a. If received.[[Type]] is normal, then ii. Let innerResult be ? Invoke(iterator, "next", « received.[[Value]] »). iii. If generatorKind is async, then set innerResult to ? Await(innerResult). iv. If Type(innerResult) is not Object, throw a TypeError exception. ... Await ... 2. Let promiseCapability be ! NewPromiseCapability(%Promise%). 3. Perform ! Call(promiseCapability.[[Resolve]], undefined, « promise »). ... Promise Resolve Functions ... 7. If Type(resolution) is not Object, then a. Return FulfillPromise(promise, resolution). 8. Let then be Get(resolution, "then"). ... 11. If IsCallable(thenAction) is false, then a. Return FulfillPromise(promise, resolution). ... --- 3071
yield-star-next-then-non-callable-string-fulfillpromise.js --- description: FulfillPromise if next().then is not-callable (string) (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 6. Repeat a. If received.[[Type]] is normal, then ii. Let innerResult be ? Invoke(iterator, "next", « received.[[Value]] »). iii. If generatorKind is async, then set innerResult to ? Await(innerResult). iv. If Type(innerResult) is not Object, throw a TypeError exception. ... Await ... 2. Let promiseCapability be ! NewPromiseCapability(%Promise%). 3. Perform ! Call(promiseCapability.[[Resolve]], undefined, « promise »). ... Promise Resolve Functions ... 7. If Type(resolution) is not Object, then a. Return FulfillPromise(promise, resolution). 8. Let then be Get(resolution, "then"). ... 11. If IsCallable(thenAction) is false, then a. Return FulfillPromise(promise, resolution). ... --- 3071
yield-star-next-then-non-callable-symbol-fulfillpromise.js --- description: FulfillPromise if next().then is not-callable (symbol) (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 6. Repeat a. If received.[[Type]] is normal, then ii. Let innerResult be ? Invoke(iterator, "next", « received.[[Value]] »). iii. If generatorKind is async, then set innerResult to ? Await(innerResult). iv. If Type(innerResult) is not Object, throw a TypeError exception. ... Await ... 2. Let promiseCapability be ! NewPromiseCapability(%Promise%). 3. Perform ! Call(promiseCapability.[[Resolve]], undefined, « promise »). ... Promise Resolve Functions ... 7. If Type(resolution) is not Object, then a. Return FulfillPromise(promise, resolution). 8. Let then be Get(resolution, "then"). ... 11. If IsCallable(thenAction) is false, then a. Return FulfillPromise(promise, resolution). ... --- 3081
yield-star-next-then-non-callable-undefined-fulfillpromise.js --- description: FulfillPromise if next().then is not-callable (undefined) (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 6. Repeat a. If received.[[Type]] is normal, then ii. Let innerResult be ? Invoke(iterator, "next", « received.[[Value]] »). iii. If generatorKind is async, then set innerResult to ? Await(innerResult). iv. If Type(innerResult) is not Object, throw a TypeError exception. ... Await ... 2. Let promiseCapability be ! NewPromiseCapability(%Promise%). 3. Perform ! Call(promiseCapability.[[Resolve]], undefined, « promise »). ... Promise Resolve Functions ... 7. If Type(resolution) is not Object, then a. Return FulfillPromise(promise, resolution). 8. Let then be Get(resolution, "then"). ... 11. If IsCallable(thenAction) is false, then a. Return FulfillPromise(promise, resolution). ... --- 3084
yield-star-next-then-returns-abrupt.js --- description: Return abrupt after calling next().then (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, Symbol.asyncIterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 6. Repeat a. If received.[[Type]] is normal, then ii. Let innerResult be ? Invoke(iterator, "next", « received.[[Value]] »). iii. If generatorKind is async, then set innerResult to ? Await(innerResult). ... Await ... 2. Let promiseCapability be ! NewPromiseCapability(%Promise%). 3. Perform ! Call(promiseCapability.[[Resolve]], undefined, « promise »). ... Promise Resolve Functions ... 8. Let then be Get(resolution, "then"). ... 10. Get thenAction be then.[[Value]]. ... 12. Perform EnqueueJob("PromiseJobs", PromiseResolveThenableJob, « promise, resolution, thenAction »). ... --- 3169
yield-star-sync-next.js --- description: execution order for yield* with sync iterator and next() (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, async-iteration, Symbol.asyncIterator, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 2. Let value be ? GetValue(exprRef). 3. Let generatorKind be ! GetGeneratorKind(). 4. Let iterator be ? GetIterator(value, generatorKind). 5. Let received be NormalCompletion(undefined). 6. Repeat a. If received.[[Type]] is normal, then i. Let innerResult be ? IteratorNext(iterator, received.[[Value]]). ii. Let innerResult be ? Invoke(iterator, "next", « received.[[Value]] »). iii. If generatorKind is async, then set innerResult to ? Await(innerResult). ... v. Let done be ? IteratorComplete(innerResult). vi. If done is true, then 1. Return ? IteratorValue(innerResult). vii. Let received be GeneratorYield(innerResult). ... GetIterator ( obj [ , hint ] ) ... 3. If hint is async, a. Set method to ? GetMethod(obj, @@asyncIterator). b. If method is undefined, i. Let syncMethod be ? GetMethod(obj, @@iterator). ii. Let syncIterator be ? Call(syncMethod, obj). iii. Return ? CreateAsyncFromSyncIterator(syncIterator). ... %AsyncFromSyncIteratorPrototype%.next ( value ) ... 5. Let nextResult be IteratorNext(syncIterator, value). ... 7. Let nextValue be IteratorValue(nextResult). ... 9. Let nextDone be IteratorComplete(nextResult). ... 12. Perform ! Call(valueWrapperCapability.[[Resolve]], undefined, « nextValue »). ... 14. Set onFulfilled.[[Done]] to nextDone. 15. Perform ! PerformPromiseThen(valueWrapperCapability.[[Promise]], onFulfilled, undefined, promiseCapability). ... Async Iterator Value Unwrap Functions 1. Return ! CreateIterResultObject(value, F.[[Done]]). --- 7756
yield-star-sync-return.js --- description: execution order for yield* with sync iterator and return() (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, async-iteration, Symbol.asyncIterator, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 6. Repeat ... c. Else, i. Assert: received.[[Type]] is return. ii. Let return be ? GetMethod(iterator, "return"). iii. If return is undefined, return Completion(received). iv. Let innerReturnResult be ? Call(return, iterator, « received.[[Value]] »). v. If generatorKind is async, then set innerReturnResult to ? Await(innerReturnResult). ... vii. Let done be ? IteratorComplete(innerReturnResult). viii. If done is true, then 1. Let value be ? IteratorValue(innerReturnResult). 2. Return Completion{[[Type]]: return, [[Value]]: value, [[Target]]: empty}. ix. Let received be GeneratorYield(innerResult). %AsyncFromSyncIteratorPrototype%.return ( value ) 5. Let return be GetMethod(syncIterator, "return"). ... ... 8. Let returnResult be Call(return, syncIterator, « value »). ... 11. Let returnValue be IteratorValue(returnResult). .. 13. Let returnDone be IteratorComplete(returnResult). ... 16. Perform ! Call(valueWrapperCapability.[[Resolve]], undefined, « returnValue »). ... 18. Set onFulfilled.[[Done]] to returnDone. 19. Perform ! PerformPromiseThen(valueWrapperCapability.[[Promise]], onFulfilled, undefined, promiseCapability). ... --- 6972
yield-star-sync-throw.js --- description: execution order for yield* with sync iterator and throw() (Static async generator method as a ClassExpression element) esid: prod-AsyncGeneratorPrivateMethod features: [Symbol.iterator, async-iteration, class-static-methods-private] flags: [generated, async] info: | ClassElement : static PrivateMethodDefinition MethodDefinition : AsyncGeneratorMethod Async Generator Function Definitions AsyncGeneratorMethod : async [no LineTerminator here] * PropertyName ( UniqueFormalParameters ) { AsyncGeneratorBody } YieldExpression: yield * AssignmentExpression ... 6. Repeat ... b. Else if received.[[Type]] is throw, then i. Let throw be ? GetMethod(iterator, "throw"). ii. If throw is not undefined, then 1. Let innerResult be ? Call(throw, iterator, « received.[[Value]] »). 2. If generatorKind is async, then set innerResult to ? Await(innerResult). ... 5. Let done be ? IteratorComplete(innerResult). 6. If done is true, then a. Return ? IteratorValue(innerResult). 7. Let received be GeneratorYield(innerResult). ... %AsyncFromSyncIteratorPrototype%.throw ( value ) ... 5. Let throw be GetMethod(syncIterator, "throw"). ... 8. Let throwResult be Call(throw, syncIterator, « value »). ... 11. Let throwValue be IteratorValue(throwResult). ... 13. Let throwDone be IteratorComplete(throwResult). ... 16. Perform ! Call(valueWrapperCapability.[[Resolve]], undefined, « throwValue »). ... 18. Set onFulfilled.[[Done]] to throwDone. 19. Perform ! PerformPromiseThen(valueWrapperCapability.[[Promise]], onFulfilled, undefined, promiseCapability). ... --- 6962