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


Data Structures | |
| class | UnsafeCtorTag |
Public Types | |
| using | PointeeType = T |
Public Member Functions | |
| ~BasicCrossThreadPersistent () | |
| BasicCrossThreadPersistent (const SourceLocation &loc=SourceLocation::Current()) | |
| BasicCrossThreadPersistent (std::nullptr_t, const SourceLocation &loc=SourceLocation::Current()) | |
| BasicCrossThreadPersistent (SentinelPointer s, const SourceLocation &loc=SourceLocation::Current()) | |
| BasicCrossThreadPersistent (T *raw, const SourceLocation &loc=SourceLocation::Current()) | |
| BasicCrossThreadPersistent (UnsafeCtorTag, T *raw, const SourceLocation &loc=SourceLocation::Current()) | |
| BasicCrossThreadPersistent (T &raw, const SourceLocation &loc=SourceLocation::Current()) | |
| template<typename U , typename MemberBarrierPolicy , typename MemberWeaknessTag , typename MemberCheckingPolicy , typename = std::enable_if_t<std::is_base_of<T, U>::value>> | |
| BasicCrossThreadPersistent (internal::BasicMember< U, MemberBarrierPolicy, MemberWeaknessTag, MemberCheckingPolicy > member, const SourceLocation &loc=SourceLocation::Current()) | |
| BasicCrossThreadPersistent (const BasicCrossThreadPersistent &other, const SourceLocation &loc=SourceLocation::Current()) | |
| template<typename U , typename OtherWeaknessPolicy , typename OtherLocationPolicy , typename OtherCheckingPolicy , typename = std::enable_if_t<std::is_base_of<T, U>::value>> | |
| BasicCrossThreadPersistent (const BasicCrossThreadPersistent< U, OtherWeaknessPolicy, OtherLocationPolicy, OtherCheckingPolicy > &other, const SourceLocation &loc=SourceLocation::Current()) | |
| BasicCrossThreadPersistent (BasicCrossThreadPersistent &&other, const SourceLocation &loc=SourceLocation::Current()) noexcept | |
| BasicCrossThreadPersistent & | operator= (const BasicCrossThreadPersistent &other) |
| template<typename U , typename OtherWeaknessPolicy , typename OtherLocationPolicy , typename OtherCheckingPolicy , typename = std::enable_if_t<std::is_base_of<T, U>::value>> | |
| BasicCrossThreadPersistent & | operator= (const BasicCrossThreadPersistent< U, OtherWeaknessPolicy, OtherLocationPolicy, OtherCheckingPolicy > &other) |
| BasicCrossThreadPersistent & | operator= (BasicCrossThreadPersistent &&other) |
| BasicCrossThreadPersistent & | operator= (T *other) |
| template<typename U , typename MemberBarrierPolicy , typename MemberWeaknessTag , typename MemberCheckingPolicy , typename = std::enable_if_t<std::is_base_of<T, U>::value>> | |
| BasicCrossThreadPersistent & | operator= (internal::BasicMember< U, MemberBarrierPolicy, MemberWeaknessTag, MemberCheckingPolicy > member) |
| BasicCrossThreadPersistent & | operator= (std::nullptr_t) |
| BasicCrossThreadPersistent & | operator= (SentinelPointer s) |
| V8_CLANG_NO_SANITIZE ("cfi-unrelated-cast") T *Get() const | |
| void | Clear () |
| T * | Release () |
| operator bool () const | |
| operator T* () const | |
| T * | operator-> () const |
| T & | operator* () const |
| template<typename U , typename OtherWeaknessPolicy = WeaknessPolicy, typename OtherLocationPolicy = LocationPolicy, typename OtherCheckingPolicy = CheckingPolicy> | |
| BasicCrossThreadPersistent< U, OtherWeaknessPolicy, OtherLocationPolicy, OtherCheckingPolicy > | To () const |
| template<typename U = T, typename = typename std::enable_if<!BasicCrossThreadPersistent< U, WeaknessPolicy>::IsStrongPersistent::value>::type> | |
| BasicCrossThreadPersistent< U, internal::StrongCrossThreadPersistentPolicy > | Lock () const |
Public Member Functions inherited from CrossThreadPersistentBase | |
| CrossThreadPersistentBase ()=default | |
| CrossThreadPersistentBase (const void *raw) | |
| V8_CLANG_NO_SANITIZE ("address") const void *GetValueFromGC() const | |
| PersistentNode * | GetNodeFromGC () const |
| void | ClearFromGC () const |
| PersistentNode * | GetNodeSafe () const |
| void | SetNodeSafe (PersistentNode *value) const |
Friends | |
| class | cppgc::Visitor |
Additional Inherited Members | |
Protected Member Functions inherited from PersistentBase | |
| PersistentBase ()=default | |
| PersistentBase (const void *raw) | |
| const void * | GetValue () const |
| void | SetValue (const void *value) |
| PersistentNode * | GetNode () const |
| void | SetNode (PersistentNode *node) |
| void | ClearFromGC () const |
Protected Attributes inherited from PersistentBase | |
| const void * | raw_ = nullptr |
| PersistentNode * | node_ = nullptr |
Definition at line 71 of file cross-thread-persistent.h.
| using PointeeType = T |
Definition at line 77 of file cross-thread-persistent.h.
|
inline |
Definition at line 79 of file cross-thread-persistent.h.
References CrossThreadPersistentRegion::FreeNode(), PersistentBase::GetNode(), CrossThreadPersistentBase::GetNodeSafe(), PersistentBase::GetValue(), and PersistentBase::SetNode().
|
inline |
Definition at line 105 of file cross-thread-persistent.h.
|
inline |
Definition at line 109 of file cross-thread-persistent.h.
|
inline |
Definition at line 113 of file cross-thread-persistent.h.
|
inline |
Definition at line 117 of file cross-thread-persistent.h.
References CrossThreadPersistentRegion::AllocateNode(), and PersistentBase::SetNode().
|
inline |
Definition at line 135 of file cross-thread-persistent.h.
References CrossThreadPersistentRegion::AllocateNode(), and PersistentBase::SetNode().
|
inline |
Definition at line 145 of file cross-thread-persistent.h.
|
inline |
Definition at line 152 of file cross-thread-persistent.h.
|
inline |
Definition at line 159 of file cross-thread-persistent.h.
|
inline |
Definition at line 171 of file cross-thread-persistent.h.
|
inlinenoexcept |
Definition at line 180 of file cross-thread-persistent.h.
|
inline |
Clears the stored object.
Definition at line 279 of file cross-thread-persistent.h.
Referenced by BasicCrossThreadPersistent< T, WeaknessPolicy, LocationPolicy, CheckingPolicy >::operator=(), and BasicCrossThreadPersistent< T, WeaknessPolicy, LocationPolicy, CheckingPolicy >::Release().
|
inline |
Definition at line 342 of file cross-thread-persistent.h.
|
inlineexplicit |
Conversio to boolean.
Note: Not thread-safe.
Definition at line 304 of file cross-thread-persistent.h.
|
inline |
Conversion to object of type T.
Note: Not thread-safe.
Definition at line 313 of file cross-thread-persistent.h.
|
inline |
Definition at line 321 of file cross-thread-persistent.h.
|
inline |
Dereferences the stored object.
Note: Not thread-safe.
Definition at line 320 of file cross-thread-persistent.h.
|
inline |
Definition at line 206 of file cross-thread-persistent.h.
References BasicCrossThreadPersistent< T, WeaknessPolicy, LocationPolicy, CheckingPolicy >::Clear(), PersistentBase::GetNode(), and PersistentBase::GetValue().
|
inline |
Definition at line 187 of file cross-thread-persistent.h.
|
inline |
Definition at line 197 of file cross-thread-persistent.h.
|
inline |
Definition at line 234 of file cross-thread-persistent.h.
|
inline |
Assigns the sentinel pointer.
Definition at line 256 of file cross-thread-persistent.h.
|
inline |
Assigns a nullptr.
Definition at line 246 of file cross-thread-persistent.h.
References BasicCrossThreadPersistent< T, WeaknessPolicy, LocationPolicy, CheckingPolicy >::Clear().
|
inline |
Assigns a raw pointer.
Note: Not thread-safe.
Definition at line 225 of file cross-thread-persistent.h.
|
inline |
Returns a pointer to the stored object and releases it.
Note: Not thread-safe.
Definition at line 291 of file cross-thread-persistent.h.
References BasicCrossThreadPersistent< T, WeaknessPolicy, LocationPolicy, CheckingPolicy >::Clear().
|
inline |
Definition at line 328 of file cross-thread-persistent.h.
|
inline |
Returns a pointer to the stored object.
Note: Not thread-safe.
Definition at line 272 of file cross-thread-persistent.h.
References PersistentBase::GetValue().
|
friend |
Definition at line 419 of file cross-thread-persistent.h.