diff options
Diffstat (limited to 'Userland/Libraries/LibWeb/HTML/Scripting/ClassicScript.h')
-rw-r--r-- | Userland/Libraries/LibWeb/HTML/Scripting/ClassicScript.h | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/Userland/Libraries/LibWeb/HTML/Scripting/ClassicScript.h b/Userland/Libraries/LibWeb/HTML/Scripting/ClassicScript.h index 34af98d50c..80affbec8f 100644 --- a/Userland/Libraries/LibWeb/HTML/Scripting/ClassicScript.h +++ b/Userland/Libraries/LibWeb/HTML/Scripting/ClassicScript.h @@ -7,6 +7,7 @@ #pragma once #include <LibJS/Script.h> +#include <LibWeb/Forward.h> #include <LibWeb/HTML/Scripting/Script.h> namespace Web::HTML { @@ -20,22 +21,26 @@ public: No, Yes, }; - static NonnullRefPtr<ClassicScript> create(String filename, StringView source, JS::Realm&, AK::URL base_url, MutedErrors = MutedErrors::No); + static NonnullRefPtr<ClassicScript> create(String filename, StringView source, EnvironmentSettingsObject&, AK::URL base_url, MutedErrors = MutedErrors::No); JS::Script* script_record() { return m_script_record; } JS::Script const* script_record() const { return m_script_record; } + EnvironmentSettingsObject& settings_object() { return m_settings_object; } + enum class RethrowErrors { No, Yes, }; - JS::Value run(RethrowErrors = RethrowErrors::No); + JS::Completion run(RethrowErrors = RethrowErrors::No); private: - ClassicScript(AK::URL base_url, String filename); + ClassicScript(AK::URL base_url, String filename, EnvironmentSettingsObject& environment_settings_object); + EnvironmentSettingsObject& m_settings_object; RefPtr<JS::Script> m_script_record; MutedErrors m_muted_errors { MutedErrors::No }; + Optional<JS::Parser::Error> m_error_to_rethrow; }; } |