Skip to content

Top Level Await #2218

@rwaldron

Description

@rwaldron

ref: https://tc39.es/proposal-top-level-await/

@leobalter please fill in the following work lists and commence work on new test material:

  • AsyncFunctionStart ( promiseCapability, asyncFunctionBody )

    • ...
  • AsyncBlockStart ( promiseCapability, asyncBody, asyncContext )

    • ...
  • Abstract Module Records

    • ...
  • Cyclic Module Records

    • ...
  • Table 3: Additional Fields of Cyclic Module Records

    • [[Async]]
      • ...
    • [[AsyncEvaluating]] true or false Whether this module is currently awaiting async fulfillment.
      • ...
    • [[TopLevelCapability]]
      • ...
    • [[AsyncParentModules]]
      • ...
    • [[PendingAsyncDependencies]]
      • ...
  • Table 4: Additional Abstract Methods of Cyclic Module Records

    • ExecuteModule( [ promiseCapability ] )
      • ...
  • Link ( ) Concrete Method

    • ...
  • InnerModuleLinking ( module, stack, index )

    • ...
  • Evaluate ( ) Concrete Method

    • ...
  • InnerModuleEvaluation( module, stack, index )

    • ...
  • ExecuteAsyncModule ( module )

    • ...
  • GetCycleRoot ( module )

    • ...
  • AsyncModuleExecutionFulfilled ( module )

    • ...
  • AsyncModuleExecutionRejected ( module, error )

    • ...
  • Source Text Module Records

    • ...
  • ParseModule ( sourceText, realm, hostDefined )

    • ...
  • ExecuteModule ( [ capability ] )

    • ...
  • Runtime Semantics: TopLevelModuleEvaluationJob ( sourceText, hostDefined )

    • ...
  • Modules

StatementListItem[~Yield, +Await, ~Return]
  • Async Function Definitions (Syntax)
    • ...
  • Imports
    • ...
  • Exports
    • ...

Note: There may be top level sections missings, so please keep an eye out for that.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions