summaryrefslogtreecommitdiffstats
path: root/dom/script/ModuleScript.h
diff options
context:
space:
mode:
Diffstat (limited to 'dom/script/ModuleScript.h')
-rw-r--r--dom/script/ModuleScript.h28
1 files changed, 7 insertions, 21 deletions
diff --git a/dom/script/ModuleScript.h b/dom/script/ModuleScript.h
index dd0d07e84..571359859 100644
--- a/dom/script/ModuleScript.h
+++ b/dom/script/ModuleScript.h
@@ -20,17 +20,10 @@ class ScriptLoader;
class ModuleScript final : public nsISupports
{
- enum InstantiationState {
- Uninstantiated,
- Instantiated,
- Errored
- };
-
RefPtr<ScriptLoader> mLoader;
nsCOMPtr<nsIURI> mBaseURL;
JS::Heap<JSObject*> mModuleRecord;
- JS::Heap<JS::Value> mException;
- InstantiationState mInstantiationState;
+ JS::Heap<JS::Value> mError;
~ModuleScript();
@@ -39,24 +32,17 @@ public:
NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(ModuleScript)
ModuleScript(ScriptLoader* aLoader,
- nsIURI* aBaseURL,
- JS::Handle<JSObject*> aModuleRecord);
+ nsIURI* aBaseURL);
+
+ void SetModuleRecord(JS::Handle<JSObject*> aModuleRecord);
+ void SetPreInstantiationError(const JS::Value& aError);
ScriptLoader* Loader() const { return mLoader; }
JSObject* ModuleRecord() const { return mModuleRecord; }
- JS::Value Exception() const { return mException; }
nsIURI* BaseURL() const { return mBaseURL; }
- void SetInstantiationResult(JS::Handle<JS::Value> aMaybeException);
- bool IsUninstantiated() const {
- return mInstantiationState == Uninstantiated;
- }
- bool IsInstantiated() const {
- return mInstantiationState == Instantiated;
- }
- bool InstantiationFailed() const {
- return mInstantiationState == Errored;
- }
+ bool IsErrored() const;
+ JS::Value Error() const;
void UnlinkModuleRecord();
};