v8 12.4.254 (node 22.4.1)
V8 is Google's open source JavaScript engine
|
#include <v8-traced-handle.h>
Public Member Functions | |
V8_INLINE void | Reset () |
V8_INLINE Local< Value > | Get (Isolate *isolate) const |
bool | IsEmptyThreadSafe () const |
Public Member Functions inherited from IndirectHandleBase | |
V8_INLINE bool | IsEmpty () const |
V8_INLINE void | Clear () |
Protected Member Functions | |
V8_INLINE | TracedReferenceBase ()=default |
void | SetSlotThreadSafe (void *new_val) |
const void * | GetSlotThreadSafe () const |
V8_EXPORT void | CheckValue () const |
Protected Member Functions inherited from IndirectHandleBase | |
V8_INLINE | IndirectHandleBase ()=default |
V8_INLINE | IndirectHandleBase (const IndirectHandleBase &other)=default |
V8_INLINE IndirectHandleBase & | operator= (const IndirectHandleBase &that)=default |
V8_INLINE | IndirectHandleBase (internal::Address *location) |
V8_INLINE internal::Address | ptr () const |
V8_INLINE internal::Address *const & | slot () const |
V8_INLINE internal::Address *& | slot () |
template<typename T , bool check_null = false> | |
V8_INLINE T * | value () const |
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 &) |
An indirect handle, where the indirect pointer points to a GlobalHandles node.
Definition at line 56 of file v8-traced-handle.h.
|
protecteddefault |
|
protected |
Referenced by BasicTracedReference< T >::operator->().
Construct a Local<Value> from this handle.
Definition at line 67 of file v8-traced-handle.h.
References IndirectHandleBase::IsEmpty(), and Local< T >::New().
|
inlineprotected |
Get this reference in a thread-safe way
Definition at line 94 of file v8-traced-handle.h.
References IndirectHandleBase::slot().
Referenced by TracedReferenceBase::IsEmptyThreadSafe().
|
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 76 of file v8-traced-handle.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 321 of file v8-traced-handle.h.
References v8::internal::DisposeTracedReference(), IndirectHandleBase::IsEmpty(), TracedReferenceBase::SetSlotThreadSafe(), IndirectHandleBase::slot(), and V8_UNLIKELY.
|
inlineprotected |
Update this reference in a thread-safe way.
Definition at line 86 of file v8-traced-handle.h.
References IndirectHandleBase::slot().
Referenced by TracedReferenceBase::Reset().
|
friend |
Definition at line 101 of file v8-traced-handle.h.
|
friend |
Definition at line 103 of file v8-traced-handle.h.
|
friend |
Definition at line 335 of file v8-traced-handle.h.
|
friend |
Definition at line 329 of file v8-traced-handle.h.