v8
9.0.257(node16.0.0)
V8 is Google's open source JavaScript engine
|
#include <cross-thread-persistent.h>
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 (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 |
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 |
Definition at line 21 of file cross-thread-persistent.h.
using PointeeType = T |
Definition at line 27 of file cross-thread-persistent.h.
|
inline |
Definition at line 29 of file cross-thread-persistent.h.
References BasicCrossThreadPersistent< T, WeaknessPolicy, LocationPolicy, CheckingPolicy >::Clear().
|
inline |
Definition at line 31 of file cross-thread-persistent.h.
|
inline |
Definition at line 35 of file cross-thread-persistent.h.
|
inline |
Definition at line 39 of file cross-thread-persistent.h.
|
inline |
Definition at line 43 of file cross-thread-persistent.h.
References PersistentRegion::AllocateNode(), and PersistentBase::SetNode().
|
inline |
Definition at line 52 of file cross-thread-persistent.h.
References Visitor::internal::BasicCrossThreadPersistent.
|
inline |
Definition at line 59 of file cross-thread-persistent.h.
References Visitor::internal::BasicCrossThreadPersistent.
|
inline |
Definition at line 66 of file cross-thread-persistent.h.
References Visitor::internal::BasicCrossThreadPersistent.
|
inline |
Definition at line 78 of file cross-thread-persistent.h.
References Visitor::internal::BasicCrossThreadPersistent.
|
inlinenoexcept |
Definition at line 87 of file cross-thread-persistent.h.
|
inline |
Clears the stored object.
Definition at line 170 of file cross-thread-persistent.h.
References PersistentRegion::FreeNode(), PersistentBase::GetNode(), PersistentBase::GetValue(), PersistentBase::SetNode(), and PersistentBase::SetValue().
Referenced by BasicCrossThreadPersistent< T, WeaknessPolicy, LocationPolicy, CheckingPolicy >::operator=(), BasicCrossThreadPersistent< T, WeaknessPolicy, LocationPolicy, CheckingPolicy >::Release(), and BasicCrossThreadPersistent< T, WeaknessPolicy, LocationPolicy, CheckingPolicy >::~BasicCrossThreadPersistent().
|
inline |
Definition at line 238 of file cross-thread-persistent.h.
References Visitor::internal::BasicCrossThreadPersistent.
|
inlineexplicit |
Conversio to boolean.
Note: Not thread-safe.
Definition at line 203 of file cross-thread-persistent.h.
|
inline |
Conversion to object of type T.
Note: Not thread-safe.
Definition at line 212 of file cross-thread-persistent.h.
|
inline |
Definition at line 220 of file cross-thread-persistent.h.
|
inline |
Dereferences the stored object.
Note: Not thread-safe.
Definition at line 219 of file cross-thread-persistent.h.
|
inline |
Definition at line 113 of file cross-thread-persistent.h.
References BasicCrossThreadPersistent< T, WeaknessPolicy, LocationPolicy, CheckingPolicy >::Clear(), PersistentBase::GetNode(), and PersistentBase::GetValue().
|
inline |
Definition at line 94 of file cross-thread-persistent.h.
|
inline |
Definition at line 104 of file cross-thread-persistent.h.
|
inline |
Definition at line 136 of file cross-thread-persistent.h.
|
inline |
Definition at line 148 of file cross-thread-persistent.h.
|
inline |
Definition at line 143 of file cross-thread-persistent.h.
References BasicCrossThreadPersistent< T, WeaknessPolicy, LocationPolicy, CheckingPolicy >::Clear().
|
inline |
Definition at line 127 of file cross-thread-persistent.h.
|
inline |
Returns a pointer to the stored object and releases it.
Note: Not thread-safe.
Definition at line 190 of file cross-thread-persistent.h.
References BasicCrossThreadPersistent< T, WeaknessPolicy, LocationPolicy, CheckingPolicy >::Clear().
|
inline |
Definition at line 227 of file cross-thread-persistent.h.
References Visitor::internal::BasicCrossThreadPersistent.
|
inline |
Returns a pointer to the stored object.
Note: Not thread-safe.
Definition at line 163 of file cross-thread-persistent.h.
References PersistentBase::GetValue().
|
friend |
Definition at line 299 of file cross-thread-persistent.h.