libcaf
0.17.1
|
Encapsulates arbitrary data in a message element. More...
#include <mailbox_element.hpp>
Inherits caf::mailbox_element, and tuple_vals_impl< type_erased_tuple, Ts...>.
Public Member Functions | |
template<class... Us> | |
mailbox_element_vals (strong_actor_ptr &&x0, message_id x1, forwarding_stack &&x2, Us &&...xs) | |
type_erased_tuple & | content () override |
const type_erased_tuple & | content () const override |
message | move_content_to_message () override |
message | copy_content_to_message () const override |
void | dispose () noexcept |
![]() | |
mailbox_element (strong_actor_ptr &&x, message_id y, forwarding_stack &&z) | |
bool | is_high_priority () const |
mailbox_element (mailbox_element &&)=delete | |
mailbox_element (const mailbox_element &)=delete | |
mailbox_element & | operator= (mailbox_element &&)=delete |
mailbox_element & | operator= (const mailbox_element &)=delete |
![]() | |
virtual void | request_deletion (bool decremented_rc) const noexcept |
Default implementations calls `delete this, but can be overriden in case deletion depends on some condition or the class doesn't use default new/delete. More... | |
Additional Inherited Members | |
![]() | |
using | forwarding_stack = std::vector< strong_actor_ptr > |
![]() | |
strong_actor_ptr | sender |
Source of this message and receiver of the final response. | |
message_id | mid |
Denotes whether this an asynchronous message or a request. | |
forwarding_stack | stages |
stages.back() is the next actor in the forwarding chain, if this is empty then the original sender receives the response. More... | |
![]() | |
using | mailbox_element_ptr = std::unique_ptr< mailbox_element, detail::disposer > |
template<class Inspector > | |
Inspector::result_type | inspect (Inspector &f, mailbox_element &x) |
mailbox_element_ptr | make_mailbox_element (strong_actor_ptr sender, message_id id, mailbox_element::forwarding_stack stages, message msg) |
template<class T , class... Ts> | |
std::enable_if< !std::is_same < typename std::decay< T > ::type, message >::value||(sizeof...(Ts) > ) mailbox_element_ptr::type | make_mailbox_element (strong_actor_ptr sender, message_id id, mailbox_element::forwarding_stack stages, T &&x, Ts &&...xs) |
Encapsulates arbitrary data in a message element.