tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

for-of-await-expr-new-expr.js (3190B)


      1 // |reftest| module
      2 // This file was procedurally generated from the following sources:
      3 // - src/top-level-await/await-expr-new-expr.case
      4 // - src/top-level-await/syntax/for-of-expr.template
      5 /*---
      6 description: AwaitExpression new MemberExpression (Valid syntax for top level await in for-of statements.)
      7 esid: prod-AwaitExpression
      8 features: [top-level-await]
      9 flags: [generated, module]
     10 info: |
     11    ModuleItem:
     12      StatementListItem[~Yield, +Await, ~Return]
     13 
     14    ...
     15 
     16    IterationStatement[Yield, Await, Return]:
     17      ...
     18      for ( [ lookahead ≠ let []Expression[~In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
     19      for ( var VariableDeclarationList[~In, ?Yield, ?Await] ; Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
     20      for ( LexicalDeclaration[~In, ?Yield, ?Await] Expression[+In, ?Yield, ?Await]opt ; Expression[+In, ?Yield, ?Await]opt ) Statement[?Yield, ?Await, ?Return]
     21      for ( [lookahead ≠ let [] LeftHandSideExpression[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
     22      for ( var ForBinding[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
     23      for ( ForDeclaration[?Yield, ?Await] in Expression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
     24      for ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
     25      for ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
     26      for ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
     27      ...
     28 
     29    ...
     30 
     31    UnaryExpression[Yield, Await]
     32      [+Await]AwaitExpression[?Yield]
     33 
     34    AwaitExpression[Yield]:
     35      await UnaryExpression[?Yield, +Await]
     36 
     37    ...
     38 
     39 
     40    LeftHandSideExpression[Yield, Await]:
     41      NewExpression[?Yield, ?Await]
     42      CallExpression[?Yield, ?Await]
     43 
     44    NewExpression[Yield, Await]:
     45      MemberExpression[?Yield, ?Await]
     46      new NewExpression[?Yield, ?Await]
     47 
     48    MemberExpression[Yield, Await]:
     49      ...
     50      new MemberExpression[?Yield, ?Await] Arguments[?Yield, ?Await]
     51 
     52 ---*/
     53 
     54 
     55 var binding;
     56 
     57 // for ( [lookahead ≠ let] LeftHandSideExpression[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
     58 for (binding of [await new Promise(function(res, rej) { res(1); })]) {
     59  await new Promise(function(res, rej) { res(1); });
     60  break;
     61 }
     62 
     63 // for ( var ForBinding[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
     64 for (var binding of [await new Promise(function(res, rej) { res(1); })]) {
     65  await new Promise(function(res, rej) { res(1); });
     66  break;
     67 }
     68 
     69 // for ( ForDeclaration[?Yield, ?Await] of AssignmentExpression[+In, ?Yield, ?Await] ) Statement[?Yield, ?Await, ?Return]
     70 for (let binding of [await new Promise(function(res, rej) { res(1); })]) {
     71  await new Promise(function(res, rej) { res(1); });
     72  break;
     73 }
     74 
     75 reportCompare(0, 0);