LLVM 17.0.0git
|
A smart pointer to a reference-counted object that inherits from RefCountedBase or ThreadSafeRefCountedBase. More...
#include "llvm/ADT/IntrusiveRefCntPtr.h"
Public Types | |
using | element_type = T |
Public Member Functions | |
IntrusiveRefCntPtr ()=default | |
IntrusiveRefCntPtr (T *obj) | |
IntrusiveRefCntPtr (const IntrusiveRefCntPtr &S) | |
IntrusiveRefCntPtr (IntrusiveRefCntPtr &&S) | |
template<class X , std::enable_if_t< std::is_convertible< X *, T * >::value, bool > = true> | |
IntrusiveRefCntPtr (IntrusiveRefCntPtr< X > S) | |
template<class X , std::enable_if_t< std::is_convertible< X *, T * >::value, bool > = true> | |
IntrusiveRefCntPtr (std::unique_ptr< X > S) | |
~IntrusiveRefCntPtr () | |
IntrusiveRefCntPtr & | operator= (IntrusiveRefCntPtr S) |
T & | operator* () const |
T * | operator-> () const |
T * | get () const |
operator bool () const | |
void | swap (IntrusiveRefCntPtr &other) |
void | reset () |
void | resetWithoutRelease () |
Friends | |
template<typename X > | |
class | IntrusiveRefCntPtr |
A smart pointer to a reference-counted object that inherits from RefCountedBase or ThreadSafeRefCountedBase.
This class increments its pointee's reference count when it is created, and decrements its refcount when it's destroyed (or is changed to point to a different object).
Definition at line 168 of file IntrusiveRefCntPtr.h.
using llvm::IntrusiveRefCntPtr< T >::element_type = T |
Definition at line 172 of file IntrusiveRefCntPtr.h.
|
explicitdefault |
|
inline |
Definition at line 175 of file IntrusiveRefCntPtr.h.
|
inline |
Definition at line 176 of file IntrusiveRefCntPtr.h.
|
inline |
Definition at line 177 of file IntrusiveRefCntPtr.h.
|
inline |
Definition at line 181 of file IntrusiveRefCntPtr.h.
|
inline |
Definition at line 187 of file IntrusiveRefCntPtr.h.
|
inline |
Definition at line 191 of file IntrusiveRefCntPtr.h.
|
inline |
Definition at line 200 of file IntrusiveRefCntPtr.h.
Referenced by llvm::ImmutableSetRef< ValT, ValInfo >::add(), llvm::ImmutableSetRef< ValT, ValInfo >::asImmutableSet(), llvm::ImmutableSet< ValT, ValInfo >::begin(), llvm::ImmutableSetRef< ValT, ValInfo >::begin(), llvm::orc::JITDylib::define(), llvm::ImmutableSet< ValT, ValInfo >::getRoot(), llvm::ImmutableSet< ValT, ValInfo >::getRootWithoutRetain(), llvm::ImmutableSetRef< ValT, ValInfo >::getRootWithoutRetain(), llvm::simplify_type< const IntrusiveRefCntPtr< T > >::getSimplifiedValue(), llvm::simplify_type< IntrusiveRefCntPtr< T > >::getSimplifiedValue(), llvm::orc::ResourceTrackerDefunct::log(), and llvm::ImmutableSetRef< ValT, ValInfo >::remove().
|
inlineexplicit |
Definition at line 201 of file IntrusiveRefCntPtr.h.
|
inline |
Definition at line 198 of file IntrusiveRefCntPtr.h.
|
inline |
Definition at line 199 of file IntrusiveRefCntPtr.h.
|
inline |
Definition at line 193 of file IntrusiveRefCntPtr.h.
References llvm::IntrusiveRefCntPtr< T >::swap().
|
inline |
Definition at line 209 of file IntrusiveRefCntPtr.h.
|
inline |
Definition at line 214 of file IntrusiveRefCntPtr.h.
|
inline |
Definition at line 203 of file IntrusiveRefCntPtr.h.
Referenced by llvm::IntrusiveRefCntPtr< T >::operator=().
Definition at line 227 of file IntrusiveRefCntPtr.h.