|
RavEngine
|
detail namespace with internal helper functions More...
Namespaces | |
| namespace | dtoa_impl |
| implements the Grisu2 algorithm for binary to decimal floating-point conversion. | |
Typedefs | |
| template<bool B, typename T = void> | |
| using | enable_if_t = typename std::enable_if< B, T >::type |
| template<typename T > | |
| using | uncvref_t = typename std::remove_cv< typename std::remove_reference< T >::type >::type |
| template<typename... Ts> | |
| using | index_sequence_for = make_index_sequence< sizeof...(Ts)> |
| template<typename ... Ts> | |
| using | void_t = typename make_void< Ts... >::type |
| template<template< class... > class Op, class... Args> | |
| using | is_detected = typename detector< nonesuch, void, Op, Args... >::value_t |
| template<template< class... > class Op, class... Args> | |
| using | detected_t = typename detector< nonesuch, void, Op, Args... >::type |
| template<class Default , template< class... > class Op, class... Args> | |
| using | detected_or = detector< Default, void, Op, Args... > |
| template<class Default , template< class... > class Op, class... Args> | |
| using | detected_or_t = typename detected_or< Default, Op, Args... >::type |
| template<class Expected , template< class... > class Op, class... Args> | |
| using | is_detected_exact = std::is_same< Expected, detected_t< Op, Args... > > |
| template<class To , template< class... > class Op, class... Args> | |
| using | is_detected_convertible = std::is_convertible< detected_t< Op, Args... >, To > |
| template<typename T > | |
| using | mapped_type_t = typename T::mapped_type |
| template<typename T > | |
| using | key_type_t = typename T::key_type |
| template<typename T > | |
| using | value_type_t = typename T::value_type |
| template<typename T > | |
| using | difference_type_t = typename T::difference_type |
| template<typename T > | |
| using | pointer_t = typename T::pointer |
| template<typename T > | |
| using | reference_t = typename T::reference |
| template<typename T > | |
| using | iterator_category_t = typename T::iterator_category |
| template<typename T > | |
| using | iterator_t = typename T::iterator |
| template<typename T , typename... Args> | |
| using | to_json_function = decltype(T::to_json(std::declval< Args >()...)) |
| template<typename T , typename... Args> | |
| using | from_json_function = decltype(T::from_json(std::declval< Args >()...)) |
| template<typename T , typename U > | |
| using | get_template_function = decltype(std::declval< T >().template get< U >()) |
| using | input_adapter_t = std::shared_ptr< input_adapter_protocol > |
| a type to simplify interfaces | |
| template<typename T > | |
| using | null_function_t = decltype(std::declval< T & >().null()) |
| template<typename T > | |
| using | boolean_function_t = decltype(std::declval< T & >().boolean(std::declval< bool >())) |
| template<typename T , typename Integer > | |
| using | number_integer_function_t = decltype(std::declval< T & >().number_integer(std::declval< Integer >())) |
| template<typename T , typename Unsigned > | |
| using | number_unsigned_function_t = decltype(std::declval< T & >().number_unsigned(std::declval< Unsigned >())) |
| template<typename T , typename Float , typename String > | |
| using | number_float_function_t = decltype(std::declval< T & >().number_float(std::declval< Float >(), std::declval< const String & >())) |
| template<typename T , typename String > | |
| using | string_function_t = decltype(std::declval< T & >().string(std::declval< String & >())) |
| template<typename T > | |
| using | start_object_function_t = decltype(std::declval< T & >().start_object(std::declval< std::size_t >())) |
| template<typename T , typename String > | |
| using | key_function_t = decltype(std::declval< T & >().key(std::declval< String & >())) |
| template<typename T > | |
| using | end_object_function_t = decltype(std::declval< T & >().end_object()) |
| template<typename T > | |
| using | start_array_function_t = decltype(std::declval< T & >().start_array(std::declval< std::size_t >())) |
| template<typename T > | |
| using | end_array_function_t = decltype(std::declval< T & >().end_array()) |
| template<typename T , typename Exception > | |
| using | parse_error_function_t = decltype(std::declval< T & >().parse_error(std::declval< std::size_t >(), std::declval< const std::string & >(), std::declval< const Exception & >())) |
| template<typename CharType > | |
| using | output_adapter_t = std::shared_ptr< output_adapter_protocol< CharType > > |
| a type to simplify interfaces | |
Enumerations | |
| enum class | input_format_t { json , cbor , msgpack , ubjson , bson } |
| the supported input formats | |
| enum class | error_handler_t { strict , replace , ignore } |
| how to treat decoding errors More... | |
Functions | |
| template<typename BasicJsonType , typename T , enable_if_t< std::is_same< T, typename BasicJsonType::boolean_t >::value, int > = 0> | |
| void | to_json (BasicJsonType &j, T b) noexcept |
| template<typename BasicJsonType , typename CompatibleString , enable_if_t< std::is_constructible< typename BasicJsonType::string_t, CompatibleString >::value, int > = 0> | |
| void | to_json (BasicJsonType &j, const CompatibleString &s) |
| template<typename BasicJsonType > | |
| void | to_json (BasicJsonType &j, typename BasicJsonType::string_t &&s) |
| template<typename BasicJsonType , typename FloatType , enable_if_t< std::is_floating_point< FloatType >::value, int > = 0> | |
| void | to_json (BasicJsonType &j, FloatType val) noexcept |
| template<typename BasicJsonType , typename CompatibleNumberUnsignedType , enable_if_t< is_compatible_integer_type< typename BasicJsonType::number_unsigned_t, CompatibleNumberUnsignedType >::value, int > = 0> | |
| void | to_json (BasicJsonType &j, CompatibleNumberUnsignedType val) noexcept |
| template<typename BasicJsonType , typename CompatibleNumberIntegerType , enable_if_t< is_compatible_integer_type< typename BasicJsonType::number_integer_t, CompatibleNumberIntegerType >::value, int > = 0> | |
| void | to_json (BasicJsonType &j, CompatibleNumberIntegerType val) noexcept |
| template<typename BasicJsonType , typename EnumType , enable_if_t< std::is_enum< EnumType >::value, int > = 0> | |
| void | to_json (BasicJsonType &j, EnumType e) noexcept |
| template<typename BasicJsonType > | |
| void | to_json (BasicJsonType &j, const std::vector< bool > &e) |
| template<typename BasicJsonType , typename CompatibleArrayType , enable_if_t< is_compatible_array_type< BasicJsonType, CompatibleArrayType >::value and not is_compatible_object_type< BasicJsonType, CompatibleArrayType >::value and not is_compatible_string_type< BasicJsonType, CompatibleArrayType >::value and not is_basic_json< CompatibleArrayType >::value, int > = 0> | |
| void | to_json (BasicJsonType &j, const CompatibleArrayType &arr) |
| template<typename BasicJsonType , typename T , enable_if_t< std::is_convertible< T, BasicJsonType >::value, int > = 0> | |
| void | to_json (BasicJsonType &j, const std::valarray< T > &arr) |
| template<typename BasicJsonType > | |
| void | to_json (BasicJsonType &j, typename BasicJsonType::array_t &&arr) |
| template<typename BasicJsonType , typename CompatibleObjectType , enable_if_t< is_compatible_object_type< BasicJsonType, CompatibleObjectType >::value and not is_basic_json< CompatibleObjectType >::value, int > = 0> | |
| void | to_json (BasicJsonType &j, const CompatibleObjectType &obj) |
| template<typename BasicJsonType > | |
| void | to_json (BasicJsonType &j, typename BasicJsonType::object_t &&obj) |
| template<typename BasicJsonType , typename T , std::size_t N, enable_if_t< not std::is_constructible< typename BasicJsonType::string_t, const T(&)[N]>::value, int > = 0> | |
| void | to_json (BasicJsonType &j, const T(&arr)[N]) |
| template<typename BasicJsonType , typename... Args> | |
| void | to_json (BasicJsonType &j, const std::pair< Args... > &p) |
| template<typename BasicJsonType , typename T , enable_if_t< std::is_same< T, iteration_proxy_value< typename BasicJsonType::iterator > >::value, int > = 0> | |
| void | to_json (BasicJsonType &j, const T &b) |
| template<typename BasicJsonType , typename Tuple , std::size_t... Idx> | |
| void | to_json_tuple_impl (BasicJsonType &j, const Tuple &t, index_sequence< Idx... >) |
| template<typename BasicJsonType , typename... Args> | |
| void | to_json (BasicJsonType &j, const std::tuple< Args... > &t) |
detail namespace with internal helper functions
This namespace collects functions that should not be exposed, implementations of some basic_json methods, and meta-programming helpers.
|
strong |
how to treat decoding errors
| Enumerator | |
|---|---|
| strict | throw a type_error exception in case of invalid UTF-8 |
| replace | replace invalid UTF-8 sequences with U+FFFD |
| ignore | ignore invalid UTF-8 sequences |