|
tlx
|
#include <algorithm>#include <atomic>#include <cassert>#include <iosfwd>#include <type_traits>#include <utility>Go to the source code of this file.
Classes | |
| class | CountingPtrDefaultDeleter |
| default deleter for CountingPtr More... | |
| class | CountingPtrNoOperationDeleter |
| dummy deleter for CountingPtr More... | |
| class | CountingPtr< Type, Deleter > |
| High-performance smart pointer used as a wrapping reference counting pointer. More... | |
| class | ReferenceCounter |
| Provides reference counting abilities for use with CountingPtr. More... | |
Namespaces | |
| namespace | tlx |
Typedefs | |
| template<typename Type> | |
| using | counting_ptr |
| make alias due to similarity with std::shared_ptr<T> | |
| template<typename Type> | |
| using | CountingPtrNoDelete |
| make alias for dummy deleter | |
| using | reference_counter |
| make alias due to CountingPtr's similarity with std::shared_ptr<T> | |
Functions | |
| template<typename Type, typename... Args> | |
| CountingPtr< Type > | make_counting (Args &&... args) |
| method analogous to std::make_shared and std::make_unique. | |
| template<typename A, typename D> | |
| void | swap (CountingPtr< A, D > &a1, CountingPtr< A, D > &a2) noexcept |
| swap enclosed object with another counting pointer (no reference counts need change) | |
| template<typename A, typename D> | |
| std::ostream & | operator<< (std::ostream &os, const CountingPtr< A, D > &c) |
| print pointer | |