Storage for an object of type T that is retrieved by lvalue reference.
More...
|
| | arg_storage (T const &t, void *const base, std::size_t &size) noexcept |
| | Constructs a new object by packing t in it. More...
|
| |
| template<typename Tuple > |
| | arg_storage (Tuple &&t) noexcept |
| | Packs the object contained in tuple t. More...
|
| |
| T & | get (void *const base) |
| | Returns the stored object after unpacking it. More...
|
| |
| T & | get (void *const base, std::size_t &size) |
| | Returns the stored object after unpacking it. More...
|
| |
|
|
static std::size_t | packed_size (T const &t) noexcept |
| | Returns the packed size of t.
|
| |
|
|
static std::size_t | packed_size (std::remove_cv< T >::type const &t) noexcept |
| | Returns the packed size of t.
|
| |
template<typename T>
class stapl::runtime::arg_storage< T >
Storage for an object of type T that is retrieved by lvalue reference.
- Template Parameters
-
◆ arg_storage() [1/2]
Constructs a new object by packing t in it.
This constructor will copy the dynamic part of the object at base + size, which should be big enough to fit it.
- Parameters
-
| t | Object to pack. |
| base | Pointer to buffer start where the dynamic part of t can be stored in. |
| size | Offset from base where space is available. |
◆ arg_storage() [2/2]
template<typename T >
template<typename Tuple >
Packs the object contained in tuple t.
- Parameters
-
| t | Tuple with the object to pack, the start of the buffer for the dynamic part of the object and the offset from the start of the buffer. |
◆ get() [1/2]
Returns the stored object after unpacking it.
- Parameters
-
| base | Buffer where the dynamic part of the object is stored. |
◆ get() [2/2]
Returns the stored object after unpacking it.
- Parameters
-
| base | Buffer where the dynamic part of the object is stored. |
| size | Variable to store how many bytes were unpacked. |
The documentation for this class was generated from the following file: