Handles unpacking objects stored in an arg_storage.
More...
|
| packed_value (storage_type *const p, void *const base, message_ptr m) noexcept |
|
| packed_value (storage_type *const p, void *const base, message_shared_ptr &m) noexcept |
|
void | set (storage_type *const p, void *const base, message_ptr m) noexcept |
| Sets the information required to unpack and retrieve an object. More...
|
|
void | set (storage_type *const p, void *const base, message_shared_ptr &m) noexcept |
| Sets the information required to unpack and retrieve an object. More...
|
|
void | set (T const &t) |
| Sets a value in packed form that will be unpacked through get(). More...
|
|
void | set (T &&t) |
|
T | get (void) |
| Unpacks and returns the packed object. More...
|
|
void | release (void) noexcept |
| Releases the buffer without unpacking. More...
|
|
template<typename T>
struct stapl::runtime::packed_value< T >
Handles unpacking objects stored in an arg_storage.
- Template Parameters
-
- Warning
- If a message or value is set, then release() or get() has to be called to ensure proper resource reclamation.
- See also
- arg_storage
◆ set() [1/4]
Sets the information required to unpack and retrieve an object.
This function stores a pointer to the buffer where the object remains packed until get() is called.
- Parameters
-
◆ set() [2/4]
Sets the information required to unpack and retrieve an object.
This function stores a pointer to the buffer where the object remains packed until get() is called.
- Warning
- The reference count of the buffer will be increased to protect against accidental deletion.
- Parameters
-
◆ set() [3/4]
Sets a value in packed form that will be unpacked through get().
This function will create a new message to store the value and stores a pointer to the buffer where the object remains packed until get() is called.
- Parameters
-
◆ set() [4/4]
◆ get()
Unpacks and returns the packed object.
- Warning
- This function will clean-up after the unpacking and will decrease the reference count of the buffer, which may lead to its destruction.
◆ release()
The documentation for this struct was generated from the following file: