reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

include/llvm/ADT/IntrusiveRefCntPtr.h
  125   static void retain(T *obj) { obj->Retain(); }
  126   static void release(T *obj) { obj->Release(); }
  136   T *Obj = nullptr;
  139   using element_type = T;
  142   IntrusiveRefCntPtr(T *obj) : Obj(obj) { retain(); }
  147   IntrusiveRefCntPtr(IntrusiveRefCntPtr<X> &&S) : Obj(S.get()) {
  152   IntrusiveRefCntPtr(const IntrusiveRefCntPtr<X> &S) : Obj(S.get()) {
  163   T &operator*() const { return *Obj; }
  164   T *operator->() const { return Obj; }
  165   T *get() const { return Obj; }
  184       IntrusiveRefCntPtrInfo<T>::retain(Obj);
  189       IntrusiveRefCntPtrInfo<T>::release(Obj);
unittests/ADT/IntrusiveRefCntPtrTest.cpp
   15 struct SimpleRefCounted : public RefCountedBase<SimpleRefCounted> {
   17   SimpleRefCounted(const SimpleRefCounted &) : RefCountedBase() {
   30     SimpleRefCounted *S1 = new SimpleRefCounted;
   30     SimpleRefCounted *S1 = new SimpleRefCounted;
   31     IntrusiveRefCntPtr<SimpleRefCounted> R1 = S1;
   32     SimpleRefCounted *S2 = new SimpleRefCounted(*S1);
   32     SimpleRefCounted *S2 = new SimpleRefCounted(*S1);
   33     IntrusiveRefCntPtr<SimpleRefCounted> R2 = S2;