cpp-msgpack-rpc 0.2.0
An RPC library implementing MessagePack RPC.
Loading...
Searching...
No Matches
msgpack_rpc::clients::impl::ParametersSerializer< Parameters > Class Template Referencefinal

Class of serializer of parameters. More...

#include <msgpack_rpc/clients/impl/parameters_serializer.h>

Inheritance diagram for msgpack_rpc::clients::impl::ParametersSerializer< Parameters >:
Collaboration diagram for msgpack_rpc::clients::impl::ParametersSerializer< Parameters >:

Public Member Functions

 ParametersSerializer (const Parameters &... parameters)
 Constructor.
 ParametersSerializer (const ParametersSerializer &)=delete
 ParametersSerializer (ParametersSerializer &&) noexcept=default
 Move constructor.
 ~ParametersSerializer ()=default
 Destructor.
messages::SerializedMessage create_serialized_notification (messages::MethodNameView method_name) const override
 Create a serialized notification data.
messages::SerializedMessage create_serialized_request (messages::MethodNameView method_name, messages::MessageID request_id) const override
 Create a serialized request data.
ParametersSerializeroperator= (const ParametersSerializer &)=delete
ParametersSerializeroperator= (ParametersSerializer &&) noexcept=default
 Move assignment operator.
Public Member Functions inherited from msgpack_rpc::clients::impl::IParametersSerializer
 IParametersSerializer (const IParametersSerializer &)=delete
 IParametersSerializer (IParametersSerializer &&) noexcept=default
 Move constructor.
IParametersSerializeroperator= (const IParametersSerializer &)=delete
IParametersSerializeroperator= (IParametersSerializer &&) noexcept=default
 Move assignment operator.

Private Member Functions

template<std::size_t... Indices>
messages::SerializedMessage create_serialized_notification_impl (messages::MethodNameView method_name, std::index_sequence< Indices... >) const
 Create a serialized notification data.
template<std::size_t... Indices>
messages::SerializedMessage create_serialized_request_impl (messages::MethodNameView method_name, messages::MessageID request_id, std::index_sequence< Indices... >) const
 Create a serialized request data.

Private Attributes

std::tuple< const Parameters &... > parameters_
 Parameters.

Additional Inherited Members

Protected Member Functions inherited from msgpack_rpc::clients::impl::IParametersSerializer
 IParametersSerializer () noexcept=default
 Constructor.
 ~IParametersSerializer () noexcept=default
 Destructor.

Detailed Description

template<typename... Parameters>
class msgpack_rpc::clients::impl::ParametersSerializer< Parameters >

Class of serializer of parameters.

Template Parameters
ParametersTypes of parameters.

Definition at line 89 of file parameters_serializer.h.

Constructor & Destructor Documentation

◆ ParametersSerializer()

template<typename... Parameters>
msgpack_rpc::clients::impl::ParametersSerializer< Parameters >::ParametersSerializer ( const Parameters &... parameters)
inlineexplicit

Constructor.

Parameters
[in]parametersParameters.

Definition at line 96 of file parameters_serializer.h.

Member Function Documentation

◆ create_serialized_notification()

template<typename... Parameters>
messages::SerializedMessage msgpack_rpc::clients::impl::ParametersSerializer< Parameters >::create_serialized_notification ( messages::MethodNameView method_name) const
inlinenodiscardoverridevirtual

Create a serialized notification data.

Parameters
[in]method_nameName of the method to call with the notification.
Returns
Serialized notification data.

Implements msgpack_rpc::clients::impl::IParametersSerializer.

Definition at line 108 of file parameters_serializer.h.

◆ create_serialized_notification_impl()

template<typename... Parameters>
template<std::size_t... Indices>
messages::SerializedMessage msgpack_rpc::clients::impl::ParametersSerializer< Parameters >::create_serialized_notification_impl ( messages::MethodNameView method_name,
std::index_sequence< Indices... >  ) const
inlinenodiscardprivate

Create a serialized notification data.

Template Parameters
IndicesSequential indices of parameters.
Parameters
[in]method_nameName of the method to call with the notification.
Returns
Serialized notification data.

Definition at line 158 of file parameters_serializer.h.

◆ create_serialized_request()

template<typename... Parameters>
messages::SerializedMessage msgpack_rpc::clients::impl::ParametersSerializer< Parameters >::create_serialized_request ( messages::MethodNameView method_name,
messages::MessageID request_id ) const
inlinenodiscardoverridevirtual

Create a serialized request data.

Parameters
[in]method_nameName of the method to call with the request.
[in]request_idMessage ID of the request.
Returns
Serialized request data.

Implements msgpack_rpc::clients::impl::IParametersSerializer.

Definition at line 100 of file parameters_serializer.h.

◆ create_serialized_request_impl()

template<typename... Parameters>
template<std::size_t... Indices>
messages::SerializedMessage msgpack_rpc::clients::impl::ParametersSerializer< Parameters >::create_serialized_request_impl ( messages::MethodNameView method_name,
messages::MessageID request_id,
std::index_sequence< Indices... >  ) const
inlinenodiscardprivate

Create a serialized request data.

Template Parameters
IndicesSequential indices of parameters.
Parameters
[in]method_nameName of the method to call with the request.
[in]request_idMessage ID of the request.
Returns
Serialized request data.

Definition at line 142 of file parameters_serializer.h.

◆ operator=()

template<typename... Parameters>
ParametersSerializer & msgpack_rpc::clients::impl::ParametersSerializer< Parameters >::operator= ( ParametersSerializer< Parameters > && )
defaultnoexcept

Move assignment operator.

Returns
This.

Member Data Documentation

◆ parameters_

template<typename... Parameters>
std::tuple<const Parameters&...> msgpack_rpc::clients::impl::ParametersSerializer< Parameters >::parameters_
private

Parameters.

Definition at line 165 of file parameters_serializer.h.


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