dflt-ary-ptrn-elem-obj-val-undef.js (1414B)
1 // This file was procedurally generated from the following sources: 2 // - src/dstr-binding/ary-ptrn-elem-obj-val-undef.case 3 // - src/dstr-binding/error/async-gen-func-decl-dflt.template 4 /*--- 5 description: Nested object destructuring with a value of `undefined` (async generator function declaration (default parameter)) 6 esid: sec-asyncgenerator-definitions-instantiatefunctionobject 7 features: [async-iteration] 8 flags: [generated] 9 info: | 10 AsyncGeneratorDeclaration : async [no LineTerminator here] function * BindingIdentifier 11 ( FormalParameters ) { AsyncGeneratorBody } 12 13 [...] 14 3. Let F be ! AsyncGeneratorFunctionCreate(Normal, FormalParameters, AsyncGeneratorBody, 15 scope, strict). 16 [...] 17 18 13.3.3.6 Runtime Semantics: IteratorBindingInitialization 19 20 BindingElement : BindingPattern Initializeropt 21 22 1. If iteratorRecord.[[done]] is false, then 23 [...] 24 e. Else 25 i. Let v be IteratorValue(next). 26 [...] 27 4. Return the result of performing BindingInitialization of BindingPattern 28 with v and environment as the arguments. 29 30 13.3.3.5 Runtime Semantics: BindingInitialization 31 32 BindingPattern : ObjectBindingPattern 33 34 1. Let valid be RequireObjectCoercible(value). 35 2. ReturnIfAbrupt(valid). 36 ---*/ 37 38 39 async function* f([{ x }] = []) { 40 41 }; 42 43 assert.throws(TypeError, function() { 44 f(); 45 }); 46 47 reportCompare(0, 0);