v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType > Class Template Reference

#include <member.h>

Inheritance diagram for cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >:
Collaboration diagram for cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >:

Public Types

using PointeeType = T
 
using RawStorage = typename Base::RawStorage
 
using AtomicInitializerTag = typename Base::AtomicInitializerTag
 

Public Member Functions

V8_INLINE constexpr BasicMember ()=default
 
V8_INLINE constexpr BasicMember (std::nullptr_t)
 
V8_INLINE BasicMember (SentinelPointer s)
 
V8_INLINE BasicMember (T *raw)
 
V8_INLINE BasicMember (T &raw)
 
V8_INLINE BasicMember (std::nullptr_t, AtomicInitializerTag atomic)
 
V8_INLINE BasicMember (SentinelPointer s, AtomicInitializerTag atomic)
 
V8_INLINE BasicMember (T *raw, AtomicInitializerTag atomic)
 
V8_INLINE BasicMember (T &raw, AtomicInitializerTag atomic)
 
V8_INLINE BasicMember (const BasicMember &other)
 
template<typename U , typename OtherBarrierPolicy , typename OtherWeaknessTag , typename OtherCheckingPolicy , std::enable_if_t< IsDecayedSameV< T, U > > * = nullptr>
V8_INLINE BasicMember (const BasicMember< U, OtherWeaknessTag, OtherBarrierPolicy, OtherCheckingPolicy, StorageType > &other)
 
template<typename U , typename OtherBarrierPolicy , typename OtherWeaknessTag , typename OtherCheckingPolicy , std::enable_if_t< IsStrictlyBaseOfV< T, U > > * = nullptr>
V8_INLINE BasicMember (const BasicMember< U, OtherWeaknessTag, OtherBarrierPolicy, OtherCheckingPolicy, StorageType > &other)
 
V8_INLINE BasicMember (BasicMember &&other) noexcept
 
template<typename U , typename OtherBarrierPolicy , typename OtherWeaknessTag , typename OtherCheckingPolicy , std::enable_if_t< IsDecayedSameV< T, U > > * = nullptr>
V8_INLINE BasicMember (BasicMember< U, OtherWeaknessTag, OtherBarrierPolicy, OtherCheckingPolicy, StorageType > &&other) noexcept
 
template<typename U , typename OtherBarrierPolicy , typename OtherWeaknessTag , typename OtherCheckingPolicy , std::enable_if_t< IsStrictlyBaseOfV< T, U > > * = nullptr>
V8_INLINE BasicMember (BasicMember< U, OtherWeaknessTag, OtherBarrierPolicy, OtherCheckingPolicy, StorageType > &&other) noexcept
 
template<typename U , typename PersistentWeaknessPolicy , typename PersistentLocationPolicy , typename PersistentCheckingPolicy , typename = std::enable_if_t<std::is_base_of<T, U>::value>>
V8_INLINE BasicMember (const BasicPersistent< U, PersistentWeaknessPolicy, PersistentLocationPolicy, PersistentCheckingPolicy > &p)
 
V8_INLINE BasicMemberoperator= (const BasicMember &other)
 
template<typename U , typename OtherWeaknessTag , typename OtherBarrierPolicy , typename OtherCheckingPolicy >
V8_INLINE BasicMemberoperator= (const BasicMember< U, OtherWeaknessTag, OtherBarrierPolicy, OtherCheckingPolicy, StorageType > &other)
 
V8_INLINE BasicMemberoperator= (BasicMember &&other) noexcept
 
template<typename U , typename OtherWeaknessTag , typename OtherBarrierPolicy , typename OtherCheckingPolicy >
V8_INLINE BasicMemberoperator= (BasicMember< U, OtherWeaknessTag, OtherBarrierPolicy, OtherCheckingPolicy, StorageType > &&other) noexcept
 
template<typename U , typename PersistentWeaknessPolicy , typename PersistentLocationPolicy , typename PersistentCheckingPolicy , typename = std::enable_if_t<std::is_base_of<T, U>::value>>
V8_INLINE BasicMemberoperator= (const BasicPersistent< U, PersistentWeaknessPolicy, PersistentLocationPolicy, PersistentCheckingPolicy > &other)
 
V8_INLINE BasicMemberoperator= (T *other)
 
V8_INLINE BasicMemberoperator= (std::nullptr_t)
 
V8_INLINE BasicMemberoperator= (SentinelPointer s)
 
template<typename OtherWeaknessTag , typename OtherBarrierPolicy , typename OtherCheckingPolicy >
V8_INLINE void Swap (BasicMember< T, OtherWeaknessTag, OtherBarrierPolicy, OtherCheckingPolicy, StorageType > &other)
 
V8_INLINE operator bool () const
 
V8_INLINE operator T* () const
 
V8_INLINE Toperator-> () const
 
V8_INLINE Toperator* () const
 
V8_INLINE V8_CLANG_NO_SANITIZE ("cfi-unrelated-cast") T *Get() const
 
V8_INLINE void Clear ()
 
V8_INLINE TRelease ()
 
V8_INLINE const T ** GetSlotForTesting () const
 
V8_INLINE RawStorage GetRawStorage () const
 

Private Types

using Base = MemberBase<StorageType>
 
- Private Types inherited from cppgc::internal::MemberBase< StorageType >
using RawStorage = StorageType
 

Private Member Functions

V8_INLINE BasicMember (RawStorage raw)
 
V8_INLINE BasicMemberoperator= (RawStorage other)
 
V8_INLINE const TGetRawAtomic () const
 
V8_INLINE void InitializingWriteBarrier (T *value) const
 
V8_INLINE void InitializingWriteBarrier () const
 
V8_INLINE void AssigningWriteBarrier (T *value) const
 
V8_INLINE void AssigningWriteBarrier () const
 
V8_INLINE void CheckPointer (T *value)
 
V8_INLINE void CheckPointer ()
 
V8_INLINE void ClearFromGC () const
 
V8_INLINE TGetFromGC () const
 
- Private Member Functions inherited from cppgc::internal::MemberBase< StorageType >
V8_INLINE MemberBase ()=default
 
V8_INLINE MemberBase (const void *value)
 
V8_INLINE MemberBase (const void *value, AtomicInitializerTag)
 
V8_INLINE MemberBase (RawStorage raw)
 
V8_INLINE MemberBase (std::nullptr_t)
 
V8_INLINE MemberBase (SentinelPointer s)
 
V8_INLINE const void ** GetRawSlot () const
 
V8_INLINE const void * GetRaw () const
 
V8_INLINE void SetRaw (void *value)
 
V8_INLINE const void * GetRawAtomic () const
 
V8_INLINE void SetRawAtomic (const void *value)
 
V8_INLINE RawStorage GetRawStorage () const
 
V8_INLINE void SetRawStorageAtomic (RawStorage other)
 
V8_INLINE bool IsCleared () const
 
V8_INLINE void ClearFromGC () const
 

Friends

class cppgc::subtle::HeapConsistency
 
class cppgc::Visitor
 
template<typename U >
struct cppgc::TraceTrait
 
template<typename T1 , typename WeaknessTag1 , typename WriteBarrierPolicy1 , typename CheckingPolicy1 , typename StorageType1 >
class BasicMember
 

Detailed Description

template<typename T, typename WeaknessTag, typename WriteBarrierPolicy, typename CheckingPolicy, typename StorageType>
class cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >

Definition at line 21 of file type-traits.h.

Member Typedef Documentation

◆ AtomicInitializerTag

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
using cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::AtomicInitializerTag = typename Base::AtomicInitializerTag

Definition at line 97 of file member.h.

◆ Base

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
using cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::Base = MemberBase<StorageType>
private

Definition at line 78 of file member.h.

◆ PointeeType

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
using cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::PointeeType = T

Definition at line 81 of file member.h.

◆ RawStorage

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
using cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::RawStorage = typename Base::RawStorage

Definition at line 82 of file member.h.

Constructor & Destructor Documentation

◆ BasicMember() [1/17]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE constexpr cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::BasicMember ( )
constexprdefault

◆ BasicMember() [2/17]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE constexpr cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::BasicMember ( std::nullptr_t )
inlineconstexpr

Definition at line 85 of file member.h.

◆ BasicMember() [3/17]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::BasicMember ( SentinelPointer s)
inline

Definition at line 86 of file member.h.

◆ BasicMember() [4/17]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::BasicMember ( T * raw)
inline

Definition at line 87 of file member.h.

◆ BasicMember() [5/17]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::BasicMember ( T & raw)
inline

Definition at line 91 of file member.h.

◆ BasicMember() [6/17]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::BasicMember ( std::nullptr_t ,
AtomicInitializerTag atomic )
inline

Definition at line 98 of file member.h.

◆ BasicMember() [7/17]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::BasicMember ( SentinelPointer s,
AtomicInitializerTag atomic )
inline

Definition at line 100 of file member.h.

◆ BasicMember() [8/17]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::BasicMember ( T * raw,
AtomicInitializerTag atomic )
inline

Definition at line 102 of file member.h.

◆ BasicMember() [9/17]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::BasicMember ( T & raw,
AtomicInitializerTag atomic )
inline

Definition at line 107 of file member.h.

◆ BasicMember() [10/17]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::BasicMember ( const BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType > & other)
inline

Definition at line 111 of file member.h.

◆ BasicMember() [11/17]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
template<typename U , typename OtherBarrierPolicy , typename OtherWeaknessTag , typename OtherCheckingPolicy , std::enable_if_t< IsDecayedSameV< T, U > > * = nullptr>
V8_INLINE cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::BasicMember ( const BasicMember< U, OtherWeaknessTag, OtherBarrierPolicy, OtherCheckingPolicy, StorageType > & other)
inline

Definition at line 120 of file member.h.

◆ BasicMember() [12/17]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
template<typename U , typename OtherBarrierPolicy , typename OtherWeaknessTag , typename OtherCheckingPolicy , std::enable_if_t< IsStrictlyBaseOfV< T, U > > * = nullptr>
V8_INLINE cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::BasicMember ( const BasicMember< U, OtherWeaknessTag, OtherBarrierPolicy, OtherCheckingPolicy, StorageType > & other)
inline

Definition at line 128 of file member.h.

◆ BasicMember() [13/17]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::BasicMember ( BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType > && other)
inlinenoexcept

Definition at line 134 of file member.h.

Here is the call graph for this function:

◆ BasicMember() [14/17]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
template<typename U , typename OtherBarrierPolicy , typename OtherWeaknessTag , typename OtherCheckingPolicy , std::enable_if_t< IsDecayedSameV< T, U > > * = nullptr>
V8_INLINE cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::BasicMember ( BasicMember< U, OtherWeaknessTag, OtherBarrierPolicy, OtherCheckingPolicy, StorageType > && other)
inlinenoexcept

Definition at line 145 of file member.h.

Here is the call graph for this function:

◆ BasicMember() [15/17]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
template<typename U , typename OtherBarrierPolicy , typename OtherWeaknessTag , typename OtherCheckingPolicy , std::enable_if_t< IsStrictlyBaseOfV< T, U > > * = nullptr>
V8_INLINE cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::BasicMember ( BasicMember< U, OtherWeaknessTag, OtherBarrierPolicy, OtherCheckingPolicy, StorageType > && other)
inlinenoexcept

Definition at line 155 of file member.h.

Here is the call graph for this function:

◆ BasicMember() [16/17]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
template<typename U , typename PersistentWeaknessPolicy , typename PersistentLocationPolicy , typename PersistentCheckingPolicy , typename = std::enable_if_t<std::is_base_of<T, U>::value>>
V8_INLINE cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::BasicMember ( const BasicPersistent< U, PersistentWeaknessPolicy, PersistentLocationPolicy, PersistentCheckingPolicy > & p)
inline

Definition at line 167 of file member.h.

◆ BasicMember() [17/17]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::BasicMember ( RawStorage raw)
inlineexplicitprivate

Definition at line 287 of file member.h.

Member Function Documentation

◆ AssigningWriteBarrier() [1/2]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE void cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::AssigningWriteBarrier ( ) const
inlineprivate

Definition at line 314 of file member.h.

◆ AssigningWriteBarrier() [2/2]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE void cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::AssigningWriteBarrier ( T * value) const
inlineprivate

Definition at line 310 of file member.h.

◆ CheckPointer() [1/2]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE void cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::CheckPointer ( )
inlineprivate

Definition at line 322 of file member.h.

◆ CheckPointer() [2/2]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE void cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::CheckPointer ( T * value)
inlineprivate

Definition at line 319 of file member.h.

◆ Clear()

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE void cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::Clear ( )
inline

Definition at line 272 of file member.h.

Here is the caller graph for this function:

◆ ClearFromGC()

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE void cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::ClearFromGC ( ) const
inlineprivate

Definition at line 326 of file member.h.

◆ GetFromGC()

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE T * cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::GetFromGC ( ) const
inlineprivate

Definition at line 328 of file member.h.

◆ GetRawAtomic()

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE const T * cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::GetRawAtomic ( ) const
inlineprivate

Definition at line 299 of file member.h.

Here is the caller graph for this function:

◆ GetRawStorage()

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE RawStorage cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::GetRawStorage ( ) const
inline

Definition at line 284 of file member.h.

◆ GetSlotForTesting()

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE const T ** cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::GetSlotForTesting ( ) const
inline

Definition at line 280 of file member.h.

◆ InitializingWriteBarrier() [1/2]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE void cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::InitializingWriteBarrier ( ) const
inlineprivate

Definition at line 306 of file member.h.

◆ InitializingWriteBarrier() [2/2]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE void cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::InitializingWriteBarrier ( T * value) const
inlineprivate

Definition at line 303 of file member.h.

◆ operator bool()

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::operator bool ( ) const
inlineexplicit

Definition at line 255 of file member.h.

◆ operator T*()

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::operator T* ( ) const
inline

Definition at line 256 of file member.h.

◆ operator*()

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE T & cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::operator* ( ) const
inline

Definition at line 258 of file member.h.

◆ operator->()

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE T * cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::operator-> ( ) const
inline

Definition at line 257 of file member.h.

◆ operator=() [1/9]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE BasicMember & cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::operator= ( BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType > && other)
inlinenoexcept

Definition at line 194 of file member.h.

◆ operator=() [2/9]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
template<typename U , typename OtherWeaknessTag , typename OtherBarrierPolicy , typename OtherCheckingPolicy >
V8_INLINE BasicMember & cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::operator= ( BasicMember< U, OtherWeaknessTag, OtherBarrierPolicy, OtherCheckingPolicy, StorageType > && other)
inlinenoexcept

Definition at line 205 of file member.h.

◆ operator=() [3/9]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE BasicMember & cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::operator= ( const BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType > & other)
inline

Definition at line 173 of file member.h.

◆ operator=() [4/9]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
template<typename U , typename OtherWeaknessTag , typename OtherBarrierPolicy , typename OtherCheckingPolicy >
V8_INLINE BasicMember & cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::operator= ( const BasicMember< U, OtherWeaknessTag, OtherBarrierPolicy, OtherCheckingPolicy, StorageType > & other)
inline

Definition at line 182 of file member.h.

◆ operator=() [5/9]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
template<typename U , typename PersistentWeaknessPolicy , typename PersistentLocationPolicy , typename PersistentCheckingPolicy , typename = std::enable_if_t<std::is_base_of<T, U>::value>>
V8_INLINE BasicMember & cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::operator= ( const BasicPersistent< U, PersistentWeaknessPolicy, PersistentLocationPolicy, PersistentCheckingPolicy > & other)
inline

Definition at line 223 of file member.h.

◆ operator=() [6/9]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE BasicMember & cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::operator= ( RawStorage other)
inlineprivate

Definition at line 292 of file member.h.

◆ operator=() [7/9]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE BasicMember & cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::operator= ( SentinelPointer s)
inline

Definition at line 241 of file member.h.

◆ operator=() [8/9]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE BasicMember & cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::operator= ( std::nullptr_t )
inline

Definition at line 237 of file member.h.

◆ operator=() [9/9]

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE BasicMember & cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::operator= ( T * other)
inline

Definition at line 230 of file member.h.

◆ Release()

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE T * cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::Release ( )
inline

Definition at line 274 of file member.h.

◆ Swap()

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
template<typename OtherWeaknessTag , typename OtherBarrierPolicy , typename OtherCheckingPolicy >
V8_INLINE void cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::Swap ( BasicMember< T, OtherWeaknessTag, OtherBarrierPolicy, OtherCheckingPolicy, StorageType > & other)
inline

Definition at line 248 of file member.h.

◆ V8_CLANG_NO_SANITIZE()

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
V8_INLINE cppgc::internal::BasicMember< T, WeaknessTag, WriteBarrierPolicy, CheckingPolicy, StorageType >::V8_CLANG_NO_SANITIZE ( "cfi-unrelated-cast" ) const
inline

Definition at line 263 of file member.h.

Friends And Related Symbol Documentation

◆ BasicMember

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
template<typename T1 , typename WeaknessTag1 , typename WriteBarrierPolicy1 , typename CheckingPolicy1 , typename StorageType1 >
friend class BasicMember
friend

Definition at line 336 of file member.h.

◆ cppgc::subtle::HeapConsistency

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
friend class cppgc::subtle::HeapConsistency
friend

Definition at line 330 of file member.h.

◆ cppgc::TraceTrait

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
template<typename U >
friend struct cppgc::TraceTrait
friend

Definition at line 333 of file member.h.

◆ cppgc::Visitor

template<typename T , typename WeaknessTag , typename WriteBarrierPolicy , typename CheckingPolicy , typename StorageType >
friend class cppgc::Visitor
friend

Definition at line 331 of file member.h.


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