diff --git a/spec.html b/spec.html index 1d59758031..e213f7f309 100644 --- a/spec.html +++ b/spec.html @@ -26725,7 +26725,7 @@
The _action_, _completeSCC_ and _postErrorCleanup_ are called on individual modules at different points during the graph traversal:
+_initialStatus_ and _pendingStatus_ are the possible values of Cyclic Module Records' [[Status]] field to mark them respectively as yet to be handled by this graph traversal, or currently being handled. If a module has a different [[Status]] value it is assumed to have already been handled, either by a previous ModuleGraphDFS call or by the current one.
+ +TODO: Add an example with a module graph that has some deps and a cycle, listing which of those "hooks" are called in which order.
+ +It performs the following steps when called:
+ +A module is ~evaluating~ while it is being traversed by ModuleGraphDFS. A module is ~evaluated~ on execution completion or ~evaluating-async~ during execution if its [[HasTLA]] field is *true* or if it has asynchronous dependencies.
+Any modules depending on a module of an asynchronous cycle when that cycle is not ~evaluating~ will instead depend on the execution of the root of the cycle via [[CycleRoot]]. This ensures that the cycle state can be treated as a single strongly connected component through its root module state.
+A module is ~evaluating~ while it is being traversed by InnerModuleEvaluation. A module is ~evaluated~ on execution completion or ~evaluating-async~ during execution if its [[HasTLA]] field is *true* or if it has asynchronous dependencies.
-Any modules depending on a module of an asynchronous cycle when that cycle is not ~evaluating~ will instead depend on the execution of the root of the cycle via [[CycleRoot]]. This ensures that the cycle state can be treated as a single strongly connected component through its root module state.
-