|
JSON RPC
JSON-RPC 2.0 library for C++
|
Contains the implementation details of the JSON RPC library. More...
Classes | |
| struct | function_traits |
| Primary template for function traits. More... | |
| struct | function_traits< R(*)(Args...) noexcept > |
| Specialization for noexcept function pointers. More... | |
| struct | function_traits< R(*)(Args...)> |
| Specialization for function pointers. More... | |
| struct | function_traits< R(C::*)(Args...) & > |
| Specialization for lvalue reference member function pointers. More... | |
| struct | function_traits< R(C::*)(Args...) && > |
| Specialization for rvalue reference member function pointers. More... | |
| struct | function_traits< R(C::*)(Args...) &&noexcept > |
| Specialization for rvalue reference noexcept member function pointers. More... | |
| struct | function_traits< R(C::*)(Args...) &noexcept > |
| Specialization for lvalue reference noexcept member function pointers. More... | |
| struct | function_traits< R(C::*)(Args...) const & > |
| Specialization for const lvalue reference member function pointers. More... | |
| struct | function_traits< R(C::*)(Args...) const && > |
| Specialization for const rvalue reference member function pointers. More... | |
| struct | function_traits< R(C::*)(Args...) const &&noexcept > |
| Specialization for const rvalue reference noexcept member function pointers. More... | |
| struct | function_traits< R(C::*)(Args...) const &noexcept > |
| Specialization for const lvalue reference noexcept member function pointers. More... | |
| struct | function_traits< R(C::*)(Args...) const > |
| Specialization for const member function pointers. More... | |
| struct | function_traits< R(C::*)(Args...) const noexcept > |
| Specialization for const noexcept member function pointers. More... | |
| struct | function_traits< R(C::*)(Args...) const volatile & > |
| Specialization for const volatile lvalue reference member function pointers. More... | |
| struct | function_traits< R(C::*)(Args...) const volatile && > |
| Specialization for const volatile rvalue reference member function pointers. More... | |
| struct | function_traits< R(C::*)(Args...) const volatile &&noexcept > |
| Specialization for const volatile rvalue reference noexcept member function pointers. More... | |
| struct | function_traits< R(C::*)(Args...) const volatile &noexcept > |
| Specialization for const volatile lvalue reference noexcept member function pointers. More... | |
| struct | function_traits< R(C::*)(Args...) const volatile > |
| Specialization for const volatile member function pointers. More... | |
| struct | function_traits< R(C::*)(Args...) const volatile noexcept > |
| Specialization for const volatile noexcept member function pointers. More... | |
| struct | function_traits< R(C::*)(Args...) noexcept > |
| Specialization for noexcept member function pointers. More... | |
| struct | function_traits< R(C::*)(Args...) volatile & > |
| Specialization for volatile lvalue reference member function pointers. More... | |
| struct | function_traits< R(C::*)(Args...) volatile && > |
| Specialization for volatile rvalue reference member function pointers. More... | |
| struct | function_traits< R(C::*)(Args...) volatile &&noexcept > |
| Specialization for volatile rvalue reference noexcept member function pointers. More... | |
| struct | function_traits< R(C::*)(Args...) volatile &noexcept > |
| Specialization for volatile lvalue reference noexcept member function pointers. More... | |
| struct | function_traits< R(C::*)(Args...) volatile > |
| Specialization for volatile member function pointers. More... | |
| struct | function_traits< R(C::*)(Args...) volatile noexcept > |
| Specialization for volatile noexcept member function pointers. More... | |
| struct | function_traits< R(C::*)(Args...)> |
| Specialization for member function pointers. More... | |
| struct | function_traits< std::function< S > > |
| Specialization for std::function. More... | |
| struct | offset_sequence |
| Template for creating an offset sequence. More... | |
| struct | offset_sequence< N, std::index_sequence< Ints... > > |
| Specialization for creating an offset sequence. More... | |
Typedefs | |
| template<std::size_t N, typename Seq> | |
| using | offset_sequence_t = typename offset_sequence<N, Seq>::type |
| Alias template for creating an offset sequence. | |
| template<std::size_t I, typename A> | |
| using | tuple_element = std::decay_t<std::tuple_element_t<I, A>> |
| Type alias for a tuple element with decay applied. | |
Functions | |
| template<typename Extra, typename Args, std::size_t... Indices> | |
| constexpr auto | convert_args (const nlohmann::json ¶ms, std::index_sequence< Indices... >) |
| Converts JSON parameters to a tuple of arguments based on the specified types. | |
| template<typename F, typename Tuple> | |
| nlohmann::json | invoke_function (F &&f, Tuple &&tuple) |
| Invokes a function with the provided arguments handling void return type. | |
| template<typename Context> | |
| constexpr auto | make_context_tuple (const std::pair< std::any, nlohmann::json > &ctx) |
| Creates a tuple from the provided context object based on the type of Context. | |
| template<typename C> requires (std::is_class_v<std::remove_pointer_t<C>> || std::is_null_pointer_v<C>) | |
| constexpr auto | make_inst_tuple (C inst) |
| Creates a tuple containing the instance if it is a class pointer, or an empty tuple if it is a null pointer. | |
Contains the implementation details of the JSON RPC library.