#include "third_party/blink/renderer/core/script/module_script.h"
#include <tuple>
#include "base/feature_list.h"
#include "third_party/blink/public/common/features.h"
#include "third_party/blink/renderer/bindings/core/v8/module_record.h"
#include "third_party/blink/renderer/bindings/core/v8/script_evaluation_result.h"
#include "third_party/blink/renderer/bindings/core/v8/script_value.h"
#include "third_party/blink/renderer/bindings/core/v8/v8_binding_for_core.h"
#include "third_party/blink/renderer/bindings/core/v8/worker_or_worklet_script_controller.h"
#include "third_party/blink/renderer/core/frame/local_dom_window.h"
#include "third_party/blink/renderer/core/probe/core_probes.h"
#include "third_party/blink/renderer/core/script/module_record_resolver.h"
#include "third_party/blink/renderer/core/script/script.h"
#include "third_party/blink/renderer/core/workers/worker_or_worklet_global_scope.h"
#include "third_party/blink/renderer/platform/bindings/script_state.h"
#include "third_party/blink/renderer/platform/wtf/text/text_position.h"
#include "v8/include/v8.h"
namespace blink {
ModuleScript::ModuleScript(Modulator* settings_object,
v8::Local<v8::Module> record,
const KURL& source_url,
const KURL& base_url,
const ScriptFetchOptions& fetch_options,
const TextPosition& start_position)
: … { … }
v8::Local<v8::Module> ModuleScript::V8Module() const { … }
bool ModuleScript::HasEmptyRecord() const { … }
void ModuleScript::SetParseErrorAndClearRecord(ScriptValue error) { … }
ScriptValue ModuleScript::CreateParseError() const { … }
void ModuleScript::SetErrorToRethrow(ScriptValue error) { … }
ScriptValue ModuleScript::CreateErrorToRethrow() const { … }
KURL ModuleScript::ResolveModuleSpecifier(const String& module_request,
String* failure_reason) const { … }
void ModuleScript::Trace(Visitor* visitor) const { … }
ScriptEvaluationResult ModuleScript::RunScriptOnScriptStateAndReturnValue(
ScriptState* script_state,
ExecuteScriptPolicy execute_script_policy,
V8ScriptRunner::RethrowErrorsOption rethrow_errors) { … }
std::ostream& operator<<(std::ostream& stream,
const ModuleScript& module_script) { … }
}