v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
v8::Object Class Reference

#include <v8-object.h>

Inheritance diagram for v8::Object:
Collaboration diagram for v8::Object:

Public Member Functions

V8_WARN_UNUSED_RESULT Maybe< bool > Set (Local< Context > context, Local< Value > key, Local< Value > value)
 
V8_WARN_UNUSED_RESULT Maybe< bool > Set (Local< Context > context, Local< Value > key, Local< Value > value, MaybeLocal< Object > receiver)
 
V8_WARN_UNUSED_RESULT Maybe< bool > Set (Local< Context > context, uint32_t index, Local< Value > value)
 
V8_WARN_UNUSED_RESULT Maybe< bool > CreateDataProperty (Local< Context > context, Local< Name > key, Local< Value > value)
 
V8_WARN_UNUSED_RESULT Maybe< bool > CreateDataProperty (Local< Context > context, uint32_t index, Local< Value > value)
 
V8_WARN_UNUSED_RESULT Maybe< bool > DefineOwnProperty (Local< Context > context, Local< Name > key, Local< Value > value, PropertyAttribute attributes=None)
 
V8_WARN_UNUSED_RESULT Maybe< bool > DefineProperty (Local< Context > context, Local< Name > key, PropertyDescriptor &descriptor)
 
V8_WARN_UNUSED_RESULT MaybeLocal< ValueGet (Local< Context > context, Local< Value > key)
 
V8_WARN_UNUSED_RESULT MaybeLocal< ValueGet (Local< Context > context, Local< Value > key, MaybeLocal< Object > receiver)
 
V8_WARN_UNUSED_RESULT MaybeLocal< ValueGet (Local< Context > context, uint32_t index)
 
V8_WARN_UNUSED_RESULT Maybe< PropertyAttributeGetPropertyAttributes (Local< Context > context, Local< Value > key)
 
V8_WARN_UNUSED_RESULT MaybeLocal< ValueGetOwnPropertyDescriptor (Local< Context > context, Local< Name > key)
 
V8_WARN_UNUSED_RESULT Maybe< bool > Has (Local< Context > context, Local< Value > key)
 
V8_WARN_UNUSED_RESULT Maybe< bool > Delete (Local< Context > context, Local< Value > key)
 
V8_WARN_UNUSED_RESULT Maybe< bool > Has (Local< Context > context, uint32_t index)
 
V8_WARN_UNUSED_RESULT Maybe< bool > Delete (Local< Context > context, uint32_t index)
 
void SetAccessorProperty (Local< Name > name, Local< Function > getter, Local< Function > setter=Local< Function >(), PropertyAttribute attributes=None)
 
V8_WARN_UNUSED_RESULT Maybe< bool > SetNativeDataProperty (Local< Context > context, Local< Name > name, AccessorNameGetterCallback getter, AccessorNameSetterCallback setter=nullptr, Local< Value > data=Local< Value >(), PropertyAttribute attributes=None, SideEffectType getter_side_effect_type=SideEffectType::kHasSideEffect, SideEffectType setter_side_effect_type=SideEffectType::kHasSideEffect)
 
V8_WARN_UNUSED_RESULT Maybe< bool > SetLazyDataProperty (Local< Context > context, Local< Name > name, AccessorNameGetterCallback getter, Local< Value > data=Local< Value >(), PropertyAttribute attributes=None, SideEffectType getter_side_effect_type=SideEffectType::kHasSideEffect, SideEffectType setter_side_effect_type=SideEffectType::kHasSideEffect)
 
Maybe< bool > HasPrivate (Local< Context > context, Local< Private > key)
 
Maybe< bool > SetPrivate (Local< Context > context, Local< Private > key, Local< Value > value)
 
Maybe< bool > DeletePrivate (Local< Context > context, Local< Private > key)
 
MaybeLocal< ValueGetPrivate (Local< Context > context, Local< Private > key)
 
V8_WARN_UNUSED_RESULT MaybeLocal< ArrayGetPropertyNames (Local< Context > context)
 
V8_WARN_UNUSED_RESULT MaybeLocal< ArrayGetPropertyNames (Local< Context > context, KeyCollectionMode mode, PropertyFilter property_filter, IndexFilter index_filter, KeyConversionMode key_conversion=KeyConversionMode::kKeepNumbers)
 
V8_WARN_UNUSED_RESULT MaybeLocal< ArrayGetOwnPropertyNames (Local< Context > context)
 
V8_WARN_UNUSED_RESULT MaybeLocal< ArrayGetOwnPropertyNames (Local< Context > context, PropertyFilter filter, KeyConversionMode key_conversion=KeyConversionMode::kKeepNumbers)
 
 V8_DEPRECATE_SOON ("V8 will stop providing access to hidden prototype (i.e. " "JSGlobalObject). Use GetPrototypeV2() instead. " "See http://crbug.com/333672197.") Local< Value > GetPrototype()
 
Local< ValueGetPrototypeV2 ()
 
 V8_DEPRECATE_SOON ("V8 will stop providing access to hidden prototype (i.e. " "JSGlobalObject). Use SetPrototypeV2() instead. " "See http://crbug.com/333672197.") V8_WARN_UNUSED_RESULT Maybe< bool > SetPrototype(Local< Context > context
 
V8_WARN_UNUSED_RESULT Maybe< bool > SetPrototypeV2 (Local< Context > context, Local< Value > prototype)
 
Local< ObjectFindInstanceInPrototypeChain (Local< FunctionTemplate > tmpl)
 
V8_WARN_UNUSED_RESULT MaybeLocal< StringObjectProtoToString (Local< Context > context)
 
Local< StringGetConstructorName ()
 
Maybe< bool > SetIntegrityLevel (Local< Context > context, IntegrityLevel level)
 
int InternalFieldCount () const
 
V8_INLINE Local< DataGetInternalField (int index)
 
void SetInternalField (int index, Local< Data > data)
 
V8_INLINE void * GetAlignedPointerFromInternalField (int index)
 
V8_INLINE void * GetAlignedPointerFromInternalField (v8::Isolate *isolate, int index)
 
void SetAlignedPointerInInternalField (int index, void *value)
 
void SetAlignedPointerInInternalFields (int argc, int indices[], void *values[])
 
V8_WARN_UNUSED_RESULT Maybe< bool > HasOwnProperty (Local< Context > context, Local< Name > key)
 
V8_WARN_UNUSED_RESULT Maybe< bool > HasOwnProperty (Local< Context > context, uint32_t index)
 
V8_WARN_UNUSED_RESULT Maybe< bool > HasRealNamedProperty (Local< Context > context, Local< Name > key)
 
V8_WARN_UNUSED_RESULT Maybe< bool > HasRealIndexedProperty (Local< Context > context, uint32_t index)
 
V8_WARN_UNUSED_RESULT Maybe< bool > HasRealNamedCallbackProperty (Local< Context > context, Local< Name > key)
 
V8_WARN_UNUSED_RESULT MaybeLocal< ValueGetRealNamedPropertyInPrototypeChain (Local< Context > context, Local< Name > key)
 
V8_WARN_UNUSED_RESULT Maybe< PropertyAttributeGetRealNamedPropertyAttributesInPrototypeChain (Local< Context > context, Local< Name > key)
 
V8_WARN_UNUSED_RESULT MaybeLocal< ValueGetRealNamedProperty (Local< Context > context, Local< Name > key)
 
V8_WARN_UNUSED_RESULT Maybe< PropertyAttributeGetRealNamedPropertyAttributes (Local< Context > context, Local< Name > key)
 
bool HasNamedLookupInterceptor () const
 
bool HasIndexedLookupInterceptor () const
 
int GetIdentityHash ()
 
Local< ObjectClone (v8::Isolate *isolate)
 
Local< ObjectClone ()
 
MaybeLocal< ContextGetCreationContext (v8::Isolate *isolate)
 
MaybeLocal< ContextGetCreationContext ()
 
Local< ContextGetCreationContextChecked (v8::Isolate *isolate)
 
Local< ContextGetCreationContextChecked ()
 
void * GetAlignedPointerFromEmbedderDataInCreationContext (v8::Isolate *isolate, int index)
 
void * GetAlignedPointerFromEmbedderDataInCreationContext (int index)
 
bool IsCallable () const
 
bool IsConstructor () const
 
bool IsApiWrapper () const
 
bool IsUndetectable () const
 
V8_WARN_UNUSED_RESULT MaybeLocal< ValueCallAsFunction (Local< Context > context, Local< Value > recv, int argc, Local< Value > argv[])
 
V8_WARN_UNUSED_RESULT MaybeLocal< ValueCallAsConstructor (Local< Context > context, int argc, Local< Value > argv[])
 
IsolateGetIsolate ()
 
MaybeLocal< ArrayPreviewEntries (bool *is_key_value)
 
bool IsCodeLike (Isolate *isolate) const
 
template<CppHeapPointerTag tag, typename T >
TUnwrap (v8::Isolate *isolate, const v8::Local< v8::Object > &wrapper)
 
template<CppHeapPointerTag tag, typename T >
TUnwrap (v8::Isolate *isolate, const PersistentBase< Object > &wrapper)
 
template<CppHeapPointerTag tag, typename T >
TUnwrap (v8::Isolate *isolate, const BasicTracedReference< Object > &wrapper)
 
template<typename T >
TUnwrap (v8::Isolate *isolate, const v8::Local< v8::Object > &wrapper, CppHeapPointerTagRange tag_range)
 
template<typename T >
TUnwrap (v8::Isolate *isolate, const PersistentBase< Object > &wrapper, CppHeapPointerTagRange tag_range)
 
template<typename T >
TUnwrap (v8::Isolate *isolate, const BasicTracedReference< Object > &wrapper, CppHeapPointerTagRange tag_range)
 
template<CppHeapPointerTag tag>
void Wrap (v8::Isolate *isolate, const v8::Local< v8::Object > &wrapper, void *wrappable)
 
template<CppHeapPointerTag tag>
void Wrap (v8::Isolate *isolate, const PersistentBase< Object > &wrapper, void *wrappable)
 
template<CppHeapPointerTag tag>
void Wrap (v8::Isolate *isolate, const BasicTracedReference< Object > &wrapper, void *wrappable)
 
- Public Member Functions inherited from v8::Value
V8_INLINE bool IsUndefined () const
 
V8_INLINE bool IsNull () const
 
V8_INLINE bool IsNullOrUndefined () const
 
V8_INLINE bool IsTrue () const
 
V8_INLINE bool IsFalse () const
 
bool IsName () const
 
V8_INLINE bool IsString () const
 
bool IsSymbol () const
 
bool IsFunction () const
 
bool IsArray () const
 
bool IsObject () const
 
bool IsBigInt () const
 
bool IsBoolean () const
 
bool IsNumber () const
 
bool IsExternal () const
 
bool IsInt32 () const
 
bool IsUint32 () const
 
bool IsDate () const
 
bool IsArgumentsObject () const
 
bool IsBigIntObject () const
 
bool IsBooleanObject () const
 
bool IsNumberObject () const
 
bool IsStringObject () const
 
bool IsSymbolObject () const
 
bool IsNativeError () const
 
bool IsRegExp () const
 
bool IsAsyncFunction () const
 
bool IsGeneratorFunction () const
 
bool IsGeneratorObject () const
 
bool IsPromise () const
 
bool IsMap () const
 
bool IsSet () const
 
bool IsMapIterator () const
 
bool IsSetIterator () const
 
bool IsWeakMap () const
 
bool IsWeakSet () const
 
bool IsWeakRef () const
 
bool IsArrayBuffer () const
 
bool IsArrayBufferView () const
 
bool IsTypedArray () const
 
bool IsUint8Array () const
 
bool IsUint8ClampedArray () const
 
bool IsInt8Array () const
 
bool IsUint16Array () const
 
bool IsInt16Array () const
 
bool IsUint32Array () const
 
bool IsInt32Array () const
 
bool IsFloat16Array () const
 
bool IsFloat32Array () const
 
bool IsFloat64Array () const
 
bool IsBigInt64Array () const
 
bool IsBigUint64Array () const
 
bool IsDataView () const
 
bool IsSharedArrayBuffer () const
 
bool IsProxy () const
 
bool IsWasmMemoryObject () const
 
bool IsWasmMemoryMapDescriptor () const
 
bool IsWasmModuleObject () const
 
bool IsWasmNull () const
 
bool IsModuleNamespaceObject () const
 
bool IsPrimitive () const
 
V8_WARN_UNUSED_RESULT MaybeLocal< PrimitiveToPrimitive (Local< Context > context) const
 
V8_WARN_UNUSED_RESULT MaybeLocal< NumericToNumeric (Local< Context > context) const
 
V8_WARN_UNUSED_RESULT MaybeLocal< BigIntToBigInt (Local< Context > context) const
 
V8_WARN_UNUSED_RESULT MaybeLocal< NumberToNumber (Local< Context > context) const
 
V8_WARN_UNUSED_RESULT MaybeLocal< StringToString (Local< Context > context) const
 
V8_WARN_UNUSED_RESULT MaybeLocal< StringToDetailString (Local< Context > context) const
 
V8_WARN_UNUSED_RESULT MaybeLocal< ObjectToObject (Local< Context > context) const
 
V8_WARN_UNUSED_RESULT MaybeLocal< IntegerToInteger (Local< Context > context) const
 
V8_WARN_UNUSED_RESULT MaybeLocal< Uint32ToUint32 (Local< Context > context) const
 
V8_WARN_UNUSED_RESULT MaybeLocal< Int32ToInt32 (Local< Context > context) const
 
Local< BooleanToBoolean (Isolate *isolate) const
 
V8_WARN_UNUSED_RESULT MaybeLocal< Uint32ToArrayIndex (Local< Context > context) const
 
bool BooleanValue (Isolate *isolate) const
 
V8_WARN_UNUSED_RESULT Maybe< double > NumberValue (Local< Context > context) const
 
V8_WARN_UNUSED_RESULT Maybe< int64_t > IntegerValue (Local< Context > context) const
 
V8_WARN_UNUSED_RESULT Maybe< uint32_t > Uint32Value (Local< Context > context) const
 
V8_WARN_UNUSED_RESULT Maybe< int32_t > Int32Value (Local< Context > context) const
 
V8_WARN_UNUSED_RESULT Maybe< bool > Equals (Local< Context > context, Local< Value > that) const
 
bool StrictEquals (Local< Value > that) const
 
bool SameValue (Local< Value > that) const
 
Local< StringTypeOf (Isolate *)
 
Maybe< bool > InstanceOf (Local< Context > context, Local< Object > object)
 
uint32_t GetHash ()
 
template<>
V8_INLINE ValueCast (Data *value)
 
- Public Member Functions inherited from v8::Data
bool IsValue () const
 
bool IsModule () const
 
bool IsModuleRequest () const
 
bool IsFixedArray () const
 
bool IsPrivate () const
 
bool IsObjectTemplate () const
 
bool IsFunctionTemplate () const
 
bool IsContext () const
 

Static Public Member Functions

static V8_INLINE int InternalFieldCount (const PersistentBase< Object > &object)
 
static V8_INLINE int InternalFieldCount (const BasicTracedReference< Object > &object)
 
static V8_INLINE void * GetAlignedPointerFromInternalField (const PersistentBase< Object > &object, int index)
 
static V8_INLINE void * GetAlignedPointerFromInternalField (const BasicTracedReference< Object > &object, int index)
 
template<CppHeapPointerTag tag, typename T = void>
static V8_INLINE TUnwrap (v8::Isolate *isolate, const v8::Local< v8::Object > &wrapper)
 
template<CppHeapPointerTag tag, typename T = void>
static V8_INLINE TUnwrap (v8::Isolate *isolate, const PersistentBase< Object > &wrapper)
 
template<CppHeapPointerTag tag, typename T = void>
static V8_INLINE TUnwrap (v8::Isolate *isolate, const BasicTracedReference< Object > &wrapper)
 
template<typename T = void>
static V8_INLINE TUnwrap (v8::Isolate *isolate, const v8::Local< v8::Object > &wrapper, CppHeapPointerTagRange tag_range)
 
template<typename T = void>
static V8_INLINE TUnwrap (v8::Isolate *isolate, const PersistentBase< Object > &wrapper, CppHeapPointerTagRange tag_range)
 
template<typename T = void>
static V8_INLINE TUnwrap (v8::Isolate *isolate, const BasicTracedReference< Object > &wrapper, CppHeapPointerTagRange tag_range)
 
template<CppHeapPointerTag tag>
static V8_INLINE void Wrap (v8::Isolate *isolate, const v8::Local< v8::Object > &wrapper, void *wrappable)
 
template<CppHeapPointerTag tag>
static V8_INLINE void Wrap (v8::Isolate *isolate, const PersistentBase< Object > &wrapper, void *wrappable)
 
template<CppHeapPointerTag tag>
static V8_INLINE void Wrap (v8::Isolate *isolate, const BasicTracedReference< Object > &wrapper, void *wrappable)
 
static V8_INLINE void Wrap (v8::Isolate *isolate, const v8::Local< v8::Object > &wrapper, void *wrappable, CppHeapPointerTag tag)
 
static V8_INLINE void Wrap (v8::Isolate *isolate, const PersistentBase< Object > &wrapper, void *wrappable, CppHeapPointerTag tag)
 
static V8_INLINE void Wrap (v8::Isolate *isolate, const BasicTracedReference< Object > &wrapper, void *wrappable, CppHeapPointerTag tag)
 
static V8_INLINE MaybeLocal< ContextGetCreationContext (v8::Isolate *isolate, const PersistentBase< Object > &object)
 
static V8_INLINE MaybeLocal< ContextGetCreationContext (const PersistentBase< Object > &object)
 
static V8_INLINE IsolateGetIsolate (const TracedReference< Object > &handle)
 
static Local< ObjectNew (Isolate *isolate)
 
static Local< ObjectNew (Isolate *isolate, Local< Value > prototype_or_null, Local< Name > *names, Local< Value > *values, size_t length)
 
static V8_INLINE ObjectCast (Value *obj)
 
- Static Public Member Functions inherited from v8::Value
template<class T >
static V8_INLINE ValueCast (T *value)
 

Public Attributes

Local< Valueprototype
 

Private Member Functions

 Object ()
 
Local< DataSlowGetInternalField (int index)
 
void * SlowGetAlignedPointerFromInternalField (int index)
 
void * SlowGetAlignedPointerFromInternalField (v8::Isolate *isolate, int index)
 

Static Private Member Functions

static void * Unwrap (v8::Isolate *isolate, internal::Address wrapper_obj, CppHeapPointerTagRange tag_range)
 
static void Wrap (v8::Isolate *isolate, internal::Address wrapper_obj, CppHeapPointerTag tag, void *wrappable)
 
static void CheckCast (Value *obj)
 

Detailed Description

A JavaScript object (ECMA-262, 4.3.3)

Definition at line 233 of file v8-object.h.

Constructor & Destructor Documentation

◆ Object()

v8::Object::Object ( )
private

Member Function Documentation

◆ CallAsConstructor()

MaybeLocal< Value > v8::Object::CallAsConstructor ( Local< Context > context,
int argc,
Local< Value > argv[] )

Call an Object as a constructor if a callback is set by the ObjectTemplate::SetCallAsFunctionHandler method. Note: This method behaves like the Function::NewInstance method.

Definition at line 5330 of file api.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ CallAsFunction()

MaybeLocal< Value > v8::Object::CallAsFunction ( Local< Context > context,
Local< Value > recv,
int argc,
Local< Value > argv[] )

Call an Object as a function if a callback is set by the ObjectTemplate::SetCallAsFunctionHandler method.

Definition at line 5311 of file api.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Cast()

Object * v8::Object::Cast ( v8::Value * value)
static

Definition at line 1069 of file v8-object.h.

Here is the call graph for this function:

◆ CheckCast()

void v8::Object::CheckCast ( Value * obj)
staticprivate

Definition at line 3853 of file api.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Clone() [1/2]

Local< v8::Object > v8::Object::Clone ( )

Definition at line 5164 of file api.cc.

Here is the call graph for this function:

◆ Clone() [2/2]

Local< v8::Object > v8::Object::Clone ( v8::Isolate * isolate)

Clone this object with a fast but shallow copy. Values will point to the same values as the original object.

Prefer using version with Isolate parameter.

Definition at line 5155 of file api.cc.

Here is the call graph for this function:

◆ CreateDataProperty() [1/2]

Maybe< bool > v8::Object::CreateDataProperty ( Local< Context > context,
v8::Local< Name > key,
v8::Local< Value > value )

Implements CreateDataProperty(O, P, V), see https://tc39.es/ecma262/#sec-createdataproperty.

Defines a configurable, writable, enumerable property with the given value on the object unless the property already exists and is not configurable or the object is not extensible.

Returns true on success.

Definition at line 4345 of file api.cc.

Here is the call graph for this function:

◆ CreateDataProperty() [2/2]

Maybe< bool > v8::Object::CreateDataProperty ( Local< Context > context,
uint32_t index,
v8::Local< Value > value )

Definition at line 4373 of file api.cc.

Here is the call graph for this function:

◆ DefineOwnProperty()

Maybe< bool > v8::Object::DefineOwnProperty ( Local< Context > context,
v8::Local< Name > key,
v8::Local< Value > value,
v8::PropertyAttribute attributes = None )

Implements [[DefineOwnProperty]] for data property case, see https://tc39.es/ecma262/#table-essential-internal-methods.

In general, CreateDataProperty will be faster, however, does not allow for specifying attributes.

Returns true on success.

Definition at line 4495 of file api.cc.

Here is the call graph for this function:

◆ DefineProperty()

Maybe< bool > v8::Object::DefineProperty ( Local< Context > context,
v8::Local< Name > key,
PropertyDescriptor & descriptor )

Implements Object.defineProperty(O, P, Attributes), see https://tc39.es/ecma262/#sec-object.defineproperty.

The defineProperty function is used to add an own property or update the attributes of an existing own property of an object.

Both data and accessor descriptors can be used.

In general, CreateDataProperty is faster, however, does not allow for specifying attributes or an accessor descriptor.

The PropertyDescriptor can change when redefining a property.

Returns true on success.

Definition at line 4531 of file api.cc.

Here is the call graph for this function:

◆ Delete() [1/2]

Maybe< bool > v8::Object::Delete ( Local< Context > context,
Local< Value > key )

Definition at line 4828 of file api.cc.

Here is the call graph for this function:

◆ Delete() [2/2]

Maybe< bool > v8::Object::Delete ( Local< Context > context,
uint32_t index )

Definition at line 4893 of file api.cc.

Here is the call graph for this function:

◆ DeletePrivate()

Maybe< bool > v8::Object::DeletePrivate ( Local< Context > context,
Local< Private > key )

Definition at line 4852 of file api.cc.

Here is the call graph for this function:

◆ FindInstanceInPrototypeChain()

Local< Object > v8::Object::FindInstanceInPrototypeChain ( v8::Local< FunctionTemplate > tmpl)

Finds an instance of the given function template in the prototype chain.

Definition at line 4728 of file api.cc.

Here is the call graph for this function:

◆ Get() [1/3]

MaybeLocal< Value > v8::Object::Get ( Local< Context > context,
Local< Value > key )

Definition at line 4577 of file api.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Get() [2/3]

MaybeLocal< Value > v8::Object::Get ( Local< Context > context,
Local< Value > key,
MaybeLocal< Object > receiver )

Definition at line 4589 of file api.cc.

Here is the call graph for this function:

◆ Get() [3/3]

MaybeLocal< Value > v8::Object::Get ( Local< Context > context,
uint32_t index )

Definition at line 4606 of file api.cc.

Here is the call graph for this function:

◆ GetAlignedPointerFromEmbedderDataInCreationContext() [1/2]

void * v8::Object::GetAlignedPointerFromEmbedderDataInCreationContext ( int index)

Definition at line 5264 of file api.cc.

Here is the call graph for this function:

◆ GetAlignedPointerFromEmbedderDataInCreationContext() [2/2]

void * v8::Object::GetAlignedPointerFromEmbedderDataInCreationContext ( v8::Isolate * isolate,
int index )

Gets the context in which the object was created (see GetCreationContext()) and if it's available reads respective embedder field value. If the context can't be obtained nullptr is returned. Basically it's a shortcut for obj->GetCreationContext().GetAlignedPointerFromEmbedderData(index) which doesn't create a handle for Context object on the way and doesn't try to expand the embedder data attached to the context. In case the Local<Context> is already available because of other reasons, it's fine to keep using Context::GetAlignedPointerFromEmbedderData().

Prefer using version with Isolate parameter if you have an Isolate, otherwise use the other one.

Definition at line 5256 of file api.cc.

Here is the call graph for this function:

◆ GetAlignedPointerFromInternalField() [1/4]

static V8_INLINE void * v8::Object::GetAlignedPointerFromInternalField ( const BasicTracedReference< Object > & object,
int index )
inlinestatic

Same as above, but works for TracedReference.

Definition at line 536 of file v8-object.h.

◆ GetAlignedPointerFromInternalField() [2/4]

static V8_INLINE void * v8::Object::GetAlignedPointerFromInternalField ( const PersistentBase< Object > & object,
int index )
inlinestatic

Same as above, but works for PersistentBase.

Definition at line 529 of file v8-object.h.

◆ GetAlignedPointerFromInternalField() [3/4]

void * v8::Object::GetAlignedPointerFromInternalField ( int index)

Gets a 2-byte-aligned native pointer from an internal field. This field must have been set by SetAlignedPointerInInternalField, everything else leads to undefined behavior.

Definition at line 904 of file v8-object.h.

Here is the call graph for this function:

◆ GetAlignedPointerFromInternalField() [4/4]

void * v8::Object::GetAlignedPointerFromInternalField ( v8::Isolate * isolate,
int index )

Definition at line 882 of file v8-object.h.

Here is the call graph for this function:

◆ GetConstructorName()

Local< String > v8::Object::GetConstructorName ( )

Returns the name of the function invoked as a constructor for this object.

Definition at line 4800 of file api.cc.

Here is the call graph for this function:

◆ GetCreationContext() [1/4]

MaybeLocal< v8::Context > v8::Object::GetCreationContext ( )

Definition at line 5186 of file api.cc.

Here is the call graph for this function:

◆ GetCreationContext() [2/4]

MaybeLocal< v8::Context > v8::Object::GetCreationContext ( const PersistentBase< Object > & object)
static

Definition at line 5191 of file api.cc.

Here is the call graph for this function:

◆ GetCreationContext() [3/4]

MaybeLocal< v8::Context > v8::Object::GetCreationContext ( v8::Isolate * isolate)

Returns the context in which the object was created.

Prefer using version with Isolate parameter.

Definition at line 5180 of file api.cc.

Here is the call graph for this function:

◆ GetCreationContext() [4/4]

static V8_INLINE MaybeLocal< Context > v8::Object::GetCreationContext ( v8::Isolate * isolate,
const PersistentBase< Object > & object )
inlinestatic

Same as above, but works for Persistents

Definition at line 720 of file v8-object.h.

◆ GetCreationContextChecked() [1/2]

Local< v8::Context > v8::Object::GetCreationContextChecked ( )

Definition at line 5214 of file api.cc.

Here is the call graph for this function:

◆ GetCreationContextChecked() [2/2]

Local< v8::Context > v8::Object::GetCreationContextChecked ( v8::Isolate * isolate)

Shortcut for GetCreationContext(...).ToLocalChecked().

Prefer using version with Isolate parameter.

Definition at line 5208 of file api.cc.

Here is the call graph for this function:

◆ GetIdentityHash()

int v8::Object::GetIdentityHash ( )

Returns the identity hash for this object. The current implementation uses a hidden property on the object to store the identity hash.

The return value will never be 0. Also, it is not guaranteed to be unique.

Definition at line 5272 of file api.cc.

Here is the call graph for this function:

◆ GetInternalField()

Local< Data > v8::Object::GetInternalField ( int index)

Gets the data from an internal field. To cast the return value into v8::Value subtypes, it needs to be casted to a v8::Value first. For example, to cast it into v8::External:

object->GetInternalField(index).As<v8::Value>().As<v8::External>();

The embedder should make sure that the internal field being retrieved using this method has already been set with SetInternalField() before.

Definition at line 856 of file v8-object.h.

Here is the call graph for this function:

◆ GetIsolate() [1/2]

Isolate * v8::Object::GetIsolate ( )

Return the isolate to which the Object belongs to.

Definition at line 7751 of file api.cc.

Here is the call graph for this function:

◆ GetIsolate() [2/2]

static V8_INLINE Isolate * v8::Object::GetIsolate ( const TracedReference< Object > & handle)
inlinestatic

Definition at line 800 of file v8-object.h.

◆ GetOwnPropertyDescriptor()

MaybeLocal< Value > v8::Object::GetOwnPropertyDescriptor ( Local< Context > context,
Local< Name > key )

Implements Object.getOwnPropertyDescriptor(O, P), see https://tc39.es/ecma262/#sec-object.getownpropertydescriptor.

Definition at line 4641 of file api.cc.

Here is the call graph for this function:

◆ GetOwnPropertyNames() [1/2]

MaybeLocal< Array > v8::Object::GetOwnPropertyNames ( Local< Context > context)

This function has the same functionality as GetPropertyNames but the returned array doesn't contain the names of properties from prototype objects.

Definition at line 4776 of file api.cc.

Here is the caller graph for this function:

◆ GetOwnPropertyNames() [2/2]

MaybeLocal< Array > v8::Object::GetOwnPropertyNames ( Local< Context > context,
PropertyFilter filter,
KeyConversionMode key_conversion = KeyConversionMode::kKeepNumbers )

Returns an array containing the names of the filtered properties of this object, including properties from prototype objects. The array returned by this method contains the same values as would be enumerated by a for-in statement over this object.

Definition at line 4781 of file api.cc.

◆ GetPrivate()

MaybeLocal< Value > v8::Object::GetPrivate ( Local< Context > context,
Local< Private > key )

Definition at line 4616 of file api.cc.

◆ GetPropertyAttributes()

Maybe< PropertyAttribute > v8::Object::GetPropertyAttributes ( Local< Context > context,
Local< Value > key )

Gets the property attributes of a property which can be None or any combination of ReadOnly, DontEnum and DontDelete. Returns None when the property doesn't exist.

Definition at line 4621 of file api.cc.

Here is the call graph for this function:

◆ GetPropertyNames() [1/2]

MaybeLocal< Array > v8::Object::GetPropertyNames ( Local< Context > context)

Returns an array containing the names of the enumerable properties of this object, including properties from prototype objects. The array returned by this method contains the same values as would be enumerated by a for-in statement over this object.

Definition at line 4746 of file api.cc.

◆ GetPropertyNames() [2/2]

MaybeLocal< Array > v8::Object::GetPropertyNames ( Local< Context > context,
KeyCollectionMode mode,
PropertyFilter property_filter,
IndexFilter index_filter,
KeyConversionMode key_conversion = KeyConversionMode::kKeepNumbers )

Definition at line 4753 of file api.cc.

Here is the call graph for this function:

◆ GetPrototypeV2()

Local< Value > v8::Object::GetPrototypeV2 ( )

Get the prototype object (same as getting proto property). This does not consult the security handler. TODO(333672197): rename back to GetPrototype() once the old version goes through the deprecation process and is removed.

Definition at line 4665 of file api.cc.

Here is the call graph for this function:

◆ GetRealNamedProperty()

MaybeLocal< Value > v8::Object::GetRealNamedProperty ( Local< Context > context,
Local< Name > key )

If result.IsEmpty() no real property was located on the object or in the prototype chain. This means interceptors in the prototype chain are not called.

Definition at line 5119 of file api.cc.

Here is the call graph for this function:

◆ GetRealNamedPropertyAttributes()

Maybe< PropertyAttribute > v8::Object::GetRealNamedPropertyAttributes ( Local< Context > context,
Local< Name > key )

Gets the property attributes of a real property which can be None or any combination of ReadOnly, DontEnum and DontDelete. Interceptors in the prototype chain are not called.

Definition at line 5134 of file api.cc.

Here is the call graph for this function:

◆ GetRealNamedPropertyAttributesInPrototypeChain()

Maybe< PropertyAttribute > v8::Object::GetRealNamedPropertyAttributesInPrototypeChain ( Local< Context > context,
Local< Name > key )

Gets the property attributes of a real property in the prototype chain, which can be None or any combination of ReadOnly, DontEnum and DontDelete. Interceptors in the prototype chain are not called.

Definition at line 5095 of file api.cc.

Here is the call graph for this function:

◆ GetRealNamedPropertyInPrototypeChain()

MaybeLocal< Value > v8::Object::GetRealNamedPropertyInPrototypeChain ( Local< Context > context,
Local< Name > key )

If result.IsEmpty() no real property was located in the prototype chain. This means interceptors in the prototype chain are not called.

Definition at line 5074 of file api.cc.

Here is the call graph for this function:

◆ Has() [1/2]

Maybe< bool > v8::Object::Has ( Local< Context > context,
Local< Value > key )

Object::Has() calls the abstract operation HasProperty(O, P), see https://tc39.es/ecma262/#sec-hasproperty. Has() returns true, if the object has the property, either own or on the prototype chain. Interceptors, i.e., PropertyQueryCallbacks, are called if present.

Has() has the same side effects as JavaScript's variable in object. For example, calling Has() on a revoked proxy will throw an exception.

Note
Has() converts the key to a name, which possibly calls back into JavaScript.

See also v8::Object::HasOwnProperty() and v8::Object::HasRealNamedProperty().

Definition at line 4867 of file api.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Has() [2/2]

Maybe< bool > v8::Object::Has ( Local< Context > context,
uint32_t index )

Definition at line 4903 of file api.cc.

Here is the call graph for this function:

◆ HasIndexedLookupInterceptor()

bool v8::Object::HasIndexedLookupInterceptor ( ) const

Tests for an index lookup interceptor.

Definition at line 5068 of file api.cc.

Here is the call graph for this function:

◆ HasNamedLookupInterceptor()

bool v8::Object::HasNamedLookupInterceptor ( ) const

Tests for a named lookup interceptor.

Definition at line 5062 of file api.cc.

Here is the call graph for this function:

◆ HasOwnProperty() [1/2]

Maybe< bool > v8::Object::HasOwnProperty ( Local< Context > context,
Local< Name > key )

HasOwnProperty() is like JavaScript's Object.prototype.hasOwnProperty().

See also v8::Object::Has() and v8::Object::HasRealNamedProperty().

Definition at line 4996 of file api.cc.

Here is the call graph for this function:

◆ HasOwnProperty() [2/2]

Maybe< bool > v8::Object::HasOwnProperty ( Local< Context > context,
uint32_t index )

Definition at line 5008 of file api.cc.

Here is the call graph for this function:

◆ HasPrivate()

Maybe< bool > v8::Object::HasPrivate ( Local< Context > context,
Local< Private > key )

Functionality for private properties. This is an experimental feature, use at your own risk. Note: Private properties are not inherited. Do not rely on this, since it may change.

Definition at line 4889 of file api.cc.

◆ HasRealIndexedProperty()

Maybe< bool > v8::Object::HasRealIndexedProperty ( Local< Context > context,
uint32_t index )

Definition at line 5033 of file api.cc.

Here is the call graph for this function:

◆ HasRealNamedCallbackProperty()

Maybe< bool > v8::Object::HasRealNamedCallbackProperty ( Local< Context > context,
Local< Name > key )

Definition at line 5047 of file api.cc.

Here is the call graph for this function:

◆ HasRealNamedProperty()

Maybe< bool > v8::Object::HasRealNamedProperty ( Local< Context > context,
Local< Name > key )

Use HasRealNamedProperty() if you want to check if an object has an own property without causing side effects, i.e., without calling interceptors.

This function is similar to v8::Object::HasOwnProperty(), but it does not call interceptors.

Note
Consider using non-masking interceptors, i.e., the interceptors are not called if the receiver has the real named property. See v8::PropertyHandlerFlags::kNonMasking.

See also v8::Object::Has().

Definition at line 5018 of file api.cc.

Here is the call graph for this function:

◆ InternalFieldCount() [1/3]

int v8::Object::InternalFieldCount ( ) const

Gets the number of internal fields for this Object.

Definition at line 6276 of file api.cc.

Here is the call graph for this function:

◆ InternalFieldCount() [2/3]

static V8_INLINE int v8::Object::InternalFieldCount ( const BasicTracedReference< Object > & object)
inlinestatic

Same as above, but works for BasicTracedReference.

Definition at line 499 of file v8-object.h.

◆ InternalFieldCount() [3/3]

static V8_INLINE int v8::Object::InternalFieldCount ( const PersistentBase< Object > & object)
inlinestatic

Same as above, but works for PersistentBase.

Definition at line 493 of file v8-object.h.

◆ IsApiWrapper()

bool v8::Object::IsApiWrapper ( ) const

Returns true if this object can be generally used to wrap object objects. This means that the object either follows the convention of using embedder fields to denote type/instance pointers or is using the Wrap()/Unwrap() APIs for the same purpose. Returns false otherwise.

Note that there may be other objects that use embedder fields but are not used as API wrapper objects. E.g., v8::Promise may in certain configuration use embedder fields but promises are not generally supported as API wrappers. The method will return false in those cases.

Definition at line 5288 of file api.cc.

Here is the call graph for this function:

◆ IsCallable()

bool v8::Object::IsCallable ( ) const

Checks whether a callback is set by the ObjectTemplate::SetCallAsFunctionHandler method. When an Object is callable this method returns true.

Definition at line 5280 of file api.cc.

Here is the call graph for this function:

◆ IsCodeLike()

bool v8::Object::IsCodeLike ( v8::Isolate * v8_isolate) const

Support for TC39 "dynamic code brand checks" proposal.

This API allows to query whether an object was constructed from a "code like" ObjectTemplate.

See also: v8::ObjectTemplate::SetCodeLike

Definition at line 10957 of file api.cc.

Here is the call graph for this function:

◆ IsConstructor()

bool v8::Object::IsConstructor ( ) const

True if this object is a constructor.

Definition at line 5284 of file api.cc.

Here is the call graph for this function:

◆ IsUndetectable()

bool v8::Object::IsUndetectable ( ) const

True if this object was created from an object template which was marked as undetectable. See v8::ObjectTemplate::MarkAsUndetectable for more information.

Definition at line 5296 of file api.cc.

Here is the call graph for this function:

◆ New() [1/2]

Local< v8::Object > v8::Object::New ( Isolate * isolate)
static

Definition at line 7756 of file api.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ New() [2/2]

Local< v8::Object > v8::Object::New ( Isolate * isolate,
Local< Value > prototype_or_null,
Local< Name > * names,
Local< Value > * values,
size_t length )
static

Creates a JavaScript object with the given properties, and a the given prototype_or_null (which can be any JavaScript value, and if it's null, the newly created object won't have a prototype at all). This is similar to Object.create(). All properties will be created as enumerable, configurable and writable properties.

Definition at line 7829 of file api.cc.

Here is the call graph for this function:

◆ ObjectProtoToString()

MaybeLocal< String > v8::Object::ObjectProtoToString ( Local< Context > context)

Call builtin Object.prototype.toString on this object. This is different from Value::ToString() that may call user-defined toString function. This one does not.

Definition at line 4788 of file api.cc.

Here is the call graph for this function:

◆ PreviewEntries()

v8::MaybeLocal< v8::Array > v8::Object::PreviewEntries ( bool * is_key_value)

If this object is a Set, Map, WeakSet or WeakMap, this returns a representation of the elements of this object as an array. If this object is a SetIterator or MapIterator, this returns all elements of the underlying collection, starting at the iterator's current position. For other types, this will return an empty MaybeLocal<Array> (without scheduling an exception).

Definition at line 11182 of file api.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Set() [1/3]

Maybe< bool > v8::Object::Set ( Local< Context > context,
v8::Local< Value > key,
v8::Local< Value > value )

Set only return Just(true) or Empty(), so if it should never fail, use result.Check().

Definition at line 4295 of file api.cc.

Here is the call graph for this function:

◆ Set() [2/3]

Maybe< bool > v8::Object::Set ( Local< Context > context,
v8::Local< Value > key,
v8::Local< Value > value,
MaybeLocal< Object > receiver )

Definition at line 4311 of file api.cc.

Here is the call graph for this function:

◆ Set() [3/3]

Maybe< bool > v8::Object::Set ( Local< Context > context,
uint32_t index,
v8::Local< Value > value )

Definition at line 4332 of file api.cc.

Here is the call graph for this function:

◆ SetAccessorProperty()

void v8::Object::SetAccessorProperty ( Local< Name > name,
Local< Function > getter,
Local< Function > setter = Local<Function>(),
PropertyAttribute attributes = None )

Sets an accessor property like Template::SetAccessorProperty, but this method sets on this object directly.

Definition at line 4945 of file api.cc.

Here is the call graph for this function:

◆ SetAlignedPointerInInternalField()

void v8::Object::SetAlignedPointerInInternalField ( int index,
void * value )

Sets a 2-byte-aligned native pointer in an internal field. To retrieve such a field, GetAlignedPointerFromInternalField must be used, everything else leads to undefined behavior.

Definition at line 6331 of file api.cc.

Here is the call graph for this function:

◆ SetAlignedPointerInInternalFields()

void v8::Object::SetAlignedPointerInInternalFields ( int argc,
int indices[],
void * values[] )

Definition at line 6343 of file api.cc.

Here is the call graph for this function:

◆ SetIntegrityLevel()

Maybe< bool > v8::Object::SetIntegrityLevel ( Local< Context > context,
IntegrityLevel level )

Sets the integrity level of the object.

Definition at line 4814 of file api.cc.

Here is the call graph for this function:

◆ SetInternalField()

void v8::Object::SetInternalField ( int index,
v8::Local< Data > value )

Sets the data in an internal field.

Definition at line 6299 of file api.cc.

Here is the call graph for this function:

◆ SetLazyDataProperty()

Maybe< bool > v8::Object::SetLazyDataProperty ( Local< Context > context,
v8::Local< Name > name,
AccessorNameGetterCallback getter,
v8::Local< Value > data = Local<Value>(),
PropertyAttribute attributes = None,
SideEffectType getter_side_effect_type = SideEffectType::kHasSideEffect,
SideEffectType setter_side_effect_type = SideEffectType::kHasSideEffect )

Attempts to create a property with the given name which behaves like a data property, except that the provided getter is invoked (and provided with the data value) to supply its value the first time it is read. After the property is accessed once, it is replaced with an ordinary data property.

Analogous to Template::SetLazyDataProperty.

Definition at line 4985 of file api.cc.

Here is the call graph for this function:

◆ SetNativeDataProperty()

Maybe< bool > v8::Object::SetNativeDataProperty ( Local< Context > context,
v8::Local< Name > name,
AccessorNameGetterCallback getter,
AccessorNameSetterCallback setter = nullptr,
v8::Local< Value > data = Local<Value>(),
PropertyAttribute attributes = None,
SideEffectType getter_side_effect_type = SideEffectType::kHasSideEffect,
SideEffectType setter_side_effect_type = SideEffectType::kHasSideEffect )

Sets a native data property like Template::SetNativeDataProperty, but this method sets on this object directly.

Definition at line 4974 of file api.cc.

Here is the call graph for this function:

◆ SetPrivate()

Maybe< bool > v8::Object::SetPrivate ( Local< Context > context,
Local< Private > key,
Local< Value > value )

Definition at line 4547 of file api.cc.

Here is the call graph for this function:

◆ SetPrototypeV2()

Maybe< bool > v8::Object::SetPrototypeV2 ( Local< Context > context,
Local< Value > prototype )

Set the prototype object (same as setting proto property). This does does not consult the security handler. TODO(333672197): rename back to SetPrototype() once the old version goes through the deprecation process and is removed.

Definition at line 4722 of file api.cc.

◆ SlowGetAlignedPointerFromInternalField() [1/2]

void * v8::Object::SlowGetAlignedPointerFromInternalField ( int index)
private

Definition at line 6320 of file api.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SlowGetAlignedPointerFromInternalField() [2/2]

void * v8::Object::SlowGetAlignedPointerFromInternalField ( v8::Isolate * isolate,
int index )
private

Definition at line 6307 of file api.cc.

Here is the call graph for this function:

◆ SlowGetInternalField()

Local< Data > v8::Object::SlowGetInternalField ( int index)
private

Definition at line 6290 of file api.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Unwrap() [1/13]

template<CppHeapPointerTag tag, typename T = void>
static V8_INLINE T * v8::Object::Unwrap ( v8::Isolate * isolate,
const BasicTracedReference< Object > & wrapper )
static

◆ Unwrap() [2/13]

template<CppHeapPointerTag tag, typename T >
T * v8::Object::Unwrap ( v8::Isolate * isolate,
const BasicTracedReference< Object > & wrapper )

Definition at line 955 of file v8-object.h.

Here is the call graph for this function:

◆ Unwrap() [3/13]

template<typename T = void>
static V8_INLINE T * v8::Object::Unwrap ( v8::Isolate * isolate,
const BasicTracedReference< Object > & wrapper,
CppHeapPointerTagRange tag_range )
static

◆ Unwrap() [4/13]

template<typename T >
T * v8::Object::Unwrap ( v8::Isolate * isolate,
const BasicTracedReference< Object > & wrapper,
CppHeapPointerTagRange tag_range )

Definition at line 998 of file v8-object.h.

Here is the call graph for this function:

◆ Unwrap() [5/13]

template<CppHeapPointerTag tag, typename T = void>
static V8_INLINE T * v8::Object::Unwrap ( v8::Isolate * isolate,
const PersistentBase< Object > & wrapper )
static

◆ Unwrap() [6/13]

template<CppHeapPointerTag tag, typename T >
T * v8::Object::Unwrap ( v8::Isolate * isolate,
const PersistentBase< Object > & wrapper )

Definition at line 941 of file v8-object.h.

Here is the call graph for this function:

◆ Unwrap() [7/13]

template<typename T = void>
static V8_INLINE T * v8::Object::Unwrap ( v8::Isolate * isolate,
const PersistentBase< Object > & wrapper,
CppHeapPointerTagRange tag_range )
static

◆ Unwrap() [8/13]

template<typename T >
T * v8::Object::Unwrap ( v8::Isolate * isolate,
const PersistentBase< Object > & wrapper,
CppHeapPointerTagRange tag_range )

Definition at line 983 of file v8-object.h.

Here is the call graph for this function:

◆ Unwrap() [9/13]

template<CppHeapPointerTag tag, typename T = void>
static V8_INLINE T * v8::Object::Unwrap ( v8::Isolate * isolate,
const v8::Local< v8::Object > & wrapper )
static

Unwraps a JS wrapper object.

Parameters
tagThe tag for retrieving the wrappable instance. Must match the tag that has been used for a previous Wrap() operation.
isolateThe Isolate for the wrapper object.
wrapperThe JS wrapper object that should be unwrapped.
Returns
the C++ wrappable instance, or nullptr if the JS object has never been wrapped.
Here is the caller graph for this function:

◆ Unwrap() [10/13]

template<CppHeapPointerTag tag, typename T >
T * v8::Object::Unwrap ( v8::Isolate * isolate,
const v8::Local< v8::Object > & wrapper )

Definition at line 928 of file v8-object.h.

Here is the call graph for this function:

◆ Unwrap() [11/13]

template<typename T = void>
static V8_INLINE T * v8::Object::Unwrap ( v8::Isolate * isolate,
const v8::Local< v8::Object > & wrapper,
CppHeapPointerTagRange tag_range )
static

◆ Unwrap() [12/13]

template<typename T >
T * v8::Object::Unwrap ( v8::Isolate * isolate,
const v8::Local< v8::Object > & wrapper,
CppHeapPointerTagRange tag_range )

Definition at line 970 of file v8-object.h.

Here is the call graph for this function:

◆ Unwrap() [13/13]

static void * v8::Object::Unwrap ( v8::Isolate * isolate,
internal::Address wrapper_obj,
CppHeapPointerTagRange tag_range )
staticprivate

◆ V8_DEPRECATE_SOON() [1/2]

v8::Object::V8_DEPRECATE_SOON ( "V8 will stop providing access to hidden prototype (i.e. " "JSGlobalObject). Use GetPrototypeV2() instead. " "See http://crbug.com/333672197." )

Get the prototype object. This does not skip objects marked to be skipped by proto and it does not consult the security handler.

◆ V8_DEPRECATE_SOON() [2/2]

v8::Object::V8_DEPRECATE_SOON ( "V8 will stop providing access to hidden prototype (i.e. " "JSGlobalObject). Use SetPrototypeV2() instead. " "See http://crbug.com/333672197." )

Set the prototype object. This does not skip objects marked to be skipped by proto and it does not consult the security handler.

◆ Wrap() [1/10]

template<CppHeapPointerTag tag>
static V8_INLINE void v8::Object::Wrap ( v8::Isolate * isolate,
const BasicTracedReference< Object > & wrapper,
void * wrappable )
static

◆ Wrap() [2/10]

template<CppHeapPointerTag tag>
void v8::Object::Wrap ( v8::Isolate * isolate,
const BasicTracedReference< Object > & wrapper,
void * wrappable )

Definition at line 1030 of file v8-object.h.

Here is the call graph for this function:

◆ Wrap() [3/10]

void v8::Object::Wrap ( v8::Isolate * isolate,
const BasicTracedReference< Object > & wrapper,
void * wrappable,
CppHeapPointerTag tag )
static

Definition at line 1054 of file v8-object.h.

Here is the call graph for this function:

◆ Wrap() [4/10]

template<CppHeapPointerTag tag>
static V8_INLINE void v8::Object::Wrap ( v8::Isolate * isolate,
const PersistentBase< Object > & wrapper,
void * wrappable )
static

◆ Wrap() [5/10]

template<CppHeapPointerTag tag>
void v8::Object::Wrap ( v8::Isolate * isolate,
const PersistentBase< Object > & wrapper,
void * wrappable )

Definition at line 1021 of file v8-object.h.

Here is the call graph for this function:

◆ Wrap() [6/10]

void v8::Object::Wrap ( v8::Isolate * isolate,
const PersistentBase< Object > & wrapper,
void * wrappable,
CppHeapPointerTag tag )
static

Definition at line 1046 of file v8-object.h.

Here is the call graph for this function:

◆ Wrap() [7/10]

template<CppHeapPointerTag tag>
static V8_INLINE void v8::Object::Wrap ( v8::Isolate * isolate,
const v8::Local< v8::Object > & wrapper,
void * wrappable )
static

Wraps a JS wrapper with a C++ instance.

Parameters
tagThe pointer tag that should be used for storing this object. Future Unwrap() operations must provide a matching tag.
isolateThe Isolate for the wrapper object.
wrapperThe JS wrapper object.
wrappableThe C++ object instance that is wrapped by the JS object.
Here is the caller graph for this function:

◆ Wrap() [8/10]

template<CppHeapPointerTag tag>
void v8::Object::Wrap ( v8::Isolate * isolate,
const v8::Local< v8::Object > & wrapper,
void * wrappable )

Definition at line 1013 of file v8-object.h.

Here is the call graph for this function:

◆ Wrap() [9/10]

void v8::Object::Wrap ( v8::Isolate * isolate,
const v8::Local< v8::Object > & wrapper,
void * wrappable,
CppHeapPointerTag tag )
static

Definition at line 1039 of file v8-object.h.

Here is the call graph for this function:

◆ Wrap() [10/10]

static void v8::Object::Wrap ( v8::Isolate * isolate,
internal::Address wrapper_obj,
CppHeapPointerTag tag,
void * wrappable )
staticprivate

Member Data Documentation

◆ prototype

Local<Value> v8::Object::prototype

Definition at line 454 of file v8-object.h.


The documentation for this class was generated from the following files: