|
xapian-core
2.0.0
|
A normally non-NULL smart pointer using intrusive reference counting. More...
#include <intrusive_ptr.h>
Inheritance diagram for Xapian::Internal::intrusive_ptr_nonnull< T >:Public Member Functions | |
| intrusive_ptr_nonnull (T *p) XAPIAN_NONNULL() | |
| template<class U > | |
| intrusive_ptr_nonnull (intrusive_ptr_nonnull< U > const &rhs) | |
| intrusive_ptr_nonnull (intrusive_ptr_nonnull const &rhs) | |
| ~intrusive_ptr_nonnull () | |
| intrusive_ptr_nonnull (intrusive_ptr_nonnull &&rhs) | |
| intrusive_ptr_nonnull & | operator= (intrusive_ptr_nonnull &&rhs) |
| template<class U > | |
| intrusive_ptr_nonnull (intrusive_ptr_nonnull< U > &&rhs) | |
| template<class U > | |
| intrusive_ptr_nonnull & | operator= (intrusive_ptr_nonnull< U > &&rhs) |
| intrusive_ptr_nonnull & | operator= (intrusive_ptr_nonnull const &rhs) |
| intrusive_ptr_nonnull & | operator= (T *rhs) XAPIAN_NONNULL() |
| T * | get () const |
| T & | operator* () const |
| T * | operator-> () const |
| void | swap (intrusive_ptr_nonnull &rhs) |
Private Types | |
| typedef intrusive_ptr_nonnull | this_type |
Private Attributes | |
| T * | px |
Friends | |
| template<class U > | |
| class | intrusive_ptr_nonnull |
A normally non-NULL smart pointer using intrusive reference counting.
The only case where it can be NULL is when it's been moved-from. Once moved from, the only valid operations are to destroy the smart pointer, or to assign or move assign to it (after which all operations are valid again).
Definition at line 223 of file intrusive_ptr.h.
|
private |
Definition at line 227 of file intrusive_ptr.h.
|
inline |
Definition at line 231 of file intrusive_ptr.h.
References Xapian::Internal::intrusive_ptr_nonnull< T >::px.
|
inline |
Definition at line 237 of file intrusive_ptr.h.
References Xapian::Internal::intrusive_ptr_nonnull< T >::px.
|
inline |
Definition at line 243 of file intrusive_ptr.h.
References Xapian::Internal::intrusive_ptr_nonnull< T >::px.
|
inline |
Definition at line 248 of file intrusive_ptr.h.
References Xapian::Internal::intrusive_ptr_nonnull< T >::px.
|
inline |
Definition at line 253 of file intrusive_ptr.h.
|
inline |
Definition at line 267 of file intrusive_ptr.h.
|
inline |
Definition at line 291 of file intrusive_ptr.h.
References Xapian::Internal::intrusive_ptr_nonnull< T >::px.
Referenced by Xapian::Database::add_database_(), Matcher::get_mset(), BackendManagerRemoteTcp::kill_remote(), PostListTree::next(), Xapian::Internal::operator!=(), Xapian::Internal::operator==(), GlassWritableDatabase::replace_document(), PostListTree::set_postlists(), and test_movesupport1().
|
inline |
Definition at line 296 of file intrusive_ptr.h.
References Xapian::Internal::intrusive_ptr_nonnull< T >::px.
|
inline |
Definition at line 301 of file intrusive_ptr.h.
References Xapian::Internal::intrusive_ptr_nonnull< T >::px.
|
inline |
Definition at line 258 of file intrusive_ptr.h.
References Xapian::Internal::intrusive_ptr_nonnull< T >::swap().
|
inline |
Definition at line 279 of file intrusive_ptr.h.
References Xapian::Internal::intrusive_ptr_nonnull< T >::swap().
|
inline |
Definition at line 273 of file intrusive_ptr.h.
References Xapian::Internal::intrusive_ptr_nonnull< T >::swap().
|
inline |
Definition at line 285 of file intrusive_ptr.h.
References Xapian::Internal::intrusive_ptr_nonnull< T >::swap().
|
inline |
Definition at line 306 of file intrusive_ptr.h.
References Xapian::Internal::intrusive_ptr_nonnull< T >::px.
Referenced by Xapian::Internal::intrusive_ptr_nonnull< T >::operator=().
Definition at line 264 of file intrusive_ptr.h.
|
private |
Definition at line 320 of file intrusive_ptr.h.
Referenced by Xapian::Internal::intrusive_ptr_nonnull< T >::get(), Xapian::Internal::intrusive_ptr_nonnull< T >::intrusive_ptr_nonnull(), Xapian::Internal::intrusive_ptr_nonnull< T >::operator*(), Xapian::Internal::intrusive_ptr_nonnull< T >::operator->(), Xapian::Internal::intrusive_ptr_nonnull< T >::swap(), and Xapian::Internal::intrusive_ptr_nonnull< T >::~intrusive_ptr_nonnull().