Skip to content

Commit

Permalink
Layering: track execution contexts' script/module
Browse files Browse the repository at this point in the history
Fixes #78. Introduces the concept of a Script Record as a counterpart to a Module Record, and adds [[HostDefined]] fields to both of them. Every execution environment now has ScriptOrModule component pointing back to its "creator" script or module:

- Top level script/module execution contexts point to the appropriate script/module.
- Function execution contexts for functions declared at top level point to that of the containing script/module.
- Function execution contexts for functions declared inside other functions point to that of the containing function.
- Eval execution contexts point to that of their containing function.
- Job execution contexts (which are largely a spec artifact) point to the script/module that originally enqueued the job.

In the course of doing this, factored out ParseScript and ScriptEvaluation abstract operations, which now better parallel modules.
  • Loading branch information
domenic committed Dec 10, 2015
1 parent b8f06ea commit 4e50c90
Showing 1 changed file with 173 additions and 37 deletions.
Loading

0 comments on commit 4e50c90

Please sign in to comment.