{"push_id":902896145,"size":1,"distinct_size":1,"ref":"refs/heads/track-script-module","head":"44d6e65b38b54c40d238e93167dc54d100d2c8ab","before":"fc1ac1019076fe0771ede388d89063a3c60993ad","commits":[{"sha":"44d6e65b38b54c40d238e93167dc54d100d2c8ab","author":{"email":"3c363836cf4e16666669a25da280a1865c2d2874@domenic.me","name":"Domenic Denicola"},"message":"Layering: track execution contexts' script/module\n\nFixes #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:\n\n- Top level script/module execution contexts point to the appropriate script/module.\n- Function execution contexts for functions declared at top level point to that of the containing script/module.\n- Function execution contexts for functions declared inside other functions point to that of the containing function, skipping built-in functions.\n- Eval execution contexts point to that of their containing function (skipping built-in functions, including `eval` itself).\n- Job execution contexts (which are largely a spec artifact) point to the script/module that originally enqueued the job.\n\nIn the course of doing this, a couple other substantial changes were introduced:\n\n- Factored out ParseScript and ScriptEvaluation abstract operations, so that script parsing now better parallels module parsing.\n- Added HostReportErrors for reporting both parsing errors and runtime errors, and wired it in to parsing and NextJob as appropriate.","distinct":true,"url":"https://api.github.com/repos/domenic/ecma262/commits/44d6e65b38b54c40d238e93167dc54d100d2c8ab"}]}