21concept MessageWithReply =
requires {
typename T::Reply; } && !di::SameAs<T, typename T::Reply>;
31 template<concepts::MessageWithReply T>
33 using Type =
typename T::Reply;
42template<concepts::TypeList ClientMessages, concepts::TypeList ServerMessages>
51requires(
requires {
typename T::Protocol; })
61constexpr inline bool is_client =
requires {
typename T::is_client; };
64constexpr inline bool is_server =
requires {
typename T::is_server; };
70 template<concepts::TypeList Messages>
74template<concepts::HasProtocol T>
79template<concepts::HasProtocol T>
84template<concepts::HasProtocol T>
87template<concepts::HasProtocol T>
92template<
typename T,
typename Message>
102 auto operator()(SendToken send_token, Message&& message, Args&&... args)
const ->
concepts::Sender auto {
103 return tag_invoke(*
this, di::move(send_token), di::forward<Message>(message), di::forward<Args>(args)...);
111 template<concepts::AsyncReadable Reader>
114 template<
typename Reader>
117 template<concepts::AsyncWritable Writer>
120 template<
typename Writer>
123 template<concepts::AsyncReadable RW>
127 template<
typename RW>
130 template<concepts::MoveConstructible F>
136 template<concepts::MoveConstructible F>
142 template<concepts::Allocator Alloc>
146 template<
typename Alloc>
Definition async_write_some.h:36
Definition operations.h:34
Definition ipc_protocol.h:57
Definition ipc_protocol.h:21
Definition ipc_protocol.h:93
Definition tag_invoke.h:33
constexpr bool is_server
Definition ipc_protocol.h:64
constexpr bool is_client
Definition ipc_protocol.h:61
Definition any_storable.h:9
Definition ipc_protocol.h:110
Transmit(F &&) -> Transmit< F >
Receiver(Reader &&) -> Receiver< Reader >
ReceiverTransmitter(RW &&) -> ReceiverTransmitter< di::meta::RemoveReference< RW > >
Receive(F &&) -> Receive< F >
Transmitter(Writer &&) -> Transmitter< di::meta::RemoveReference< Writer > >
meta::List< InPlaceTemplate< Receiver >, InPlaceTemplate< Transmitter >, InPlaceTemplate< ReceiverTransmitter >, InPlaceTemplate< Transmit >, InPlaceTemplate< Receive >, InPlaceTemplate< Allocator > > BaseNamedArguments
Definition ipc_protocol.h:149
Allocator(Alloc &) -> Allocator< Alloc >
Definition ipc_protocol.h:97
constexpr auto send
Definition ipc_protocol.h:108
meta::List< ReadSome > Reader
Definition reader.h:34
meta::List< WriteSome, Flush > Writer
Definition writer.h:59
Definition json_deserializer.h:532
Definition zstring_parser.h:9
constexpr tag_invoke_detail::TagInvokeFn tag_invoke
Definition tag_invoke.h:22
Definition ipc_protocol.h:43
ClientMessages Client
Definition ipc_protocol.h:44
ServerMessages Server
Definition ipc_protocol.h:45
Definition ipc_protocol.h:144
Definition ipc_protocol.h:137
Definition ipc_protocol.h:125
Definition ipc_protocol.h:112
Definition ipc_protocol.h:131
Definition ipc_protocol.h:118
Definition ipc_protocol.h:98
Definition in_place_template.h:5