start rewriting ASIO-related network service implementation
This commit is contained in:
@@ -50,20 +50,20 @@ using adc_common_duration_t = adc_duration_common_type_t<std::chrono::nanosecond
|
||||
/*
|
||||
struct NetService {
|
||||
typedef ImplementationDependentT netservice_ident_t;
|
||||
typedef ImplementationDependentT async_ctx_t;
|
||||
typedef ImplementationDependentT async_call_ctx_t;
|
||||
typedef ImplementationDependentT endpoint_t;
|
||||
|
||||
template<typename Rep, typename Period>
|
||||
auto asyncAccept(const endpoint_t&, async_ctx_t&, const std::chrono::duration<Rep, Period>&)
|
||||
auto asyncAccept(const endpoint_t&, async_call_ctx_t&, const std::chrono::duration<Rep, Period>&)
|
||||
|
||||
template<typename Rep, typename Period>
|
||||
auto asyncConnect(const endpoint_t&, async_ctx_t&, const std::chrono::duration<Rep, Period>&)
|
||||
auto asyncConnect(const endpoint_t&, async_call_ctx_t&, const std::chrono::duration<Rep, Period>&)
|
||||
|
||||
template<typename Rep, typename Period, adc::traits::adc_input_char_range R>
|
||||
auto asyncSend(const R&, async_ctx_t&, const std::chrono::duration<Rep, Period>&)
|
||||
auto asyncSend(const R&, async_call_ctx_t&, const std::chrono::duration<Rep, Period>&)
|
||||
|
||||
template<typename Rep, typename Period>
|
||||
auto asyncReceived(async_ctx_t&, const std::chrono::duration<Rep, Period>&)
|
||||
auto asyncReceived(async_call_ctx_t&, const std::chrono::duration<Rep, Period>&)
|
||||
|
||||
template<typename Rep, typename Period>
|
||||
auto accept(const endpoint_t&, const std::chrono::duration<Rep, Period>&)
|
||||
@@ -92,20 +92,20 @@ concept adc_netservice_c =
|
||||
// netservice_ident_t ident() const
|
||||
{ srv_const.ident() } -> std::same_as<typename SRVT::netservice_ident_t>;
|
||||
|
||||
typename SRVT::async_ctx_t;
|
||||
typename SRVT::async_call_ctx_t;
|
||||
typename SRVT::endpoint_t;
|
||||
|
||||
// asynchronous (non-blocking) operations
|
||||
srv.asyncAccept(std::declval<const typename SRVT::endpoint_t&>(), std::declval<typename SRVT::async_ctx_t&>(),
|
||||
std::declval<const DURT&>());
|
||||
srv.asyncAccept(std::declval<const typename SRVT::endpoint_t&>(),
|
||||
std::declval<typename SRVT::async_call_ctx_t&>(), std::declval<const DURT&>());
|
||||
|
||||
srv.asyncConnect(std::declval<const typename SRVT::endpoint_t&>(), std::declval<typename SRVT::async_ctx_t&>(),
|
||||
std::declval<const DURT&>());
|
||||
srv.asyncConnect(std::declval<const typename SRVT::endpoint_t&>(),
|
||||
std::declval<typename SRVT::async_call_ctx_t&>(), std::declval<const DURT&>());
|
||||
|
||||
srv.asyncSend(std::declval<const SMSGT&>(), std::declval<typename SRVT::async_ctx_t&>(),
|
||||
srv.asyncSend(std::declval<const SMSGT&>(), std::declval<typename SRVT::async_call_ctx_t&>(),
|
||||
std::declval<const DURT&>());
|
||||
|
||||
srv.asyncReceive(std::declval<typename SRVT::async_ctx_t&>(), std::declval<const DURT&>());
|
||||
srv.asyncReceive(std::declval<typename SRVT::async_call_ctx_t&>(), std::declval<const DURT&>());
|
||||
|
||||
// synchronous (blocking) operations
|
||||
srv.accept(std::declval<const typename SRVT::endpoint_t&>(), std::declval<const DURT&>());
|
||||
|
||||
Reference in New Issue
Block a user