- bool packio::dispatcher < Map, Lockable >::add_coro
+ bool packio::dispatcher < Rpc, Map, Lockable >::add_coro
(
std::string_view
name ,
@@ -264,6 +307,12 @@
+
+
+
+ const std::array< std::string, N > &
+ arguments_names ,
+
@@ -288,6 +337,7 @@
@@ -295,19 +345,19 @@
-◆ clear()
+
+◆ clear()
-template<template< class... > class Map = std::unordered_map, typename Lockable = std::mutex>
+template<typename Rpc , template< class... > class Map = default_map, typename Lockable = default_mutex>
- size_t packio::dispatcher < Map, Lockable >::clear
+ size_t packio::dispatcher < Rpc, Map, Lockable >::clear
(
)
@@ -325,19 +375,19 @@
-◆ has()
+
+◆ has()
-template<template< class... > class Map = std::unordered_map, typename Lockable = std::mutex>
+template<typename Rpc , template< class... > class Map = default_map, typename Lockable = default_mutex>
- bool packio::dispatcher < Map, Lockable >::has
+ bool packio::dispatcher < Rpc, Map, Lockable >::has
(
const std::string &
name )
@@ -362,19 +412,19 @@
-◆ known()
+
+◆ known()
-template<template< class... > class Map = std::unordered_map, typename Lockable = std::mutex>
+template<typename Rpc , template< class... > class Map = default_map, typename Lockable = default_mutex>
- std::vector<std::string> packio::dispatcher < Map, Lockable >::known
+ std::vector<std::string> packio::dispatcher < Rpc, Map, Lockable >::known
(
)
const
@@ -392,19 +442,19 @@
-◆ remove()
+
+◆ remove()
-template<template< class... > class Map = std::unordered_map, typename Lockable = std::mutex>
+template<typename Rpc , template< class... > class Map = default_map, typename Lockable = default_mutex>
- bool packio::dispatcher < Map, Lockable >::remove
+ bool packio::dispatcher < Rpc, Map, Lockable >::remove
(
const std::string &
name )
diff --git a/docs/classpackio_1_1msgpack_1_1rpc-members.html b/docs/classpackio_1_1msgpack_1_1rpc-members.html
new file mode 100644
index 0000000..38690d0
--- /dev/null
+++ b/docs/classpackio_1_1msgpack_1_1rpc-members.html
@@ -0,0 +1,82 @@
+
+
+
+
+
+
+
+
+ packio: Member List
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
This is the complete list of members for packio::msgpack::rpc , including all inherited members.
+
+
+
+
+
\ No newline at end of file
diff --git a/docs/classpackio_1_1msgpack_1_1rpc.html b/docs/classpackio_1_1msgpack_1_1rpc.html
new file mode 100644
index 0000000..ae1c9eb
--- /dev/null
+++ b/docs/classpackio_1_1msgpack_1_1rpc.html
@@ -0,0 +1,109 @@
+
+
+
+
+
+
+
+
+ packio: packio::msgpack::rpc Class Reference
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
The msgpack RPC protocol implementation.
+ More...
+
+
#include <packio/msgpack/rpc.h >
+
+
+struct request
+ The object representing a client request. More...
+
+struct response
+ The object representing the response to a call. More...
+
+
+
+
+using id_type = uint32_t
+ Type of the call ID.
+
+
+
+
The msgpack RPC protocol implementation.
+
The documentation for this class was generated from the following file:
+
+
+
+
+
\ No newline at end of file
diff --git a/docs/classpackio_1_1msgpack__rpc_1_1incremental__parser-members.html b/docs/classpackio_1_1msgpack__rpc_1_1incremental__parser-members.html
new file mode 100644
index 0000000..b26069b
--- /dev/null
+++ b/docs/classpackio_1_1msgpack__rpc_1_1incremental__parser-members.html
@@ -0,0 +1,80 @@
+
+
+
+
+
+
+
+
+ packio: Member List
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
This is the complete list of members for packio::msgpack_rpc::incremental_parser , including all inherited members.
+
+
+
+
+
\ No newline at end of file
diff --git a/docs/classpackio_1_1msgpack__rpc_1_1incremental__parser.html b/docs/classpackio_1_1msgpack__rpc_1_1incremental__parser.html
new file mode 100644
index 0000000..30a5c1d
--- /dev/null
+++ b/docs/classpackio_1_1msgpack__rpc_1_1incremental__parser.html
@@ -0,0 +1,90 @@
+
+
+
+
+
+
+
+
+ packio: packio::msgpack_rpc::incremental_parser Class Reference
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
The incremental parser for msgpack-RPC objects.
+ More...
+
+
#include <packio/msgpack_rpc/rpc.h >
+
+
The incremental parser for msgpack-RPC objects.
+
The documentation for this class was generated from the following file:
+packio/msgpack_rpc/rpc.h
+
+
+
+
+
+
\ No newline at end of file
diff --git a/docs/classpackio_1_1msgpack__rpc_1_1internal_1_1incremental__parser-members.html b/docs/classpackio_1_1msgpack__rpc_1_1internal_1_1incremental__parser-members.html
new file mode 100644
index 0000000..9d84fe8
--- /dev/null
+++ b/docs/classpackio_1_1msgpack__rpc_1_1internal_1_1incremental__parser-members.html
@@ -0,0 +1,80 @@
+
+
+
+
+
+
+
+
+ packio: Member List
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
This is the complete list of members for packio::msgpack_rpc::internal::incremental_parser , including all inherited members.
+
+
+
+
+
\ No newline at end of file
diff --git a/docs/classpackio_1_1msgpack__rpc_1_1internal_1_1incremental__parser.html b/docs/classpackio_1_1msgpack__rpc_1_1internal_1_1incremental__parser.html
new file mode 100644
index 0000000..5b087a2
--- /dev/null
+++ b/docs/classpackio_1_1msgpack__rpc_1_1internal_1_1incremental__parser.html
@@ -0,0 +1,90 @@
+
+
+
+
+
+
+
+
+ packio: packio::msgpack_rpc::internal::incremental_parser Class Reference
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
The incremental parser for msgpack-RPC objects.
+ More...
+
+
#include <packio/msgpack_rpc/rpc.h >
+
+
The incremental parser for msgpack-RPC objects.
+
The documentation for this class was generated from the following file:
+packio/msgpack_rpc/rpc.h
+
+
+
+
+
+
\ No newline at end of file
diff --git a/docs/classpackio_1_1msgpack__rpc_1_1rpc-members.html b/docs/classpackio_1_1msgpack__rpc_1_1rpc-members.html
new file mode 100644
index 0000000..4f1eb47
--- /dev/null
+++ b/docs/classpackio_1_1msgpack__rpc_1_1rpc-members.html
@@ -0,0 +1,86 @@
+
+
+
+
+
+
+
+
+ packio: Member List
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
This is the complete list of members for packio::msgpack_rpc::rpc , including all inherited members.
+
+
+
+
+
\ No newline at end of file
diff --git a/docs/classpackio_1_1msgpack__rpc_1_1rpc.html b/docs/classpackio_1_1msgpack__rpc_1_1rpc.html
new file mode 100644
index 0000000..ec2b422
--- /dev/null
+++ b/docs/classpackio_1_1msgpack__rpc_1_1rpc.html
@@ -0,0 +1,115 @@
+
+
+
+
+
+
+
+
+ packio: packio::msgpack_rpc::rpc Class Reference
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
The msgpack RPC protocol implementation.
+ More...
+
+
#include <packio/msgpack_rpc/rpc.h >
+
+
+
The msgpack RPC protocol implementation.
+
The documentation for this class was generated from the following file:
+packio/msgpack_rpc/rpc.h
+
+
+
+
+
+
\ No newline at end of file
diff --git a/docs/classpackio_1_1nl__json__rpc_1_1incremental__parser-members.html b/docs/classpackio_1_1nl__json__rpc_1_1incremental__parser-members.html
new file mode 100644
index 0000000..5796cd2
--- /dev/null
+++ b/docs/classpackio_1_1nl__json__rpc_1_1incremental__parser-members.html
@@ -0,0 +1,80 @@
+
+
+
+
+
+
+
+
+ packio: Member List
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
This is the complete list of members for packio::nl_json_rpc::incremental_parser , including all inherited members.
+
+
+
+
+
\ No newline at end of file
diff --git a/docs/classpackio_1_1nl__json__rpc_1_1incremental__parser.html b/docs/classpackio_1_1nl__json__rpc_1_1incremental__parser.html
new file mode 100644
index 0000000..5b334ed
--- /dev/null
+++ b/docs/classpackio_1_1nl__json__rpc_1_1incremental__parser.html
@@ -0,0 +1,90 @@
+
+
+
+
+
+
+
+
+ packio: packio::nl_json_rpc::incremental_parser Class Reference
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
The incremental parser for JSON-RPC objects.
+ More...
+
+
#include <packio/nl_json_rpc/rpc.h >
+
+
The incremental parser for JSON-RPC objects.
+
The documentation for this class was generated from the following file:
+packio/nl_json_rpc/rpc.h
+
+
+
+
+
+
\ No newline at end of file
diff --git a/docs/classpackio_1_1nl__json__rpc_1_1internal_1_1incremental__parser-members.html b/docs/classpackio_1_1nl__json__rpc_1_1internal_1_1incremental__parser-members.html
new file mode 100644
index 0000000..0a82780
--- /dev/null
+++ b/docs/classpackio_1_1nl__json__rpc_1_1internal_1_1incremental__parser-members.html
@@ -0,0 +1,80 @@
+
+
+
+
+
+
+
+
+ packio: Member List
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
This is the complete list of members for packio::nl_json_rpc::internal::incremental_parser , including all inherited members.
+
+
+
+
+
\ No newline at end of file
diff --git a/docs/classpackio_1_1nl__json__rpc_1_1internal_1_1incremental__parser.html b/docs/classpackio_1_1nl__json__rpc_1_1internal_1_1incremental__parser.html
new file mode 100644
index 0000000..a018fa2
--- /dev/null
+++ b/docs/classpackio_1_1nl__json__rpc_1_1internal_1_1incremental__parser.html
@@ -0,0 +1,90 @@
+
+
+
+
+
+
+
+
+ packio: packio::nl_json_rpc::internal::incremental_parser Class Reference
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
The incremental parser for JSON-RPC objects.
+ More...
+
+
#include <packio/nl_json_rpc/rpc.h >
+
+
The incremental parser for JSON-RPC objects.
+
The documentation for this class was generated from the following file:
+packio/nl_json_rpc/rpc.h
+
+
+
+
+
+
\ No newline at end of file
diff --git a/docs/classpackio_1_1nl__json__rpc_1_1rpc-members.html b/docs/classpackio_1_1nl__json__rpc_1_1rpc-members.html
new file mode 100644
index 0000000..82fb943
--- /dev/null
+++ b/docs/classpackio_1_1nl__json__rpc_1_1rpc-members.html
@@ -0,0 +1,86 @@
+
+
+
+
+
+
+
+
+ packio: Member List
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
This is the complete list of members for packio::nl_json_rpc::rpc , including all inherited members.
+
+
+
+
+
\ No newline at end of file
diff --git a/docs/classpackio_1_1nl__json__rpc_1_1rpc.html b/docs/classpackio_1_1nl__json__rpc_1_1rpc.html
new file mode 100644
index 0000000..8165029
--- /dev/null
+++ b/docs/classpackio_1_1nl__json__rpc_1_1rpc.html
@@ -0,0 +1,115 @@
+
+
+
+
+
+
+
+
+ packio: packio::nl_json_rpc::rpc Class Reference
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
The JSON-RPC protocol implementation.
+ More...
+
+
#include <packio/nl_json_rpc/rpc.h >
+
+
+
The JSON-RPC protocol implementation.
+
The documentation for this class was generated from the following file:
+packio/nl_json_rpc/rpc.h
+
+
+
+
+
+
\ No newline at end of file
diff --git a/docs/classpackio_1_1nlohmann__json_1_1rpc-members.html b/docs/classpackio_1_1nlohmann__json_1_1rpc-members.html
new file mode 100644
index 0000000..9a6a718
--- /dev/null
+++ b/docs/classpackio_1_1nlohmann__json_1_1rpc-members.html
@@ -0,0 +1,82 @@
+
+
+
+
+
+
+
+
+ packio: Member List
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
This is the complete list of members for packio::nlohmann_json::rpc , including all inherited members.
+
+
+
+
+
\ No newline at end of file
diff --git a/docs/classpackio_1_1nlohmann__json_1_1rpc.html b/docs/classpackio_1_1nlohmann__json_1_1rpc.html
new file mode 100644
index 0000000..ee183b7
--- /dev/null
+++ b/docs/classpackio_1_1nlohmann__json_1_1rpc.html
@@ -0,0 +1,109 @@
+
+
+
+
+
+
+
+
+ packio: packio::nlohmann_json::rpc Class Reference
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
The JSON-RPC protocol implementation.
+ More...
+
+
#include <packio/nlohmann_json/rpc.h >
+
+
+struct request
+ The object representing a client request. More...
+
+struct response
+ The object representing the response to a call. More...
+
+
+
+
+using id_type = nlohmann::json
+ Type of the call ID.
+
+
+
+
The JSON-RPC protocol implementation.
+
The documentation for this class was generated from the following file:
+packio/nlohmann_json/rpc.h
+
+
+
+
+
+
\ No newline at end of file
diff --git a/docs/classpackio_1_1server-members.html b/docs/classpackio_1_1server-members.html
index bedbb8b..9ff14b2 100644
--- a/docs/classpackio_1_1server-members.html
+++ b/docs/classpackio_1_1server-members.html
@@ -68,26 +68,27 @@
-
This is the complete list of members for packio::server< Acceptor, Dispatcher > , including all inherited members.
+
This is the complete list of members for packio::server< Rpc, Acceptor, Dispatcher > , including all inherited members.
- acceptor ()packio::server< Acceptor, Dispatcher > inline
- acceptor () constpackio::server< Acceptor, Dispatcher > inline
- acceptor_type typedefpackio::server< Acceptor, Dispatcher >
- async_serve (ServeHandler &&handler PACKIO_DEFAULT_COMPLETION_TOKEN(executor_type))packio::server< Acceptor, Dispatcher > inline
- async_serve_forever ()packio::server< Acceptor, Dispatcher > inline
- dispatcher ()packio::server< Acceptor, Dispatcher > inline
- dispatcher () constpackio::server< Acceptor, Dispatcher > inline
- dispatcher_type typedefpackio::server< Acceptor, Dispatcher >
- executor_type typedefpackio::server< Acceptor, Dispatcher >
- get_executor ()packio::server< Acceptor, Dispatcher > inline
- protocol_type typedefpackio::server< Acceptor, Dispatcher >
- server (acceptor_type acceptor, std::shared_ptr< dispatcher_type > dispatcher)packio::server< Acceptor, Dispatcher > inline
- server (acceptor_type acceptor)packio::server< Acceptor, Dispatcher > inline explicit
- socket_type typedefpackio::server< Acceptor, Dispatcher >
+ acceptor ()packio::server< Rpc, Acceptor, Dispatcher > inline
+ acceptor () constpackio::server< Rpc, Acceptor, Dispatcher > inline
+ acceptor_type typedefpackio::server< Rpc, Acceptor, Dispatcher >
+ async_serve (ServeHandler &&handler=typename net::default_completion_token< executor_type >::type())packio::server< Rpc, Acceptor, Dispatcher > inline
+ async_serve_forever ()packio::server< Rpc, Acceptor, Dispatcher > inline
+ dispatcher ()packio::server< Rpc, Acceptor, Dispatcher > inline
+ dispatcher () constpackio::server< Rpc, Acceptor, Dispatcher > inline
+ dispatcher_type typedefpackio::server< Rpc, Acceptor, Dispatcher >
+ executor_type typedefpackio::server< Rpc, Acceptor, Dispatcher >
+ get_executor ()packio::server< Rpc, Acceptor, Dispatcher > inline
+ protocol_type typedefpackio::server< Rpc, Acceptor, Dispatcher >
+ rpc_type typedefpackio::server< Rpc, Acceptor, Dispatcher >
+ server (acceptor_type acceptor, std::shared_ptr< dispatcher_type > dispatcher)packio::server< Rpc, Acceptor, Dispatcher > inline
+ server (acceptor_type acceptor)packio::server< Rpc, Acceptor, Dispatcher > inline explicit
+ socket_type typedefpackio::server< Rpc, Acceptor, Dispatcher >
diff --git a/docs/classpackio_1_1server.html b/docs/classpackio_1_1server.html
index 96a6798..3135271 100644
--- a/docs/classpackio_1_1server.html
+++ b/docs/classpackio_1_1server.html
@@ -7,7 +7,7 @@
- packio: packio::server< Acceptor, Dispatcher > Class Template Reference
+ packio: packio::server< Rpc, Acceptor, Dispatcher > Class Template Reference
@@ -72,7 +72,7 @@
Public Member Functions |
List of all members
+packio::server< Rpc, Acceptor, Dispatcher > Class Template Reference
@@ -83,99 +83,104 @@
-
-using acceptor_type = Acceptor
- The acceptor type.
-
-
-using protocol_type = typename Acceptor::protocol_type
- The protocol type.
-
-
-using dispatcher_type = Dispatcher
- The dispatcher type.
-
-
-using executor_type = typename acceptor_type::executor_type
- The executor type.
-
-
-using socket_type = std::decay_t< decltype(std::declval< acceptor_type >().accept())>
- The connection socket type.
-
+
+using rpc_type = Rpc
+ The RPC protocol type.
+
+
+using acceptor_type = Acceptor
+ The acceptor type.
+
+
+using protocol_type = typename Acceptor::protocol_type
+ The protocol type.
+
+
+using dispatcher_type = Dispatcher
+ The dispatcher type.
+
+
+using executor_type = typename acceptor_type::executor_type
+ The executor type.
+
+
+using socket_type = std::decay_t< decltype(std::declval< acceptor_type >().accept())>
+ The connection socket type.
+
-
template<typename Acceptor, typename Dispatcher = dispatcher<>>
-class packio::server< Acceptor, Dispatcher >
+
template<typename Rpc, typename Acceptor, typename Dispatcher = dispatcher<Rpc>>
+class packio::server< Rpc, Acceptor, Dispatcher >
The server class.
Template Parameters
+ Rpc RPC protocol implementation
Acceptor Acceptor type to use for this server
Dispatcher Dispatcher used to store and dispatch procedures. See dispatcher
-
-
◆ server()
+
+
◆ server()
-template<typename Acceptor , typename Dispatcher = dispatcher<>>
+template<typename Rpc , typename Acceptor , typename Dispatcher = dispatcher<Rpc>>
- packio::server < Acceptor, Dispatcher >::server
+ packio::server < Rpc, Acceptor, Dispatcher >::server
(
- acceptor_type
+ acceptor_type
acceptor ,
- std::shared_ptr< dispatcher_type >
+ std::shared_ptr< dispatcher_type >
dispatcher
@@ -203,24 +208,24 @@
-
-◆ async_serve()
+
+◆ async_serve()
-template<typename Acceptor , typename Dispatcher = dispatcher<>>
+template<typename Rpc , typename Acceptor , typename Dispatcher = dispatcher<Rpc>>
-template<PACKIO_COMPLETION_TOKEN_FOR(void(error_code, std::shared_ptr< session_type >)) ServeHandler PACKIO_DEFAULT_COMPLETION_TOKEN_TYPE(executor_type) >
+template<typename ServeHandler PACKIO_DEFAULT_COMPLETION_TOKEN_TYPE>
- auto packio::server < Acceptor, Dispatcher >::async_serve
+ auto packio::server < Rpc, Acceptor, Dispatcher >::async_serve
(
- ServeHandler &&handler
- PACKIO_DEFAULT_COMPLETION_TOKEN executor_type)
+ ServeHandler &&
+ handler = typename net::default_completion_token< executor_type >::type()
)
@@ -234,7 +239,7 @@ Parameters
diff --git a/docs/classpackio_1_1server__session-members.html b/docs/classpackio_1_1server__session-members.html
index 1811eeb..ae08351 100644
--- a/docs/classpackio_1_1server__session-members.html
+++ b/docs/classpackio_1_1server__session-members.html
@@ -68,22 +68,22 @@
-
This is the complete list of members for packio::server_session< Socket, Dispatcher > , including all inherited members.
+
This is the complete list of members for packio::server_session< Rpc, Socket, Dispatcher > , including all inherited members.
- executor_type typedefpackio::server_session< Socket, Dispatcher >
- get_buffer_reserve_size () const noexceptpackio::server_session< Socket, Dispatcher > inline
- get_executor ()packio::server_session< Socket, Dispatcher > inline
- kDefaultBufferReserveSize packio::server_session< Socket, Dispatcher > static
- protocol_type typedefpackio::server_session< Socket, Dispatcher >
- set_buffer_reserve_size (std::size_t size) noexceptpackio::server_session< Socket, Dispatcher > inline
- socket ()packio::server_session< Socket, Dispatcher > inline
- socket () constpackio::server_session< Socket, Dispatcher > inline
- socket_type typedefpackio::server_session< Socket, Dispatcher >
- start ()packio::server_session< Socket, Dispatcher > inline
+ executor_type typedefpackio::server_session< Rpc, Socket, Dispatcher >
+ get_buffer_reserve_size () const noexceptpackio::server_session< Rpc, Socket, Dispatcher > inline
+ get_executor ()packio::server_session< Rpc, Socket, Dispatcher > inline
+ kDefaultBufferReserveSize packio::server_session< Rpc, Socket, Dispatcher > static
+ protocol_type typedefpackio::server_session< Rpc, Socket, Dispatcher >
+ set_buffer_reserve_size (std::size_t size) noexceptpackio::server_session< Rpc, Socket, Dispatcher > inline
+ socket ()packio::server_session< Rpc, Socket, Dispatcher > inline
+ socket () constpackio::server_session< Rpc, Socket, Dispatcher > inline
+ socket_type typedefpackio::server_session< Rpc, Socket, Dispatcher >
+ start ()packio::server_session< Rpc, Socket, Dispatcher > inline
diff --git a/docs/classpackio_1_1server__session.html b/docs/classpackio_1_1server__session.html
index cd122b8..220f6b2 100644
--- a/docs/classpackio_1_1server__session.html
+++ b/docs/classpackio_1_1server__session.html
@@ -7,7 +7,7 @@
- packio: packio::server_session< Socket, Dispatcher > Class Template Reference
+ packio: packio::server_session< Rpc, Socket, Dispatcher > Class Template Reference
@@ -73,7 +73,7 @@
Static Public Attributes |
List of all members
+packio::server_session< Rpc, Socket, Dispatcher > Class Template Reference
@@ -84,56 +84,56 @@
-
-using socket_type = Socket
- The socket type.
-
-
-using protocol_type = typename socket_type::protocol_type
- The protocol type.
-
-
-using executor_type = typename socket_type::executor_type
- The executor type.
-
+
+using socket_type = Socket
+ The socket type.
+
+
+using protocol_type = typename socket_type::protocol_type
+ The protocol type.
+
+
+using executor_type = typename socket_type::executor_type
+ The executor type.
+
-
template<typename Socket, typename Dispatcher>
-class packio::server_session< Socket, Dispatcher >
+
template<typename Rpc, typename Socket, typename Dispatcher>
+class packio::server_session< Rpc, Socket, Dispatcher >
The server_session class, created by the server .
The documentation for this class was generated from the following file:
-
The client class.
Definition: client.h:36
-
auto async_notify(std::string_view name, const std::tuple< Args... > &args, NotifyHandler &&handler PACKIO_DEFAULT_COMPLETION_TOKEN(executor_type))
Send a notify request to the server with argument.
Definition: client.h:123
-
void set_buffer_reserve_size(std::size_t size) noexcept
Set the size reserved by the reception buffer.
Definition: client.h:63
-
@ cancelled
The operation has been cancelled.
-
static constexpr size_t kDefaultBufferReserveSize
The default size reserved by the reception buffer.
Definition: client.h:46
-
auto make_client(Socket &&socket)
Create a client from a socket.
Definition: client.h:481
-
-
auto async_call(std::string_view name, const std::tuple< Args... > &args, CallHandler &&handler PACKIO_DEFAULT_COMPLETION_TOKEN(executor_type), std::optional< std::reference_wrapper< id_type >> call_id=std::nullopt)
Call a remote procedure.
Definition: client.h:162
-
uint32_t id_type
Type used to store call IDs.
Definition: msgpack_rpc.h:16
-
@ call_error
An error happened during the call.
-
socket_type & socket() noexcept
Get the underlying socket.
Definition: client.h:58
-
void cancel()
Cancel all pending calls.
Definition: client.h:93
-
typename socket_type::protocol_type protocol_type
The protocol type.
Definition: client.h:40
-
executor_type get_executor()
Get the executor associated with the object.
Definition: client.h:74
-
auto async_notify(std::string_view name, NotifyHandler &&handler PACKIO_DEFAULT_COMPLETION_TOKEN(executor_type))
Send a notify request to the server with no argument This is an overloaded member function,...
Definition: client.h:139
-
-
-
std::size_t get_buffer_reserve_size() const noexcept
Get the size reserved by the reception buffer.
Definition: client.h:68
-
-
Socket socket_type
The socket type.
Definition: client.h:38
-
auto async_call(std::string_view name, CallHandler &&handler PACKIO_DEFAULT_COMPLETION_TOKEN(executor_type), std::optional< std::reference_wrapper< id_type >> call_id=std::nullopt)
Call a remote procedure This is an overloaded member function, provided for convenience....
Definition: client.h:179
-
const socket_type & socket() const noexcept
Get the underlying socket, const.
Definition: client.h:60
-
client(socket_type socket)
The constructor.
Definition: client.h:50
-
void cancel(id_type id)
Cancel a pending call.
Definition: client.h:80
-
typename socket_type::executor_type executor_type
The executor type.
Definition: client.h:42
+
Socket socket_type
The socket type.
Definition: client.h:42
+
::packio::client< rpc, Socket, Map > client
The client for msgpack-RPC.
Definition: msgpack_rpc.h:29
+
The client class.
Definition: client.h:33
+
const socket_type & socket() const noexcept
Get the underlying socket, const.
Definition: client.h:65
+
typename socket_type::executor_type executor_type
The executor type.
Definition: client.h:46
+
void set_buffer_reserve_size(std::size_t size) noexcept
Set the size reserved by the reception buffer.
Definition: client.h:68
+
auto async_call(std::string_view name, ArgsTuple &&args, CallHandler &&handler=typename net::default_completion_token< executor_type >::type(), std::optional< std::reference_wrapper< id_type >> call_id=std::nullopt)
Call a remote procedure.
Definition: client.h:153
+
typename rpc_type::id_type id_type
The call ID type.
Definition: client.h:38
+
typename socket_type::protocol_type protocol_type
The protocol type.
Definition: client.h:44
+
auto async_call(std::string_view name, CallHandler &&handler=typename net::default_completion_token< executor_type >::type(), std::optional< std::reference_wrapper< id_type >> call_id=std::nullopt)
This is an overloaded member function, provided for convenience. It differs from the above function o...
Definition: client.h:172
+
std::size_t get_buffer_reserve_size() const noexcept
Get the size reserved by the reception buffer.
Definition: client.h:73
+
+
socket_type & socket() noexcept
Get the underlying socket.
Definition: client.h:62
+
auto async_notify(std::string_view name, NotifyHandler &&handler=typename net::default_completion_token< executor_type >::type())
This is an overloaded member function, provided for convenience. It differs from the above function o...
Definition: client.h:133
+
static constexpr size_t kDefaultBufferReserveSize
The default size reserved by the reception buffer.
Definition: client.h:50
+
Rpc rpc_type
The RPC protocol type.
Definition: client.h:36
+
void cancel(id_type id)
Cancel a pending call.
Definition: client.h:85
+
auto async_notify(std::string_view name, ArgsTuple &&args, NotifyHandler &&handler=typename net::default_completion_token< executor_type >::type())
Send a notify request to the server with argument.
Definition: client.h:116
+
void cancel()
Cancel all pending calls.
Definition: client.h:96
+
typename rpc_type::response_type response_type
The response of a RPC call.
Definition: client.h:40
+
executor_type get_executor()
Get the executor associated with the object.
Definition: client.h:79
+
auto make_client(Socket &&socket)
Create a client from a socket.
Definition: client.h:454
+
client(socket_type socket)
The constructor.
Definition: client.h:54