emlabcpp
modern opinionated embedded C++ library
emlabcpp::rpc::derive< ID, Method > Struct Template Reference

#include <rpc.h>

Public Types

using sig = signature_of< decltype(Method) >
 
using request = typename sig::args_type
 
using reply = std::conditional_t< void_returning, void_return_type, typename sig::return_type >
 

Static Public Member Functions

static constexpr reply handle (auto &obj, auto const &... args)
 

Static Public Attributes

static constexpr auto id = ID
 
static constexpr bool void_returning = std::is_void_v< typename sig::return_type >
 

Member Typedef Documentation

◆ reply

template<auto ID, auto Method>
using emlabcpp::rpc::derive< ID, Method >::reply = std::conditional_t< void_returning, void_return_type, typename sig::return_type >

◆ request

template<auto ID, auto Method>
using emlabcpp::rpc::derive< ID, Method >::request = typename sig::args_type

◆ sig

template<auto ID, auto Method>
using emlabcpp::rpc::derive< ID, Method >::sig = signature_of< decltype( Method ) >

Member Function Documentation

◆ handle()

template<auto ID, auto Method>
static constexpr reply emlabcpp::rpc::derive< ID, Method >::handle ( auto &  obj,
auto const &...  args 
)
inlinestaticconstexpr

Member Data Documentation

◆ id

template<auto ID, auto Method>
constexpr auto emlabcpp::rpc::derive< ID, Method >::id = ID
staticconstexpr

◆ void_returning

template<auto ID, auto Method>
constexpr bool emlabcpp::rpc::derive< ID, Method >::void_returning = std::is_void_v< typename sig::return_type >
staticconstexpr

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