CAF 0.17.6
|
Enables user-defined types in config files and on the CLI by converting them to and from tuples. More...
#include <config_value_adaptor_access.hpp>
Public Types | |
using | tuple_access = config_value_object_access< object_trait > |
using | value_type = typename Trait::value_type |
using | tuple_type = typename Trait::tuple_type |
Static Public Member Functions | |
static std::string | type_name () |
static bool | is (const config_value &x) |
static optional< value_type > | get_if (const config_value *x) |
static value_type | get (const config_value &x) |
template<class Nested > | |
static void | parse_cli (string_parser_state &ps, value_type &x, Nested nested) |
static void | convert (const value_type &src, tuple_type &dst) |
static void | convert (const tuple_type &src, value_type &dst) |
static config_value::dictionary | convert (const value_type &x) |
Enables user-defined types in config files and on the CLI by converting them to and from tuples.
Wraps a config_value_object_access
in order to allow CAF to interact with the underlying tuple.
~~ struct trait { using value_type = ...;
using tuple_type = ...;
static config_value_adaptor<...> adaptor_ref();
static span<config_value_field<object_type>*> fields();
static void convert(const value_type& src, tuple_type& dst);
static void convert(const tuple_type& src, value_type& dst); }; ~~