Per the spec in modules.md the exports property should default to an
empty object. We lazy allocate it so that modules that just replace it
don't create the empty object and then throw it away.
R=abarth@chromium.org
Review URL: https://codereview.chromium.org/872043003
This CL adds the beginning of a new module loading system that matches the
conceptual module in the spec. I've writed it up to the import API on
AbstractModule. In a future CL, I'll replace the old module loading system with
this one.
R=eseidel@chromium.org
Review URL: https://codereview.chromium.org/720903002
This CL moves the |exports| from Document to the new |Module| interface,
matching the spec. Also, the |module| object available to scripts is now really
an instance of |Module|.
R=eseidel@chromium.org
Review URL: https://codereview.chromium.org/703593003
Address comments
Add a basic parser benchmark
This CL adds a basic benchmark for the parser. There isn't a direct way to
exercise the parser in Sky, so we use imports.
This CL also adds a load event to <import> to determine when the import is done
loading.
R=eseidel@chromium.org
parser benchmark wip
This CL adds basic support for the <import> elements. We're using the same imports
machinery as <link rel="import">, which simplifies this patch substantially.
Currently we support both <link rel="import"> and <import>. Once this CL lands, I'll
update all the existing modules and then we can drop support for
<link rel="import">.
R=ojan@chromium.org
Review URL: https://codereview.chromium.org/681983005