|
typedef uint32_t | SnapshotObjectId |
|
typedef uintptr_t | PersistentContainerValue |
|
template<class T > |
using | Handle = Local< T > |
|
template<class T > |
using | UniquePersistent = Global< T > |
|
typedef void(* | AccessorGetterCallback) (Local< String > property, const PropertyCallbackInfo< Value > &info) |
|
typedef void(* | AccessorNameGetterCallback) (Local< Name > property, const PropertyCallbackInfo< Value > &info) |
|
typedef void(* | AccessorSetterCallback) (Local< String > property, Local< Value > value, const PropertyCallbackInfo< void > &info) |
|
typedef void(* | AccessorNameSetterCallback) (Local< Name > property, Local< Value > value, const PropertyCallbackInfo< void > &info) |
|
typedef void(* | FunctionCallback) (const FunctionCallbackInfo< Value > &info) |
|
typedef void(* | NamedPropertyGetterCallback) (Local< String > property, const PropertyCallbackInfo< Value > &info) |
|
typedef void(* | NamedPropertySetterCallback) (Local< String > property, Local< Value > value, const PropertyCallbackInfo< Value > &info) |
|
typedef void(* | NamedPropertyQueryCallback) (Local< String > property, const PropertyCallbackInfo< Integer > &info) |
|
typedef void(* | NamedPropertyDeleterCallback) (Local< String > property, const PropertyCallbackInfo< Boolean > &info) |
|
typedef void(* | NamedPropertyEnumeratorCallback) (const PropertyCallbackInfo< Array > &info) |
|
typedef void(* | GenericNamedPropertyGetterCallback) (Local< Name > property, const PropertyCallbackInfo< Value > &info) |
|
typedef void(* | GenericNamedPropertySetterCallback) (Local< Name > property, Local< Value > value, const PropertyCallbackInfo< Value > &info) |
|
typedef void(* | GenericNamedPropertyQueryCallback) (Local< Name > property, const PropertyCallbackInfo< Integer > &info) |
|
typedef void(* | GenericNamedPropertyDeleterCallback) (Local< Name > property, const PropertyCallbackInfo< Boolean > &info) |
|
typedef void(* | GenericNamedPropertyEnumeratorCallback) (const PropertyCallbackInfo< Array > &info) |
|
typedef void(* | GenericNamedPropertyDefinerCallback) (Local< Name > property, const PropertyDescriptor &desc, const PropertyCallbackInfo< Value > &info) |
|
typedef void(* | GenericNamedPropertyDescriptorCallback) (Local< Name > property, const PropertyCallbackInfo< Value > &info) |
|
typedef void(* | IndexedPropertyGetterCallback) (uint32_t index, const PropertyCallbackInfo< Value > &info) |
|
typedef void(* | IndexedPropertySetterCallback) (uint32_t index, Local< Value > value, const PropertyCallbackInfo< Value > &info) |
|
typedef void(* | IndexedPropertyQueryCallback) (uint32_t index, const PropertyCallbackInfo< Integer > &info) |
|
typedef void(* | IndexedPropertyDeleterCallback) (uint32_t index, const PropertyCallbackInfo< Boolean > &info) |
|
typedef void(* | IndexedPropertyEnumeratorCallback) (const PropertyCallbackInfo< Array > &info) |
|
typedef void(* | IndexedPropertyDefinerCallback) (uint32_t index, const PropertyDescriptor &desc, const PropertyCallbackInfo< Value > &info) |
|
typedef void(* | IndexedPropertyDescriptorCallback) (uint32_t index, const PropertyCallbackInfo< Value > &info) |
|
typedef bool(* | AccessCheckCallback) (Local< Context > accessing_context, Local< Object > accessed_object, Local< Value > data) |
|
typedef void(* | FatalErrorCallback) (const char *location, const char *message) |
|
typedef void(* | OOMErrorCallback) (const char *location, bool is_heap_oom) |
|
typedef void(* | MessageCallback) (Local< Message > message, Local< Value > data) |
|
typedef void(* | LogEventCallback) (const char *name, int event) |
|
typedef int *(* | CounterLookupCallback) (const char *name) |
|
typedef void *(* | CreateHistogramCallback) (const char *name, int min, int max, size_t buckets) |
|
typedef void(* | AddHistogramSampleCallback) (void *histogram, int sample) |
|
typedef void(* | BeforeCallEnteredCallback) (Isolate *) |
|
typedef void(* | CallCompletedCallback) (Isolate *) |
|
typedef void(* | DeprecatedCallCompletedCallback) () |
|
typedef MaybeLocal< Promise >(* | HostImportModuleDynamicallyCallback) (Local< Context > context, Local< String > referrer, Local< String > specifier) |
|
typedef void(* | PromiseHook) (PromiseHookType type, Local< Promise > promise, Local< Value > parent) |
|
typedef void(* | PromiseRejectCallback) (PromiseRejectMessage message) |
|
typedef void(* | MicrotasksCompletedCallback) (Isolate *) |
|
typedef void(* | MicrotaskCallback) (void *data) |
|
typedef void(* | FailedAccessCheckCallback) (Local< Object > target, AccessType type, Local< Value > data) |
|
typedef bool(* | AllowCodeGenerationFromStringsCallback) (Local< Context > context, Local< String > source) |
|
typedef bool(* | ExtensionCallback) (const FunctionCallbackInfo< Value > &) |
|
typedef void(* | ApiImplementationCallback) (const FunctionCallbackInfo< Value > &) |
|
typedef void(* | GCCallback) (GCType type, GCCallbackFlags flags) |
|
typedef void(* | InterruptCallback) (Isolate *isolate, void *data) |
|
typedef void(* | FunctionEntryHook) (uintptr_t function, uintptr_t return_addr_location) |
|
typedef void(* | JitCodeEventHandler) (const JitCodeEvent *event) |
|
typedef SerializeInternalFieldsCallback | SerializeEmbedderFieldsCallback |
|
typedef DeserializeInternalFieldsCallback | DeserializeEmbedderFieldsCallback |
|
typedef bool(* | EntropySource) (unsigned char *buffer, size_t length) |
|
typedef uintptr_t(* | ReturnAddressLocationResolver) (uintptr_t return_addr_location) |
|
|
enum | DebugEvent {
Break = 1
, Exception = 2
, AfterCompile = 3
, CompileError = 4
,
AsyncTaskEvent = 5
} |
|
enum | PersistentContainerCallbackType { kNotWeak
, kWeakWithParameter
, kWeakWithInternalFields
, kWeak = kWeakWithParameter
} |
|
enum class | WeakCallbackType { kParameter
, kInternalFields
, kFinalizer
} |
|
enum | StateTag {
JS
, GC
, PARSER
, BYTECODE_COMPILER
,
COMPILER
, OTHER
, EXTERNAL
, IDLE
} |
|
enum class | NewStringType { kNormal
, kInternalized
} |
|
enum | PropertyAttribute { None = 0
, ReadOnly = 1 << 0
, DontEnum = 1 << 1
, DontDelete = 1 << 2
} |
|
enum | AccessControl { DEFAULT = 0
, ALL_CAN_READ = 1
, ALL_CAN_WRITE = 1 << 1
, PROHIBITS_OVERWRITING = 1 << 2
} |
|
enum | PropertyFilter {
ALL_PROPERTIES = 0
, ONLY_WRITABLE = 1
, ONLY_ENUMERABLE = 2
, ONLY_CONFIGURABLE = 4
,
SKIP_STRINGS = 8
, SKIP_SYMBOLS = 16
} |
|
enum class | KeyCollectionMode { kOwnOnly
, kIncludePrototypes
} |
|
enum class | IndexFilter { kIncludeIndices
, kSkipIndices
} |
|
enum class | IntegrityLevel { kFrozen
, kSealed
} |
|
enum class | ConstructorBehavior { kThrow
, kAllow
} |
|
enum class | ArrayBufferCreationMode { kInternalized
, kExternalized
} |
|
enum | Intrinsic |
|
enum | AccessType {
ACCESS_GET
, ACCESS_SET
, ACCESS_HAS
, ACCESS_DELETE
,
ACCESS_KEYS
} |
|
enum class | PropertyHandlerFlags { kNone = 0
, kAllCanRead = 1
, kNonMasking = 1 << 1
, kOnlyInterceptStrings = 1 << 2
} |
|
enum | ObjectSpace {
kObjectSpaceNewSpace = 1 << 0
, kObjectSpaceOldSpace = 1 << 1
, kObjectSpaceCodeSpace = 1 << 2
, kObjectSpaceMapSpace = 1 << 3
,
kObjectSpaceLoSpace = 1 << 4
, kObjectSpaceAll
} |
|
enum | AllocationAction { kAllocationActionAllocate = 1 << 0
, kAllocationActionFree = 1 << 1
, kAllocationActionAll = kAllocationActionAllocate | kAllocationActionFree
} |
|
enum class | PromiseHookType { kInit
, kResolve
, kBefore
, kAfter
} |
|
enum | PromiseRejectEvent { kPromiseRejectWithNoHandler = 0
, kPromiseHandlerAddedAfterReject = 1
} |
|
enum class | MicrotasksPolicy { kExplicit
, kScoped
, kAuto
} |
|
enum | GCType {
kGCTypeScavenge = 1 << 0
, kGCTypeMarkSweepCompact = 1 << 1
, kGCTypeIncrementalMarking = 1 << 2
, kGCTypeProcessWeakCallbacks = 1 << 3
,
kGCTypeAll
} |
|
enum | GCCallbackFlags {
kNoGCCallbackFlags = 0
, kGCCallbackFlagConstructRetainedObjectInfos = 1 << 1
, kGCCallbackFlagForced = 1 << 2
, kGCCallbackFlagSynchronousPhantomCallbackProcessing = 1 << 3
,
kGCCallbackFlagCollectAllAvailableGarbage = 1 << 4
, kGCCallbackFlagCollectAllExternalMemory = 1 << 5
, kGCCallbackScheduleIdleGarbageCollection = 1 << 6
} |
|
enum | RAILMode { PERFORMANCE_RESPONSE
, PERFORMANCE_ANIMATION
, PERFORMANCE_IDLE
, PERFORMANCE_LOAD
} |
|
enum | JitCodeEventOptions { kJitCodeEventDefault = 0
, kJitCodeEventEnumExisting = 1
} |
|
enum class | MemoryPressureLevel { kNone
, kModerate
, kCritical
} |
|
ATTENTION: The debugger API exposed by this file is deprecated and will be removed by the end of 2017. Please use the V8 inspector declared in include/v8-inspector.h instead.
Profiler support for the V8 JavaScript engine.
Testing support for the V8 JavaScript engine.
Support for Persistent containers.
C++11 embedders can use STL containers with Global values, but pre-C++11 does not support the required move semantic and hence may want these container classes.
Compile-time constants.
This header provides access to information about the value serializer at compile time, without declaring or defining any symbols that require linking to V8.
The v8 JavaScript engine.
Interceptor for defineProperty requests on an object.
Use info.GetReturnValue()
to indicate whether the request was intercepted or not. If the definer successfully intercepts the request, i.e., if the request should not be further executed, call info.GetReturnValue().Set(value)
. If the definer did not intercept the request, i.e., if the request should be handled as if no interceptor is present, do not not call Set()
.
- Parameters
-
property | The name of the property for which the request was intercepted. |
desc | The property descriptor which is used to define the property if the request is not intercepted. |
info | Information about the intercepted request, such as isolate, receiver, return value, or whether running in ‘'use strict’mode. See PropertyCallbackInfo`. |
See also ObjectTemplate::SetHandler
.
Definition at line 5274 of file v8.h.
Interceptor for delete requests on an object.
Use info.GetReturnValue()
to indicate whether the request was intercepted or not. If the deleter successfully intercepts the request, i.e., if the request should not be further executed, call info.GetReturnValue().Set(value)
with a boolean value
. The value
is used as the return value of delete
.
- Parameters
-
property | The name of the property for which the request was intercepted. |
info | Information about the intercepted request, such as isolate, receiver, return value, or whether running in ‘'use strict’mode. See PropertyCallbackInfo`. |
- Note
- If you need to mimic the behavior of
delete
, i.e., throw in strict mode instead of returning false, use info.ShouldThrowOnError()
to determine if you are in strict mode.
See also ObjectTemplate::SetHandler.
Definition at line 5244 of file v8.h.
Interceptor for getOwnPropertyDescriptor requests on an object.
Use info.GetReturnValue().Set()
to set the return value of the intercepted request. The return value must be an object that can be converted to a PropertyDescriptor, e.g., a v8::value
returned from v8::Object::getOwnPropertyDescriptor
.
- Parameters
-
property | The name of the property for which the request was intercepted. \info Information about the intercepted request, such as isolate, receiver, return value, or whether running in ‘'use strict’mode. See PropertyCallbackInfo`. |
- Note
- If GetOwnPropertyDescriptor is intercepted, it will always return true, i.e., indicate that the property was found.
See also ObjectTemplate::SetHandler
.
Definition at line 5297 of file v8.h.
Intercepts all requests that query the attributes of the property, e.g., getOwnPropertyDescriptor(), propertyIsEnumerable(), and defineProperty().
Use info.GetReturnValue().Set(value)
to set the property attributes. The value is an interger encoding a v8::PropertyAttribute
.
- Parameters
-
property | The name of the property for which the request was intercepted. |
info | Information about the intercepted request, such as isolate, receiver, return value, or whether running in ‘'use strict’mode. See PropertyCallbackInfo`. |
- Note
- Some functions query the property attributes internally, even though they do not return the attributes. For example,
hasOwnProperty()
can trigger this interceptor depending on the state of the object.
See also ObjectTemplate::SetHandler.
Definition at line 5220 of file v8.h.
Interceptor for set requests on an object.
Use info.GetReturnValue()
to indicate whether the request was intercepted or not. If the setter successfully intercepts the request, i.e., if the request should not be further executed, call info.GetReturnValue().Set(value)
. If the setter did not intercept the request, i.e., if the request should be handled as if no interceptor is present, do not not call Set()
.
- Parameters
-
property | The name of the property for which the request was intercepted. |
value | The value which the property will have if the request is not intercepted. |
info | Information about the intercepted request, such as isolate, receiver, return value, or whether running in ‘'use strict’mode. See PropertyCallbackInfo`. |
See also ObjectTemplate::SetHandler.
Definition at line 5195 of file v8.h.
HostImportDynamicallyCallback is called when we require the embedder to load a module. This is used as part of the dynamic import syntax.
The referrer is the name of the file which calls the dynamic import. The referrer can be used to resolve the module location.
The specifier is the name of the module that should be imported.
The embedder must compile, instantiate, evaluate the Module, and obtain it's namespace object.
The Promise returned from this function is forwarded to userland JavaScript. The embedder must resolve this promise with the module namespace object. In case of an exception, the embedder must reject this promise with the exception. If the promise creation itself fails (e.g. due to stack overflow), the embedder must propagate that exception by returning an empty MaybeLocal.
Definition at line 6222 of file v8.h.
Access control specifications.
Some accessors should be accessible across contexts. These accessors have an explicit access control parameter which specifies the kind of cross-context access that should be allowed.
TODO(dcarney): Remove PROHIBITS_OVERWRITING as it is now unused.
Enumerator |
---|
DEFAULT | |
ALL_CAN_READ | |
ALL_CAN_WRITE | |
PROHIBITS_OVERWRITING | |
Definition at line 3007 of file v8.h.
PromiseHook with type kInit is called when a new promise is created. When a new promise is created as part of the chain in the case of Promise.then or in the intermediate promises created by Promise.{race, all}/AsyncFunctionAwait, we pass the parent promise otherwise we pass undefined.
PromiseHook with type kResolve is called at the beginning of resolve or reject function defined by CreateResolvingFunctions.
PromiseHook with type kBefore is called at the beginning of the PromiseReactionJob.
PromiseHook with type kAfter is called right at the end of the PromiseReactionJob.
Enumerator |
---|
kInit | |
kResolve | |
kBefore | |
kAfter | |
Definition at line 6241 of file v8.h.