JSON Voorhees
Killer JSON for C++
|
Public Member Functions | |
template<typename F > | |
polymorphic_adapter_builder (formats_builder *owner, std::string discrimination_key, F &&f) | |
polymorphic_adapter_builder (formats_builder *owner, std::string discrimination_key="") | |
polymorphic_adapter_builder & | check_null_input (bool on=true) |
polymorphic_adapter_builder & | check_null_output (bool on=true) |
template<typename TSub > | |
polymorphic_adapter_builder & | subtype (value discrimination_value, keyed_subtype_action action=keyed_subtype_action::none) |
template<typename TSub > | |
polymorphic_adapter_builder & | subtype (std::string discrimination_key, value discrimination_value, keyed_subtype_action action=keyed_subtype_action::none) |
template<typename TSub > | |
polymorphic_adapter_builder & | subtype (std::function< bool(const extraction_context &, const value &)> discriminator) |
template<typename TSub > | |
polymorphic_adapter_builder & | subtype (std::function< bool(const value &)> discriminator) |
Public Member Functions inherited from jsonv::detail::formats_builder_dsl | |
formats_builder_dsl (formats_builder *owner) | |
template<typename T > | |
adapter_builder< T > | type () |
template<typename T , typename F > | |
adapter_builder< T > | type (F &&) |
template<typename TEnum > | |
formats_builder & | enum_type (std::string enum_name, std::initializer_list< std::pair< TEnum, value >> mapping) |
template<typename TEnum > | |
formats_builder & | enum_type_icase (std::string enum_name, std::initializer_list< std::pair< TEnum, value >> mapping) |
template<typename TPointer > | |
polymorphic_adapter_builder< TPointer > | polymorphic_type (std::string discrimination_key="") |
template<typename TPointer , typename F > | |
polymorphic_adapter_builder< TPointer > | polymorphic_type (std::string discrimination_key, F &&) |
template<typename F > | |
formats_builder & | extend (F &&) |
formats_builder & | register_adapter (const adapter *p) |
formats_builder & | register_adapter (std::shared_ptr< const adapter > p) |
formats_builder & | reference_type (std::type_index typ) |
formats_builder & | reference_type (std::type_index type, std::type_index from) |
template<typename TOptional > | |
formats_builder & | register_optional () |
template<typename TContainer > | |
formats_builder & | register_container () |
template<typename TWrapper > | |
formats_builder & | register_wrapper () |
formats_builder & | check_references (const formats &other, const std::string &name="") |
formats_builder & | check_references (const formats::list &others, const std::string &name="") |
formats_builder & | check_references (const std::string &name="") |
formats_builder & | on_duplicate_type (duplicate_type_action action) noexcept |
formats | compose_checked (formats other, const std::string &name="") |
formats | compose_checked (std::vector< formats > others, const std::string &name="") |
operator formats () const | |
Additional Inherited Members | |
Protected Attributes inherited from jsonv::detail::formats_builder_dsl | |
formats_builder * | owner |
Definition at line 32 of file forward.hpp.