emlabcpp
modern opinionated embedded C++ library
emlabcpp::protocol::multiplexed_endpoint< Packet > Class Template Reference

#include <multiplexer.h>

Public Types

using message_type = typename Packet::message_type
 
using payload_message = typename Packet::payload_type::template nth_def< 1 >
 

Public Member Functions

template<std::size_t N>
message_type serialize (channel_type chann, message< N > const &msg)
 
template<std::size_t N>
message_type serialize (channel_type chann, sizeless_message< N > const &msg)
 
template<typename Container >
void insert (Container &&data)
 
std::variant< std::size_t, std::tuple< channel_type, payload_message >, error_recordget_value ()
 
template<typename NextCallable , typename ValueCallable , typename ErrorCallable >
auto match_value (NextCallable &&nc, ValueCallable &&vc, ErrorCallable &&ec)
 
template<typename... Slotted>
outcome dispatch_value (Slotted &... slotted)
 

Member Typedef Documentation

◆ message_type

template<typename Packet >
using emlabcpp::protocol::multiplexed_endpoint< Packet >::message_type = typename Packet::message_type

◆ payload_message

template<typename Packet >
using emlabcpp::protocol::multiplexed_endpoint< Packet >::payload_message = typename Packet::payload_type::template nth_def< 1 >

Member Function Documentation

◆ dispatch_value()

template<typename Packet >
template<typename... Slotted>
outcome emlabcpp::protocol::multiplexed_endpoint< Packet >::dispatch_value ( Slotted &...  slotted)
inline

◆ get_value()

template<typename Packet >
std::variant< std::size_t, std::tuple< channel_type, payload_message >, error_record > emlabcpp::protocol::multiplexed_endpoint< Packet >::get_value ( )
inline

◆ insert()

template<typename Packet >
template<typename Container >
void emlabcpp::protocol::multiplexed_endpoint< Packet >::insert ( Container &&  data)
inline

◆ match_value()

template<typename Packet >
template<typename NextCallable , typename ValueCallable , typename ErrorCallable >
auto emlabcpp::protocol::multiplexed_endpoint< Packet >::match_value ( NextCallable &&  nc,
ValueCallable &&  vc,
ErrorCallable &&  ec 
)
inline

◆ serialize() [1/2]

template<typename Packet >
template<std::size_t N>
message_type emlabcpp::protocol::multiplexed_endpoint< Packet >::serialize ( channel_type  chann,
message< N > const &  msg 
)
inline

◆ serialize() [2/2]

template<typename Packet >
template<std::size_t N>
message_type emlabcpp::protocol::multiplexed_endpoint< Packet >::serialize ( channel_type  chann,
sizeless_message< N > const &  msg 
)
inline

The documentation for this class was generated from the following file: