di 0.1.0
Loading...
Searching...
No Matches
ipc_protocol.h File Reference

Go to the source code of this file.

Classes

struct  di::execution::Protocol< ClientMessages, ServerMessages >
struct  di::execution::send_ns::Function
struct  di::execution::ipc::Receiver< Reader >
struct  di::execution::ipc::Transmitter< Writer >
struct  di::execution::ipc::ReceiverTransmitter< RW >
struct  di::execution::ipc::Transmit< F >
struct  di::execution::ipc::Receive< F >
struct  di::execution::ipc::Allocator< Alloc >
struct  di::Protocol< ClientMessages, ServerMessages >

Namespaces

namespace  di
namespace  di::concepts
namespace  di::meta
namespace  di::execution
namespace  di::execution::send_ns
namespace  di::execution::ipc

Concepts

concept  di::concepts::MessageWithReply
concept  di::concepts::HasProtocol
concept  di::concepts::Reply

Typedefs

template<typename T>
using di::meta::MessageReply = Type<detail::MessageReplyHelper<T>>
template<typename T>
using di::meta::Protocol = typename T::Protocol
template<concepts::HasProtocol T>
using di::meta::MessageTypesWithoutReplies
template<concepts::HasProtocol T>
using di::meta::PeerMessageTypesWithoutReplies
template<concepts::HasProtocol T>
using di::meta::MessageTypes = Concat<MessageTypesWithoutReplies<T>, detail::MessagesReplies<PeerMessageTypesWithoutReplies<T>>>
template<concepts::HasProtocol T>
using di::meta::AllMessageTypesWithoutReplies = Concat<typename meta::Protocol<T>::Client, typename meta::Protocol<T>::Server>
using di::execution::ipc::BaseNamedArguments

Functions

template<typename Reader>
 di::execution::ipc::Receiver (Reader &&) -> Receiver< Reader >
template<typename Writer>
 di::execution::ipc::Transmitter (Writer &&) -> Transmitter< di::meta::RemoveReference< Writer > >
template<typename RW>
 di::execution::ipc::ReceiverTransmitter (RW &&) -> ReceiverTransmitter< di::meta::RemoveReference< RW > >
template<typename F>
 di::execution::ipc::Transmit (F &&) -> Transmit< F >
template<typename F>
 di::execution::ipc::Receive (F &&) -> Receive< F >
template<typename Alloc>
 di::execution::ipc::Allocator (Alloc &) -> Allocator< Alloc >

Variables

template<typename T>
constexpr bool is_client = requires { typename T::is_client; }
template<typename T>
constexpr bool is_server = requires { typename T::is_server; }
constexpr auto di::execution::send = send_ns::Function {}
constexpr auto di::send

Variable Documentation

◆ is_client

template<typename T>
bool is_client = requires { typename T::is_client; }
inlineconstexpr

◆ is_server

template<typename T>
bool is_server = requires { typename T::is_server; }
inlineconstexpr