v8
9.4.146 (node 16.13.0)
V8 is Google's open source JavaScript engine
|
#include <v8.h>
Public Member Functions | |
bool | IsEmpty () const |
V8_INLINE void | Reset () |
V8_INLINE v8::Local< v8::Value > | Get (v8::Isolate *isolate) const |
bool | IsEmptyThreadSafe () const |
V8_INLINE void | SetWrapperClassId (uint16_t class_id) |
V8_INLINE uint16_t | WrapperClassId () const |
Protected Member Functions | |
void | SetSlotThreadSafe (void *new_val) |
const void * | GetSlotThreadSafe () const |
V8_EXPORT void | CheckValue () const |
Protected Attributes | |
internal::Address * | val_ = nullptr |
Friends | |
class | internal::BasicTracedReferenceExtractor |
template<typename F > | |
class | Local |
template<typename U > | |
bool | operator== (const TracedReferenceBase &, const Local< U > &) |
bool | operator== (const TracedReferenceBase &, const TracedReferenceBase &) |
|
protected |
v8::Local< v8::Value > Get | ( | v8::Isolate * | isolate | ) | const |
Construct a Local<Value> from this handle.
Definition at line 11123 of file v8.h.
References TracedReferenceBase::IsEmpty(), Local< T >::Local, and TracedReferenceBase::val_.
|
inlineprotected |
Get this reference in a thread-safe way
Definition at line 885 of file v8.h.
References TracedReferenceBase::val_.
Referenced by TracedReferenceBase::IsEmptyThreadSafe().
|
inline |
Returns true if the reference is empty, i.e., has not been assigned object.
Definition at line 841 of file v8.h.
References TracedReferenceBase::val_.
Referenced by TracedReferenceBase::Get(), JSHeapConsistency::GetWriteBarrierType(), TracedReferenceBase::Reset(), TracedReferenceBase::SetWrapperClassId(), and TracedReferenceBase::WrapperClassId().
|
inline |
Returns true if this TracedReference is empty, i.e., has not been assigned an object. This version of IsEmpty is thread-safe.
Definition at line 858 of file v8.h.
References TracedReferenceBase::GetSlotThreadSafe().
Referenced by JSVisitor::Trace().
void Reset | ( | ) |
If non-empty, destroy the underlying storage cell. |IsEmpty| will return true after this call.
Definition at line 11117 of file v8.h.
References TracedReferenceBase::IsEmpty(), TracedReferenceBase::SetSlotThreadSafe(), and TracedReferenceBase::val_.
|
inlineprotected |
Update this reference in a thread-safe way.
Definition at line 877 of file v8.h.
References TracedReferenceBase::val_.
Referenced by TracedReferenceBase::Reset().
void SetWrapperClassId | ( | uint16_t | class_id | ) |
Assigns a wrapper class ID to the handle.
Definition at line 11270 of file v8.h.
References TracedReferenceBase::IsEmpty(), Internals::kNodeClassIdOffset, and TracedReferenceBase::val_.
uint16_t WrapperClassId | ( | ) | const |
Returns the class ID previously assigned to this handle or 0 if no class ID was previously assigned.
Definition at line 11278 of file v8.h.
References TracedReferenceBase::IsEmpty(), Internals::kNodeClassIdOffset, and TracedReferenceBase::val_.
|
friend |
|
friend |
Definition at line 11128 of file v8.h.
Referenced by v8::operator!=().
|
protected |
Definition at line 893 of file v8.h.
Referenced by TracedReferenceBase::Get(), TracedReferenceBase::GetSlotThreadSafe(), TracedReferenceBase::IsEmpty(), BasicTracedReference< T >::operator*(), BasicTracedReference< T >::operator->(), TracedReferenceBase::Reset(), TracedReferenceBase::SetSlotThreadSafe(), TracedReferenceBase::SetWrapperClassId(), and TracedReferenceBase::WrapperClassId().