![]() |
v8
10.1.124 (node 18.2.0)
V8 is Google's open source JavaScript engine
|
#include <v8-script.h>


Public Types | |
| enum | Status { kUninstantiated , kInstantiating , kInstantiated , kEvaluating , kEvaluated , kErrored } |
| using | ResolveModuleCallback = MaybeLocal< Module >(*)(Local< Context > context, Local< String > specifier, Local< FixedArray > import_assertions, Local< Module > referrer) |
| using | SyntheticModuleEvaluationSteps = MaybeLocal< Value >(*)(Local< Context > context, Local< Module > module) |
Public Member Functions | |
| Status | GetStatus () const |
| Local< Value > | GetException () const |
| Local< FixedArray > | GetModuleRequests () const |
| Location | SourceOffsetToLocation (int offset) const |
| int | GetIdentityHash () const |
| V8_WARN_UNUSED_RESULT Maybe< bool > | InstantiateModule (Local< Context > context, ResolveModuleCallback callback) |
| V8_WARN_UNUSED_RESULT MaybeLocal< Value > | Evaluate (Local< Context > context) |
| Local< Value > | GetModuleNamespace () |
| Local< UnboundModuleScript > | GetUnboundModuleScript () |
| int | ScriptId () const |
| bool | IsGraphAsync () const |
| bool | IsSourceTextModule () const |
| bool | IsSyntheticModule () const |
| V8_WARN_UNUSED_RESULT Maybe< bool > | SetSyntheticModuleExport (Isolate *isolate, Local< String > export_name, Local< Value > export_value) |
Public Member Functions inherited from Data | |
| bool | IsValue () const |
| bool | IsModule () const |
| bool | IsFixedArray () const |
| bool | IsPrivate () const |
| bool | IsObjectTemplate () const |
| bool | IsFunctionTemplate () const |
| bool | IsContext () const |
Static Public Member Functions | |
| static Local< Module > | CreateSyntheticModule (Isolate *isolate, Local< String > module_name, const std::vector< Local< String >> &export_names, SyntheticModuleEvaluationSteps evaluation_steps) |
| static V8_INLINE Module * | Cast (Data *data) |
A compiled JavaScript module.
Definition at line 147 of file v8-script.h.
| using ResolveModuleCallback = MaybeLocal<Module> (*)( Local<Context> context, Local<String> specifier, Local<FixedArray> import_assertions, Local<Module> referrer) |
Definition at line 191 of file v8-script.h.
| using SyntheticModuleEvaluationSteps = MaybeLocal<Value> (*)(Local<Context> context, Local<Module> module) |
Definition at line 264 of file v8-script.h.
| enum Status |
The different states a module can be in.
This corresponds to the states used in ECMAScript except that "evaluated" is split into kEvaluated and kErrored, indicating success and failure, respectively.
| Enumerator | |
|---|---|
| kUninstantiated | |
| kInstantiating | |
| kInstantiated | |
| kEvaluating | |
| kEvaluated | |
| kErrored | |
Definition at line 156 of file v8-script.h.
Definition at line 739 of file v8-script.h.
|
static |
Creates a new SyntheticModule with the specified export names, where evaluation_steps will be executed upon module evaluation. export_names must not contain duplicates. module_name is used solely for logging/debugging and doesn't affect module behavior.
| V8_WARN_UNUSED_RESULT MaybeLocal<Value> Evaluate | ( | Local< Context > | context | ) |
Evaluates the module and its dependencies.
If status is kInstantiated, run the module's code and return a Promise object. On success, set status to kEvaluated and resolve the Promise with the completion value; on failure, set status to kErrored and reject the Promise with the error.
If IsGraphAsync() is false, the returned Promise is settled.
For a module in kErrored status, this returns the corresponding exception.
| int GetIdentityHash | ( | ) | const |
Returns the identity hash for this object.
Returns the namespace object of this module.
The module's status must be at least kInstantiated.
| Local<FixedArray> GetModuleRequests | ( | ) | const |
Returns the ModuleRequests for this module.
| Status GetStatus | ( | ) | const |
Returns the module's current status.
| Local<UnboundModuleScript> GetUnboundModuleScript | ( | ) |
Returns the corresponding context-unbound module script.
The module must be unevaluated, i.e. its status must not be kEvaluating, kEvaluated or kErrored.
| V8_WARN_UNUSED_RESULT Maybe<bool> InstantiateModule | ( | Local< Context > | context, |
| ResolveModuleCallback | callback | ||
| ) |
Instantiates the module and its dependencies.
Returns an empty Maybe<bool> if an exception occurred during instantiation. (In the case where the callback throws an exception, that exception is propagated.)
| bool IsGraphAsync | ( | ) | const |
Returns whether this module or any of its requested modules is async, i.e. contains top-level await.
The module's status must be at least kInstantiated.
| bool IsSourceTextModule | ( | ) | const |
Returns whether the module is a SourceTextModule.
| bool IsSyntheticModule | ( | ) | const |
Returns whether the module is a SyntheticModule.
| int ScriptId | ( | ) | const |
Returns the underlying script's id.
The module must be a SourceTextModule and must not have a kErrored status.
| V8_WARN_UNUSED_RESULT Maybe<bool> SetSyntheticModuleExport | ( | Isolate * | isolate, |
| Local< String > | export_name, | ||
| Local< Value > | export_value | ||
| ) |
Set this module's exported value for the name export_name to the specified export_value. This method must be called only on Modules created via CreateSyntheticModule. An error will be thrown if export_name is not one of the export_names that were passed in that CreateSyntheticModule call. Returns Just(true) on success, Nothing<bool>() if an error was thrown.
| Location SourceOffsetToLocation | ( | int | offset | ) | const |
For the given source text offset in this module, returns the corresponding Location with line and column numbers.