You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
<p>It prepares the module for linking by recursively loading all its dependencies.</p>
492
+
<p><ins>When this module is a Cyclic Module Record, _importedNames_ is the list of binding names whose additional modules need to be loaded, for usage with GetOptionalIndirectExportsModuleRequests(). By default, all modules re-exported by this module through GetOptionalIndirectExportsModuleRequests() are loaded.</ins></p>
483
493
</td>
484
494
<td>
485
-
<p>Prepares the module for linking by recursively loading all its dependencies, and returns a promise.</p>
486
-
<p><ins>When this module is a Cyclic Module Record, _importedNames_ is the list of binding names (or ~all~) whose additional modules need to be loaded, for usage with GetOptionalIndirectExportsModuleRequests(). By default, all modules re-exported by this module through GetOptionalIndirectExportsModuleRequests() are loaded.</ins></p>
495
+
Within this specification it has definitions in the following types; hosts may provide additional types with their own definitions:
optional _resolveSet_: a List of Records with fields [[Module]] (a Module Record) and [[ExportName]] (a String),
519
+
): a ResolvedBinding Record, *null*, or ~ambiguous~
501
520
</td>
502
521
<td>
503
-
<p>Return the binding of a name exported by this module. Bindings are represented by a <dfn id="resolvedbinding-record" variants="ResolvedBinding Records">ResolvedBinding Record</dfn>, of the form { [[Module]]: Module Record, [[BindingName]]: String | ~namespace~ }. If the export is a Module Namespace Object without a direct binding in any module, [[BindingName]] will be set to ~namespace~. Return *null* if the name cannot be resolved, or ~ambiguous~ if multiple bindings were found.</p>
522
+
<p>It returns the binding of a name exported by this module. Bindings are represented by a <dfn id="resolvedbinding-record" variants="ResolvedBinding Records">ResolvedBinding Record</dfn>, of the form { [[Module]]: Module Record, [[BindingName]]: String | ~namespace~ }. If the export is a Module Namespace Object without a direct binding in any module, [[BindingName]] will be set to ~namespace~. It returns *null* if the name cannot be resolved, or ~ambiguous~ if multiple bindings were found.</p>
504
523
<p>Each time this operation is called with a specific _exportName_, _resolveSet_ pair as arguments it must return the same result.</p>
505
524
<p>LoadRequestedModules must have completed successfully prior to invoking this method.</p>
506
525
</td>
526
+
<td>
527
+
Within this specification it has definitions in the following types; hosts may provide additional types with their own definitions:
<ins>optional _importedNames_: ~all~ or a List of Strings,</ins>
535
+
): either a normal completion containing ~unused~ or a throw completion
511
536
</td>
512
537
<td>
513
-
<p>Prepare the module for evaluation by transitively resolving all module dependencies and creating a Module Environment Record.</p>
514
-
<p><ins>When this module is a Cyclic Module Record, _importedNames_ is the list of binding names (or ~all~) whose additional modules need to be linked, for usage with GetOptionalIndirectExportsModuleRequests(). By default, all modules re-exported by this module through GetOptionalIndirectExportsModuleRequests() are linked.</ins></p>
538
+
<p>It prepares the module for evaluation by transitively resolving all module dependencies and creating a Module Environment Record.</p>
539
+
<p><ins>When this module is a Cyclic Module Record, _importedNames_ is the list of binding names whose additional modules need to be linked, for usage with GetOptionalIndirectExportsModuleRequests(). By default, all modules re-exported by this module through GetOptionalIndirectExportsModuleRequests() are linked.</ins></p>
515
540
<p>LoadRequestedModules must have completed successfully prior to invoking this method<ins>, with an _importNames_ list that includes at least the _importedNames_ passed to Link</ins>.</p>
516
541
</td>
542
+
<td>
543
+
Within this specification it has definitions in the following types; hosts may provide additional types with their own definitions:
<ins>optional _importedNames_: ~all~ or a List of Strings,</ins>
551
+
): a Promise
521
552
</td>
522
553
<td>
523
-
<p>Returns a promise for the evaluation of this module and its dependencies, resolving on successful evaluation or if it has already been evaluated successfully, and rejecting for an evaluation error or if it has already been evaluated unsuccessfully. If the promise is rejected, hosts are expected to handle the promise rejection and rethrow the evaluation error.</p>
524
-
<p><ins>When this module is a Cyclic Module Record, _importedNames_ is the list of binding names (or ~all~) whose additional modules need to be evaluated, for usage with GetOptionalIndirectExportsModuleRequests(). By default, modules re-exported by this module through GetOptionalIndirectExportsModuleRequests() are not evaluated.</ins></p>
554
+
<p>It returns a promise for the evaluation of this module and its dependencies, resolving on successful evaluation or if it has already been evaluated successfully, and rejecting for an evaluation error or if it has already been evaluated unsuccessfully. If the promise is rejected, hosts are expected to handle the promise rejection and rethrow the evaluation error. Unless this module is a Cyclic Module Record, the returned promise must be already settled.</p>
555
+
<p><ins>When this module is a Cyclic Module Record, _importedNames_ is the list of binding names whose additional modules need to be evaluated, for usage with GetOptionalIndirectExportsModuleRequests(). By default, modules re-exported by this module through GetOptionalIndirectExportsModuleRequests() are not evaluated.</ins></p>
525
556
<p>Link must have completed successfully prior to invoking this method<ins>, with an _importNames_ list that includes at least the _importedNames_ passed to Evaluate</ins>.</p>
526
557
</td>
558
+
<td>
559
+
Within this specification it has definitions in the following types; hosts may provide additional types with their own definitions:
<p>In addition to the methods defined in <emu-xref href="#table-abstract-methods-of-module-records"></emu-xref> Cyclic Module Records have the additional methods listed in <emu-xref href="#table-cyclic-module-methods"></emu-xref></p>
731
-
<emu-table id="table-cyclic-module-methods" caption="Additional Abstract Methods of Cyclic Module Records">
optional _capability_: a PromiseCapability Record,
795
+
): either a normal completion containing ~unused~ or a throw completion
796
+
</td>
752
797
<td>
753
-
ExecuteModule( [ _promiseCapability_ ] )
798
+
It evaluates the module's code within its execution context. If this module has *true* in [[HasTLA]], then a PromiseCapability Record is passed as an argument, and the method is expected to resolve or reject the given capability. In this case, the method must not throw an exception, but instead reject the PromiseCapability Record if necessary.
754
799
</td>
755
800
<td>
756
-
Evaluate the module's code within its execution context. If this module has *true* in [[HasTLA]], then a PromiseCapability Record is passed as an argument, and the method is expected to resolve or reject the given capability. In this case, the method must not throw an exception, but instead reject the PromiseCapability Record if necessary.
801
+
Within this specification it has definitions in the following types; hosts may provide additional types with their own definitions:
optional _importedNames_: ~all~ or a List of Strings,
810
+
): a List of ModuleRequest Records
811
+
</ins>
762
812
</td>
763
813
<td>
764
-
<p><ins>Returns a list of ModuleRequest Records describing the additional dependencies (not already listed in this module's [[RequestedModules]]) needed to be able to import _importedNames_ from this module. In case of a Source Text Module Record, these would be the dependencies specified through `export defer`. _importedNames_ is either ~all~ or a List of Strings.</ins></p>
814
+
<p><ins>It computes the Module Requests for the additional dependencies (not already listed in this module's [[RequestedModules]]) needed to be able to import _importedNames_ from this module. In case of a Source Text Module Record, these would be the dependencies specified through `export defer`.</ins></p>
765
815
766
816
<p><ins>This abstract method has the following default implementation:</ins></p>
767
817
<emu-alg>
768
818
1. <ins>Return a new empty List.</ins>
769
819
</emu-alg>
770
820
</td>
821
+
<td>
822
+
<ins>Within this specification it has definitions in the following types; hosts may provide additional types with their own definitions:</ins>
0 commit comments