|
CBMC
|
Include dependency graph for small_shared_n_way_ptr.h:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Classes | |
| struct | get_typet< I, Ts > |
| Get the type with the given index in the parameter pack. More... | |
| struct | destructt< I, pointee_baset, Ts > |
| struct | destructt< 0, pointee_baset, Ts... > |
| class | small_shared_n_way_ptrt< Ts > |
| This class is similar to small_shared_ptrt and boost's intrusive_ptr. More... | |
| class | small_shared_n_way_pointee_baset< N, Num > |
Functions | |
| template<std::size_t I, typename U , typename V , typename... Ts> | |
| small_shared_n_way_ptrt< U, V > | make_shared_2 (Ts &&... ts) |
| Constructs a small shared n-way pointer, with two possible pointee types (i.e., n = 2), and constructs an object of either type U (when I = 0) or type V (when I = 1) pointed to by the shared pointer. | |
| template<std::size_t I, typename U , typename V , typename W , typename... Ts> | |
| small_shared_n_way_ptrt< U, V, W > | make_shared_3 (Ts &&... ts) |
| Constructs a small shared n-way pointer, with three possible pointee types (i.e., n = 3), and constructs an object of either type U (when I = 0), type V (when I = 1), or type W (when I = 2), pointed to by the shared pointer. | |
| template<typename... Ts> | |
| bool | operator== (const small_shared_n_way_ptrt< Ts... > &lhs, const small_shared_n_way_ptrt< Ts... > &rhs) |
| template<typename... Ts> | |
| bool | operator!= (const small_shared_n_way_ptrt< Ts... > &lhs, const small_shared_n_way_ptrt< Ts... > &rhs) |
| small_shared_n_way_ptrt< U, V > make_shared_2 | ( | Ts &&... | ts | ) |
Constructs a small shared n-way pointer, with two possible pointee types (i.e., n = 2), and constructs an object of either type U (when I = 0) or type V (when I = 1) pointed to by the shared pointer.
Arguments ts are passed to the constructor of U or V. U and V must be subclasses of small_shared_n_way_pointee_baset<2, Num>.
| I | index of the type of object to construct (0 -> U, 1 -> V) |
| U | first possible pointee type |
| V | second possible pointee type |
| Ts | types of arguments to pass to the constructor of U or V |
| ts | arguments to pass to the constructor of U or V |
Definition at line 272 of file small_shared_n_way_ptr.h.
| small_shared_n_way_ptrt< U, V, W > make_shared_3 | ( | Ts &&... | ts | ) |
Constructs a small shared n-way pointer, with three possible pointee types (i.e., n = 3), and constructs an object of either type U (when I = 0), type V (when I = 1), or type W (when I = 2), pointed to by the shared pointer.
Arguments ts are passed to the constructor of U, V, or W. U, V, and W must be subclasses of small_shared_n_way_pointee_baset<3, Num>.
| I | index of the type of object to construct (0 -> U, 1 -> V) |
| U | first possible pointee type |
| V | second possible pointee type |
| W | third possible pointee type |
| Ts | types of arguments to pass to the constructor of U or V |
| ts | arguments to pass to the constructor of U or V |
Definition at line 291 of file small_shared_n_way_ptr.h.
| bool operator!= | ( | const small_shared_n_way_ptrt< Ts... > & | lhs, |
| const small_shared_n_way_ptrt< Ts... > & | rhs | ||
| ) |
Definition at line 307 of file small_shared_n_way_ptr.h.
| bool operator== | ( | const small_shared_n_way_ptrt< Ts... > & | lhs, |
| const small_shared_n_way_ptrt< Ts... > & | rhs | ||
| ) |
Definition at line 299 of file small_shared_n_way_ptr.h.