Crossfire Server, Trunk
|
detail namespace with internal helper functions More...
Namespaces | |
container_input_adapter_factory_impl | |
dtoa_impl | |
implements the Grisu2 algorithm for binary to decimal floating-point conversion. | |
utility_internal | |
Typedefs | |
template<typename T , typename Binary > | |
using | binary_function_t = decltype(std::declval< T & >().binary(std::declval< Binary & >())) |
template<typename T > | |
using | boolean_function_t = decltype(std::declval< T & >().boolean(std::declval< bool >())) |
using | contiguous_bytes_input_adapter = decltype(input_adapter(std::declval< const char * >(), std::declval< const char * >())) |
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<template< class... > class Op, class... Args> | |
using | detected_t = typename detector< nonesuch, void, Op, Args... >::type |
template<typename T > | |
using | difference_type_t = typename T::difference_type |
template<bool B, typename T = void> | |
using | enable_if_t = typename std::enable_if< B, T >::type |
template<typename T > | |
using | end_array_function_t = decltype(std::declval< T & >().end_array()) |
template<typename T > | |
using | end_object_function_t = decltype(std::declval< T & >().end_object()) |
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 >()) |
template<size_t... Ints> | |
using | index_sequence = integer_sequence< size_t, Ints... > |
template<typename... Ts> | |
using | index_sequence_for = make_index_sequence< sizeof...(Ts)> |
template<template< class... > class Op, class... Args> | |
using | is_detected = typename detector< nonesuch, void, Op, Args... >::value_t |
template<class To , template< class... > class Op, class... Args> | |
using | is_detected_convertible = std::is_convertible< detected_t< Op, Args... >, To > |
template<class Expected , template< class... > class Op, class... Args> | |
using | is_detected_exact = std::is_same< Expected, detected_t< Op, Args... > > |
template<typename T > | |
using | iterator_category_t = typename T::iterator_category |
template<typename T > | |
using | iterator_t = typename T::iterator |
template<typename T , typename String > | |
using | key_function_t = decltype(std::declval< T & >().key(std::declval< String & >())) |
template<typename T > | |
using | key_type_t = typename T::key_type |
template<size_t N> | |
using | make_index_sequence = make_integer_sequence< size_t, N > |
template<typename T , T N> | |
using | make_integer_sequence = typename utility_internal::Gen< T, N >::type |
template<typename T > | |
using | mapped_type_t = typename T::mapped_type |
template<typename T > | |
using | null_function_t = decltype(std::declval< T & >().null()) |
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 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 CharType > | |
using | output_adapter_t = std::shared_ptr< output_adapter_protocol< CharType > > |
a type to simplify interfaces More... | |
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 BasicJsonType > | |
using | parser_callback_t = std::function< bool(int, parse_event_t, BasicJsonType &)> |
template<typename T > | |
using | pointer_t = typename T::pointer |
template<typename T > | |
using | reference_t = typename T::reference |
template<typename T > | |
using | start_array_function_t = decltype(std::declval< T & >().start_array(std::declval< std::size_t >())) |
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 | string_function_t = decltype(std::declval< T & >().string(std::declval< String & >())) |
template<typename T , typename... Args> | |
using | to_json_function = decltype(T::to_json(std::declval< Args >()...)) |
template<typename T > | |
using | uncvref_t = typename std::remove_cv< typename std::remove_reference< T >::type >::type |
template<typename T > | |
using | value_type_t = typename T::value_type |
template<typename ... Ts> | |
using | void_t = typename make_void< Ts... >::type |
Enumerations | |
enum | cbor_tag_handler_t { cbor_tag_handler_t::error, cbor_tag_handler_t::ignore, cbor_tag_handler_t::store } |
how to treat CBOR tags More... | |
enum | error_handler_t { error_handler_t::strict, error_handler_t::replace, error_handler_t::ignore } |
how to treat decoding errors More... | |
enum | input_format_t { input_format_t::json, input_format_t::cbor, input_format_t::msgpack, input_format_t::ubjson, input_format_t::bson } |
the supported input formats More... | |
enum | parse_event_t : std::uint8_t { parse_event_t::object_start, parse_event_t::object_end, parse_event_t::array_start, parse_event_t::array_end, parse_event_t::key, parse_event_t::value } |
enum | value_t : std::uint8_t { value_t::null, value_t::object, value_t::array, value_t::string, value_t::boolean, value_t::number_integer, value_t::number_unsigned, value_t::number_float, value_t::binary, value_t::discarded } |
the JSON type enumeration More... | |
Functions | |
std::size_t | combine (std::size_t seed, std::size_t h) noexcept |
template<typename T , typename U , enable_if_t< !std::is_same< T, U >::value, int > = 0> | |
T | conditional_static_cast (U value) |
std::string | escape (std::string s) |
string escaping as described in RFC 6901 (Sect. 4) More... | |
template<typename BasicJsonType , typename T , std::size_t N> | |
auto | from_json (BasicJsonType &&j, identity_tag< std::array< T, N >> tag) -> decltype(from_json_inplace_array_impl(std::forward< BasicJsonType >(j), tag, make_index_sequence< N > |
template<typename BasicJsonType , typename TupleRelated > | |
auto | from_json (BasicJsonType &&j, TupleRelated &&t) -> decltype(from_json_tuple_impl(std::forward< BasicJsonType >(j), std::forward< TupleRelated >(t), priority_tag< 3 > |
template<typename BasicJsonType , typename ArithmeticType , enable_if_t< std::is_arithmetic< ArithmeticType >::value &&!std::is_same< ArithmeticType, typename BasicJsonType::number_unsigned_t >::value &&!std::is_same< ArithmeticType, typename BasicJsonType::number_integer_t >::value &&!std::is_same< ArithmeticType, typename BasicJsonType::number_float_t >::value &&!std::is_same< ArithmeticType, typename BasicJsonType::boolean_t >::value, int > = 0> | |
void | from_json (const BasicJsonType &j, ArithmeticType &val) |
template<typename BasicJsonType , typename ConstructibleArrayType , enable_if_t< is_constructible_array_type< BasicJsonType, ConstructibleArrayType >::value &&!is_constructible_object_type< BasicJsonType, ConstructibleArrayType >::value &&!is_constructible_string_type< BasicJsonType, ConstructibleArrayType >::value &&!std::is_same< ConstructibleArrayType, typename BasicJsonType::binary_t >::value &&!is_basic_json< ConstructibleArrayType >::value, int > = 0> | |
auto | from_json (const BasicJsonType &j, ConstructibleArrayType &arr) -> decltype(from_json_array_impl(j, arr, priority_tag< 3 > |
template<typename BasicJsonType , typename ConstructibleObjectType , enable_if_t< is_constructible_object_type< BasicJsonType, ConstructibleObjectType >::value, int > = 0> | |
void | from_json (const BasicJsonType &j, ConstructibleObjectType &obj) |
template<typename BasicJsonType , typename ConstructibleStringType , enable_if_t< is_constructible_string_type< BasicJsonType, ConstructibleStringType >::value &&!std::is_same< typename BasicJsonType::string_t, ConstructibleStringType >::value, int > = 0> | |
void | from_json (const BasicJsonType &j, ConstructibleStringType &s) |
template<typename BasicJsonType , typename EnumType , enable_if_t< std::is_enum< EnumType >::value, int > = 0> | |
void | from_json (const BasicJsonType &j, EnumType &e) |
template<typename BasicJsonType , typename T , typename Allocator , enable_if_t< is_getable< BasicJsonType, T >::value, int > = 0> | |
void | from_json (const BasicJsonType &j, std::forward_list< T, Allocator > &l) |
template<typename BasicJsonType , typename Key , typename Value , typename Compare , typename Allocator , typename = enable_if_t < !std::is_constructible < typename BasicJsonType::string_t, Key >::value >> | |
void | from_json (const BasicJsonType &j, std::map< Key, Value, Compare, Allocator > &m) |
template<typename BasicJsonType , typename Key , typename Value , typename Hash , typename KeyEqual , typename Allocator , typename = enable_if_t < !std::is_constructible < typename BasicJsonType::string_t, Key >::value >> | |
void | from_json (const BasicJsonType &j, std::unordered_map< Key, Value, Hash, KeyEqual, Allocator > &m) |
template<typename BasicJsonType , typename T , enable_if_t< is_getable< BasicJsonType, T >::value, int > = 0> | |
void | from_json (const BasicJsonType &j, std::valarray< T > &l) |
template<typename BasicJsonType , typename T , std::size_t N> | |
auto | from_json (const BasicJsonType &j, T(&arr)[N]) -> decltype(j.template get< T >(), void()) |
template<typename BasicJsonType > | |
void | from_json (const BasicJsonType &j, typename BasicJsonType::binary_t &bin) |
template<typename BasicJsonType > | |
void | from_json (const BasicJsonType &j, typename BasicJsonType::boolean_t &b) |
template<typename BasicJsonType > | |
void | from_json (const BasicJsonType &j, typename BasicJsonType::number_float_t &val) |
template<typename BasicJsonType > | |
void | from_json (const BasicJsonType &j, typename BasicJsonType::number_integer_t &val) |
template<typename BasicJsonType > | |
void | from_json (const BasicJsonType &j, typename BasicJsonType::number_unsigned_t &val) |
template<typename BasicJsonType > | |
void | from_json (const BasicJsonType &j, typename BasicJsonType::string_t &s) |
template<typename BasicJsonType > | |
void | from_json (const BasicJsonType &j, typename std::nullptr_t &n) |
template<typename BasicJsonType , typename ConstructibleArrayType , enable_if_t< std::is_assignable< ConstructibleArrayType &, ConstructibleArrayType >::value, int > = 0> | |
void | from_json_array_impl (const BasicJsonType &j, ConstructibleArrayType &arr, priority_tag< 0 >) |
template<typename BasicJsonType , typename ConstructibleArrayType , enable_if_t< std::is_assignable< ConstructibleArrayType &, ConstructibleArrayType >::value, int > = 0> | |
auto | from_json_array_impl (const BasicJsonType &j, ConstructibleArrayType &arr, priority_tag< 1 >) -> decltype(arr.reserve(std::declval< typename ConstructibleArrayType::size_type >()), j.template get< typename ConstructibleArrayType::value_type >(), void()) |
template<typename BasicJsonType , typename T , std::size_t N> | |
auto | from_json_array_impl (const BasicJsonType &j, std::array< T, N > &arr, priority_tag< 2 >) -> decltype(j.template get< T >(), void()) |
template<typename BasicJsonType > | |
void | from_json_array_impl (const BasicJsonType &j, typename BasicJsonType::array_t &arr, priority_tag< 3 >) |
template<typename BasicJsonType , typename T , std::size_t... Idx> | |
std::array< T, sizeof...(Idx)> | from_json_inplace_array_impl (BasicJsonType &&j, identity_tag< std::array< T, sizeof...(Idx)>>, index_sequence< Idx... >) |
template<typename BasicJsonType , class A1 , class A2 > | |
std::pair< A1, A2 > | from_json_tuple_impl (BasicJsonType &&j, identity_tag< std::pair< A1, A2 >>, priority_tag< 0 >) |
template<typename BasicJsonType , typename... Args> | |
std::tuple< Args... > | from_json_tuple_impl (BasicJsonType &&j, identity_tag< std::tuple< Args... >>, priority_tag< 2 >) |
template<typename BasicJsonType , typename A1 , typename A2 > | |
void | from_json_tuple_impl (BasicJsonType &&j, std::pair< A1, A2 > &p, priority_tag< 1 >) |
template<typename BasicJsonType , typename... Args> | |
void | from_json_tuple_impl (BasicJsonType &&j, std::tuple< Args... > &t, priority_tag< 3 >) |
template<typename BasicJsonType , typename... Args, std::size_t... Idx> | |
std::tuple< Args... > | from_json_tuple_impl_base (BasicJsonType &&j, index_sequence< Idx... >) |
template<std::size_t N, typename IteratorType , enable_if_t< N==0, int > = 0> | |
auto | get (const nlohmann::detail::iteration_proxy_value< IteratorType > &i) -> decltype(i.key()) |
j template | get< typename ConstructibleArrayType::value_type > () |
template<typename BasicJsonType , typename ArithmeticType , enable_if_t< std::is_arithmetic< ArithmeticType >::value &&!std::is_same< ArithmeticType, typename BasicJsonType::boolean_t >::value, int > = 0> | |
void | get_arithmetic_value (const BasicJsonType &j, ArithmeticType &val) |
template<typename BasicJsonType > | |
std::size_t | hash (const BasicJsonType &j) |
hash a JSON value More... | |
template<typename CharT , typename std::enable_if< std::is_pointer< CharT >::value &&!std::is_array< CharT >::value &&std::is_integral< typename std::remove_pointer< CharT >::type >::value &&sizeof(typename std::remove_pointer< CharT >::type)==1, int >::type = 0> | |
contiguous_bytes_input_adapter | input_adapter (CharT b) |
template<typename ContainerType > | |
container_input_adapter_factory_impl::container_input_adapter_factory< ContainerType >::adapter_type | input_adapter (const ContainerType &container) |
template<typename IteratorType > | |
iterator_input_adapter_factory< IteratorType >::adapter_type | input_adapter (IteratorType first, IteratorType last) |
file_input_adapter | input_adapter (std::FILE *file) |
input_stream_adapter | input_adapter (std::istream &&stream) |
input_stream_adapter | input_adapter (std::istream &stream) |
template<typename T , std::size_t N> | |
auto | input_adapter (T(&array)[N]) -> decltype(input_adapter(array, array+N)) |
template<typename string_type > | |
void | int_to_string (string_type &target, std::size_t value) |
static bool | little_endianess (int num=1) noexcept |
determine system byte order More... | |
bool | operator< (const value_t lhs, const value_t rhs) noexcept |
comparison operator for JSON types More... | |
void | replace_substring (std::string &s, const std::string &f, const std::string &t) |
replace all occurrences of a substring by another string More... | |
template<typename FloatType > | |
JSON_HEDLEY_RETURNS_NON_NULL char * | to_chars (char *first, const char *last, FloatType value) |
generates a decimal representation of the floating-point number value in [first, last). More... | |
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 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 CompatibleArrayType , enable_if_t< is_compatible_array_type< BasicJsonType, CompatibleArrayType >::value &&!is_compatible_object_type< BasicJsonType, CompatibleArrayType >::value &&!is_compatible_string_type< BasicJsonType, CompatibleArrayType >::value &&!std::is_same< typename BasicJsonType::binary_t, CompatibleArrayType >::value &&!is_basic_json< CompatibleArrayType >::value, int > = 0> | |
void | to_json (BasicJsonType &j, const CompatibleArrayType &arr) |
template<typename BasicJsonType , typename CompatibleObjectType , enable_if_t< is_compatible_object_type< BasicJsonType, CompatibleObjectType >::value &&!is_basic_json< CompatibleObjectType >::value, int > = 0> | |
void | to_json (BasicJsonType &j, const CompatibleObjectType &obj) |
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 , typename T1 , typename T2 , enable_if_t< std::is_constructible< BasicJsonType, T1 >::value &&std::is_constructible< BasicJsonType, T2 >::value, int > = 0> | |
void | to_json (BasicJsonType &j, const std::pair< T1, T2 > &p) |
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, const std::vector< bool > &e) |
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 T , std::size_t N, enable_if_t< !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 > | |
void | to_json (BasicJsonType &j, const typename BasicJsonType::binary_t &bin) |
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 , 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 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 > | |
void | to_json (BasicJsonType &j, typename BasicJsonType::array_t &&arr) |
template<typename BasicJsonType > | |
void | to_json (BasicJsonType &j, typename BasicJsonType::object_t &&obj) |
template<typename BasicJsonType > | |
void | to_json (BasicJsonType &j, typename BasicJsonType::string_t &&s) |
template<typename BasicJsonType , typename Tuple , std::size_t... Idx> | |
void | to_json_tuple_impl (BasicJsonType &j, const Tuple &t, index_sequence< Idx... >) |
static void | unescape (std::string &s) |
string unescaping as described in RFC 6901 (Sect. 4) More... | |
j template | void ()) |
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.
using nlohmann::detail::binary_function_t = typedef decltype(std::declval<T&>().binary(std::declval<Binary&>())) |
using nlohmann::detail::boolean_function_t = typedef decltype(std::declval<T&>().boolean(std::declval<bool>())) |
using nlohmann::detail::contiguous_bytes_input_adapter = typedef decltype(input_adapter(std::declval<const char*>(), std::declval<const char*>())) |
using nlohmann::detail::detected_or = typedef detector<Default, void, Op, Args...> |
using nlohmann::detail::detected_or_t = typedef typename detected_or<Default, Op, Args...>::type |
using nlohmann::detail::detected_t = typedef typename detector<nonesuch, void, Op, Args...>::type |
using nlohmann::detail::difference_type_t = typedef typename T::difference_type |
using nlohmann::detail::enable_if_t = typedef typename std::enable_if<B, T>::type |
using nlohmann::detail::end_array_function_t = typedef decltype(std::declval<T&>().end_array()) |
using nlohmann::detail::end_object_function_t = typedef decltype(std::declval<T&>().end_object()) |
using nlohmann::detail::from_json_function = typedef decltype(T::from_json(std::declval<Args>()...)) |
using nlohmann::detail::get_template_function = typedef decltype(std::declval<T>().template get<U>()) |
using nlohmann::detail::index_sequence = typedef integer_sequence<size_t, Ints...> |
using nlohmann::detail::index_sequence_for = typedef make_index_sequence<sizeof...(Ts)> |
using nlohmann::detail::is_detected = typedef typename detector<nonesuch, void, Op, Args...>::value_t |
using nlohmann::detail::is_detected_convertible = typedef std::is_convertible<detected_t<Op, Args...>, To> |
using nlohmann::detail::is_detected_exact = typedef std::is_same<Expected, detected_t<Op, Args...> > |
using nlohmann::detail::iterator_category_t = typedef typename T::iterator_category |
using nlohmann::detail::iterator_t = typedef typename T::iterator |
using nlohmann::detail::key_function_t = typedef decltype(std::declval<T&>().key(std::declval<String&>())) |
using nlohmann::detail::key_type_t = typedef typename T::key_type |
using nlohmann::detail::make_index_sequence = typedef make_integer_sequence<size_t, N> |
using nlohmann::detail::make_integer_sequence = typedef typename utility_internal::Gen<T, N>::type |
using nlohmann::detail::mapped_type_t = typedef typename T::mapped_type |
using nlohmann::detail::null_function_t = typedef decltype(std::declval<T&>().null()) |
using nlohmann::detail::number_float_function_t = typedef decltype(std::declval<T&>().number_float( std::declval<Float>(), std::declval<const String&>())) |
using nlohmann::detail::number_integer_function_t = typedef decltype(std::declval<T&>().number_integer(std::declval<Integer>())) |
using nlohmann::detail::number_unsigned_function_t = typedef decltype(std::declval<T&>().number_unsigned(std::declval<Unsigned>())) |
using nlohmann::detail::output_adapter_t = typedef std::shared_ptr<output_adapter_protocol<CharType> > |
using nlohmann::detail::parse_error_function_t = typedef decltype(std::declval<T&>().parse_error( std::declval<std::size_t>(), std::declval<const std::string&>(), std::declval<const Exception&>())) |
using nlohmann::detail::parser_callback_t = typedef std::function<bool(int , parse_event_t , BasicJsonType& )> |
using nlohmann::detail::pointer_t = typedef typename T::pointer |
using nlohmann::detail::reference_t = typedef typename T::reference |
using nlohmann::detail::start_array_function_t = typedef decltype(std::declval<T&>().start_array(std::declval<std::size_t>())) |
using nlohmann::detail::start_object_function_t = typedef decltype(std::declval<T&>().start_object(std::declval<std::size_t>())) |
using nlohmann::detail::string_function_t = typedef decltype(std::declval<T&>().string(std::declval<String&>())) |
using nlohmann::detail::to_json_function = typedef decltype(T::to_json(std::declval<Args>()...)) |
using nlohmann::detail::uncvref_t = typedef typename std::remove_cv<typename std::remove_reference<T>::type>::type |
using nlohmann::detail::value_type_t = typedef typename T::value_type |
using nlohmann::detail::void_t = typedef typename make_void<Ts...>::type |
|
strong |
how to treat CBOR tags
Enumerator | |
---|---|
error | throw a parse_error exception in case of a tag |
ignore | ignore tags |
store | store tags as binary type |
|
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 |
|
strong |
|
strong |
|
strong |
the JSON type enumeration
This enumeration collects the different JSON types. It is internally used to distinguish the stored values, and the functions basic_json::is_null(), basic_json::is_object(), basic_json::is_array(), basic_json::is_string(), basic_json::is_boolean(), basic_json::is_number() (with basic_json::is_number_integer(), basic_json::is_number_unsigned(), and basic_json::is_number_float()), basic_json::is_discarded(), basic_json::is_primitive(), and basic_json::is_structured() rely on it.
|
inlinenoexcept |
T nlohmann::detail::conditional_static_cast | ( | U | value | ) |
|
inline |
string escaping as described in RFC 6901 (Sect. 4)
[in] | s | string to escape |
Note the order of escaping "~" to "~0" and "/" to "~1" is important.
Definition at line 2554 of file json.hpp.
References replace_substring().
Referenced by nlohmann::basic_json::diff(), and nlohmann::json_pointer< BasicJsonType >::flatten().
auto nlohmann::detail::from_json | ( | BasicJsonType && | j, |
identity_tag< std::array< T, N >> | tag | ||
) | -> decltype(from_json_inplace_array_impl(std::forward<BasicJsonType>(j), tag, make_index_sequence<N> |
auto nlohmann::detail::from_json | ( | BasicJsonType && | j, |
TupleRelated && | t | ||
) | -> decltype(from_json_tuple_impl(std::forward<BasicJsonType>(j), std::forward<TupleRelated>(t), priority_tag<3> |
void nlohmann::detail::from_json | ( | const BasicJsonType & | j, |
ArithmeticType & | val | ||
) |
Definition at line 4173 of file json.hpp.
References array, binary, boolean, nlohmann::detail::type_error::create(), discarded, JSON_THROW, null, number_float, number_integer, number_unsigned, object, and string.
auto nlohmann::detail::from_json | ( | const BasicJsonType & | j, |
ConstructibleArrayType & | arr | ||
) | -> decltype(from_json_array_impl(j, arr, priority_tag<3> |
void nlohmann::detail::from_json | ( | const BasicJsonType & | j, |
ConstructibleObjectType & | obj | ||
) |
Definition at line 4141 of file json.hpp.
References nlohmann::detail::type_error::create(), JSON_HEDLEY_UNLIKELY, JSON_THROW, and altar_valkyrie::obj.
void nlohmann::detail::from_json | ( | const BasicJsonType & | j, |
ConstructibleStringType & | s | ||
) |
Definition at line 3945 of file json.hpp.
References nlohmann::detail::type_error::create(), JSON_HEDLEY_UNLIKELY, and JSON_THROW.
void nlohmann::detail::from_json | ( | const BasicJsonType & | j, |
EnumType & | e | ||
) |
Definition at line 3975 of file json.hpp.
References get_arithmetic_value(), and is_valid_types_gen::type.
void nlohmann::detail::from_json | ( | const BasicJsonType & | j, |
std::forward_list< T, Allocator > & | l | ||
) |
Definition at line 3985 of file json.hpp.
References nlohmann::detail::type_error::create(), JSON_HEDLEY_UNLIKELY, JSON_THROW, and banquet::l.
void nlohmann::detail::from_json | ( | const BasicJsonType & | j, |
std::map< Key, Value, Compare, Allocator > & | m | ||
) |
Definition at line 4255 of file json.hpp.
References nlohmann::detail::type_error::create(), JSON_HEDLEY_UNLIKELY, JSON_THROW, and m.
void nlohmann::detail::from_json | ( | const BasicJsonType & | j, |
std::unordered_map< Key, Value, Hash, KeyEqual, Allocator > & | m | ||
) |
Definition at line 4275 of file json.hpp.
References nlohmann::detail::type_error::create(), JSON_HEDLEY_UNLIKELY, JSON_THROW, and m.
Referenced by nlohmann::adl_serializer< ValueType, typename >::from_json(), nlohmann::basic_json::get_impl(), and nlohmann::basic_json::get_to().
void nlohmann::detail::from_json | ( | const BasicJsonType & | j, |
std::valarray< T > & | l | ||
) |
Definition at line 4002 of file json.hpp.
References nlohmann::detail::type_error::create(), JSON_HEDLEY_UNLIKELY, JSON_THROW, and banquet::l.
void nlohmann::detail::from_json | ( | const BasicJsonType & | j, |
typename BasicJsonType::binary_t & | bin | ||
) |
Definition at line 4129 of file json.hpp.
References nlohmann::detail::type_error::create(), JSON_HEDLEY_UNLIKELY, and JSON_THROW.
void nlohmann::detail::from_json | ( | const BasicJsonType & | j, |
typename BasicJsonType::boolean_t & | b | ||
) |
Definition at line 3919 of file json.hpp.
References Ice::b, nlohmann::detail::type_error::create(), JSON_HEDLEY_UNLIKELY, and JSON_THROW.
void nlohmann::detail::from_json | ( | const BasicJsonType & | j, |
typename BasicJsonType::number_float_t & | val | ||
) |
Definition at line 3956 of file json.hpp.
References get_arithmetic_value().
void nlohmann::detail::from_json | ( | const BasicJsonType & | j, |
typename BasicJsonType::number_integer_t & | val | ||
) |
Definition at line 3968 of file json.hpp.
References get_arithmetic_value().
void nlohmann::detail::from_json | ( | const BasicJsonType & | j, |
typename BasicJsonType::number_unsigned_t & | val | ||
) |
Definition at line 3962 of file json.hpp.
References get_arithmetic_value().
void nlohmann::detail::from_json | ( | const BasicJsonType & | j, |
typename BasicJsonType::string_t & | s | ||
) |
Definition at line 3929 of file json.hpp.
References nlohmann::detail::type_error::create(), JSON_HEDLEY_UNLIKELY, and JSON_THROW.
void nlohmann::detail::from_json | ( | const BasicJsonType & | j, |
typename std::nullptr_t & | n | ||
) |
Definition at line 3872 of file json.hpp.
References nlohmann::detail::type_error::create(), JSON_HEDLEY_UNLIKELY, and JSON_THROW.
Referenced by nlohmann::detail::from_json_fn::operator()().
void nlohmann::detail::from_json_array_impl | ( | const BasicJsonType & | j, |
ConstructibleArrayType & | arr, | ||
priority_tag< 0 > | |||
) |
auto nlohmann::detail::from_json_array_impl | ( | const BasicJsonType & | j, |
ConstructibleArrayType & | arr, | ||
priority_tag< 1 > | |||
) | -> decltype( arr.reserve(std::declval<typename ConstructibleArrayType::size_type>()), j.template get<typename ConstructibleArrayType::value_type>(), void()) |
auto nlohmann::detail::from_json_array_impl | ( | const BasicJsonType & | j, |
std::array< T, N > & | arr, | ||
priority_tag< 2 > | |||
) | -> decltype(j.template get<T>(), void()) |
void nlohmann::detail::from_json_array_impl | ( | const BasicJsonType & | j, |
typename BasicJsonType::array_t & | arr, | ||
priority_tag< 3 > | |||
) |
std::array<T, sizeof...(Idx)> nlohmann::detail::from_json_inplace_array_impl | ( | BasicJsonType && | j, |
identity_tag< std::array< T, sizeof...(Idx)>> | , | ||
index_sequence< Idx... > | |||
) |
std::pair<A1, A2> nlohmann::detail::from_json_tuple_impl | ( | BasicJsonType && | j, |
identity_tag< std::pair< A1, A2 >> | , | ||
priority_tag< 0 > | |||
) |
Definition at line 4216 of file json.hpp.
Referenced by from_json_tuple_impl().
std::tuple<Args...> nlohmann::detail::from_json_tuple_impl | ( | BasicJsonType && | j, |
identity_tag< std::tuple< Args... >> | , | ||
priority_tag< 2 > | |||
) |
Definition at line 4229 of file json.hpp.
References from_json_tuple_impl_base().
void nlohmann::detail::from_json_tuple_impl | ( | BasicJsonType && | j, |
std::pair< A1, A2 > & | p, | ||
priority_tag< 1 > | |||
) |
Definition at line 4223 of file json.hpp.
References from_json_tuple_impl().
void nlohmann::detail::from_json_tuple_impl | ( | BasicJsonType && | j, |
std::tuple< Args... > & | t, | ||
priority_tag< 3 > | |||
) |
Definition at line 4235 of file json.hpp.
References from_json_tuple_impl_base(), and Floor::t.
std::tuple<Args...> nlohmann::detail::from_json_tuple_impl_base | ( | BasicJsonType && | j, |
index_sequence< Idx... > | |||
) |
Definition at line 4210 of file json.hpp.
Referenced by from_json_tuple_impl().
auto nlohmann::detail::get | ( | const nlohmann::detail::iteration_proxy_value< IteratorType > & | i | ) | -> decltype(i.key()) |
Definition at line 4475 of file json.hpp.
Referenced by powerbroker::check_confirm(), powerbroker::mana_stock(), and inja::Renderer::visit().
j template nlohmann::detail::get< typename ConstructibleArrayType::value_type > | ( | ) |
void nlohmann::detail::get_arithmetic_value | ( | const BasicJsonType & | j, |
ArithmeticType & | val | ||
) |
Definition at line 3886 of file json.hpp.
References array, binary, boolean, nlohmann::detail::type_error::create(), discarded, JSON_THROW, null, number_float, number_integer, number_unsigned, object, and string.
Referenced by from_json().
std::size_t nlohmann::detail::hash | ( | const BasicJsonType & | j | ) |
hash a JSON value
The hash function tries to rely on std::hash where possible. Furthermore, the type of the JSON value is taken into account to have different hash values for null, 0, 0U, and false, etc.
BasicJsonType | basic_json specialization |
j | JSON value to hash |
Definition at line 5197 of file json.hpp.
References combine(), board::element, JSON_ASSERT, diamondslots::object, and is_valid_types_gen::type.
Referenced by hashstr(), and std::hash< nlohmann::json >::operator()().
contiguous_bytes_input_adapter nlohmann::detail::input_adapter | ( | CharT | b | ) |
Definition at line 5746 of file json.hpp.
References Ice::b, and input_adapter().
container_input_adapter_factory_impl::container_input_adapter_factory<ContainerType>::adapter_type nlohmann::detail::input_adapter | ( | const ContainerType & | container | ) |
iterator_input_adapter_factory<IteratorType>::adapter_type nlohmann::detail::input_adapter | ( | IteratorType | first, |
IteratorType | last | ||
) |
Definition at line 5679 of file json.hpp.
Referenced by nlohmann::basic_json::accept(), nlohmann::detail::container_input_adapter_factory_impl::container_input_adapter_factory< ContainerType, void_t< decltype(begin(std::declval< ContainerType >()), end(std::declval< ContainerType >()))> >::create(), nlohmann::basic_json::from_bson(), nlohmann::basic_json::from_cbor(), nlohmann::basic_json::from_msgpack(), nlohmann::basic_json::from_ubjson(), nlohmann::detail::binary_reader< BasicJsonType, InputAdapterType, SAX >::get_ubjson_high_precision_number(), input_adapter(), nlohmann::basic_json::parse(), and nlohmann::basic_json::sax_parse().
|
inline |
Definition at line 5720 of file json.hpp.
References mad_mage_user::file.
|
inline |
|
inline |
auto nlohmann::detail::input_adapter | ( | T(&) | array[N] | ) | -> decltype(input_adapter(array, array + N)) |
Definition at line 5754 of file json.hpp.
References array, and input_adapter().
void nlohmann::detail::int_to_string | ( | string_type & | target, |
std::size_t | value | ||
) |
Definition at line 4344 of file json.hpp.
References nlohmann::to_string().
Referenced by nlohmann::detail::iteration_proxy_value< IteratorType >::key().
|
inlinestaticnoexcept |
determine system byte order
comparison operator for JSON types
Returns an ordering that is similar to Python:
Definition at line 147 of file json.hpp.
Referenced by nssv_DISABLE_MSVC_WARNINGS(), and std::less<::nlohmann::detail::value_t >::operator()().
|
inline |
replace all occurrences of a substring by another string
[in,out] | s | the string to manipulate; changed so that all occurrences of f are replaced with t |
[in] | f | the substring to replace with t |
[in] | t | the string to replace f |
Definition at line 2536 of file json.hpp.
References JSON_ASSERT, and Floor::t.
Referenced by escape(), and unescape().
JSON_HEDLEY_RETURNS_NON_NULL char* nlohmann::detail::to_chars | ( | char * | first, |
const char * | last, | ||
FloatType | value | ||
) |
generates a decimal representation of the floating-point number value in [first, last).
The format of the resulting decimal representation is similar to printf's g format. Returns an iterator pointing past-the-end of the decimal representation.
Definition at line 16260 of file json.hpp.
References nlohmann::detail::dtoa_impl::format_buffer(), nlohmann::detail::dtoa_impl::grisu2(), and JSON_ASSERT.
|
noexcept |
|
noexcept |
void nlohmann::detail::to_json | ( | BasicJsonType & | j, |
const CompatibleArrayType & | arr | ||
) |
void nlohmann::detail::to_json | ( | BasicJsonType & | j, |
const CompatibleObjectType & | obj | ||
) |
Definition at line 4850 of file json.hpp.
References altar_valkyrie::obj.
void nlohmann::detail::to_json | ( | BasicJsonType & | j, |
const CompatibleString & | s | ||
) |
void nlohmann::detail::to_json | ( | BasicJsonType & | j, |
const std::pair< T1, T2 > & | p | ||
) |
void nlohmann::detail::to_json | ( | BasicJsonType & | j, |
const std::valarray< T > & | arr | ||
) |
void nlohmann::detail::to_json | ( | BasicJsonType & | j, |
const std::vector< bool > & | e | ||
) |
void nlohmann::detail::to_json | ( | BasicJsonType & | j, |
const T & | b | ||
) |
Definition at line 4880 of file json.hpp.
References Ice::b.
Referenced by nlohmann::basic_json::basic_json(), and nlohmann::adl_serializer< ValueType, typename >::to_json().
void nlohmann::detail::to_json | ( | BasicJsonType & | j, |
const T(&) | arr[N] | ||
) |
void nlohmann::detail::to_json | ( | BasicJsonType & | j, |
const typename BasicJsonType::binary_t & | bin | ||
) |
|
noexcept |
Definition at line 4804 of file json.hpp.
References is_valid_types_gen::type.
|
noexcept |
|
noexcept |
Definition at line 4763 of file json.hpp.
References Ice::b.
Referenced by nlohmann::detail::to_json_fn::operator()().
void nlohmann::detail::to_json | ( | BasicJsonType & | j, |
typename BasicJsonType::array_t && | arr | ||
) |
void nlohmann::detail::to_json | ( | BasicJsonType & | j, |
typename BasicJsonType::object_t && | obj | ||
) |
Definition at line 4856 of file json.hpp.
References altar_valkyrie::obj.
void nlohmann::detail::to_json | ( | BasicJsonType & | j, |
typename BasicJsonType::string_t && | s | ||
) |
void nlohmann::detail::to_json_tuple_impl | ( | BasicJsonType & | j, |
const Tuple & | t, | ||
index_sequence< Idx... > | |||
) |
|
static |
string unescaping as described in RFC 6901 (Sect. 4)
[in] | s | string to unescape |
Note the order of escaping "~1" to "/" and "~0" to "~" is important.
Definition at line 2568 of file json.hpp.
References replace_substring().
Referenced by nlohmann::json_pointer< BasicJsonType >::split().
j template nlohmann::detail::void | ( | ) |
Definition at line 4099 of file json.hpp.
References nlohmann::detail::type_error::create(), from_json_array_impl(), JSON_HEDLEY_UNLIKELY, and JSON_THROW.
Referenced by add_me_cmd(), addReply(), alchemy_failure_effect(), apply_auto_fix(), apply_special(), armour_improver_type_apply(), AssetsTracker::assetDefined(), attempt_jump(), become_follower(), nlohmann::detail::binary_reader< BasicJsonType, InputAdapterType, SAX >::binary_reader(), book_type_apply(), AssetModel::canDropMimeData(), cast_light(), cast_word_of_recall(), cf_handle_type_apply(), cfanim_runPluginCommand(), check_hp(), checkdm(), clean_tmp_map(), clear_los(), clock_type_apply(), AssetCollector::collect(), ArchetypesModel::columnCount(), command_afk(), command_body(), command_cointoss(), command_delete(), command_dumpabove(), command_dumpallarchetypes(), command_dumpallmaps(), command_dumpallobjects(), command_dumpbelow(), command_dumpfriendlyobjects(), command_dumpmap(), command_fire_stop(), command_fix_me(), command_hide(), command_invisible(), command_listplugins(), command_malloc(), command_mapinfo(), command_mon_aggr(), command_motd(), command_news(), command_nowiz(), command_overlay_reset(), command_overlay_save(), command_passwd(), command_peaceful(), command_players(), command_printlos(), command_purge_quest(), command_purge_quest_definitions(), command_quit(), command_recollect(), command_resistances(), command_rules(), command_run_stop(), command_save(), command_settings(), command_sound(), command_ssdumptable(), command_stack_clear(), command_stack_list(), command_stack_pop(), command_statistics(), command_strings(), command_style_map_info(), command_time(), command_version(), command_whereabouts(), command_whereami(), common_post_ob_move_on(), compilePython(), confuse_living(), container_type_move_on(), converter_type_apply(), costStringFromValue(), createCFObject(), createCFObjectByName(), createMap(), creator_type_trigger(), Crossfire_Archetype_GetClone(), Crossfire_Archetype_GetHead(), Crossfire_Archetype_GetMore(), Crossfire_Archetype_GetName(), Crossfire_Archetype_GetNewObject(), Crossfire_Archetype_GetNext(), Crossfire_Map_new(), Crossfire_Object_Arrest(), Crossfire_Object_Fix(), Crossfire_Object_new(), Crossfire_Object_PermExp(), Crossfire_Object_QueryName(), Crossfire_Object_Remove(), Crossfire_Party_GetName(), Crossfire_Party_GetNext(), Crossfire_Party_GetPassword(), Crossfire_Party_GetPlayers(), Crossfire_Player_CanPay(), Crossfire_Player_new(), Crossfire_Region_GetJailPath(), Crossfire_Region_GetJailX(), Crossfire_Region_GetJailY(), Crossfire_Region_GetLongname(), Crossfire_Region_GetMessage(), Crossfire_Region_GetName(), Crossfire_Region_GetNext(), Crossfire_Region_GetParent(), destroyTimer(), do_skill(), dragon_ability_gain(), dragon_focus_type_apply(), draw_ext_info(), draw_ext_info_format(), AssetModel::dropMimeData(), duplicator_type_trigger(), emergency_save(), esrv_del_item(), esrv_send_item(), esrv_update_item(), esrv_update_spells(), exit_type_apply(), ext_info_map(), find_skill_by_number(), findAnimation(), findFace(), findPlayer(), fire(), food_type_apply(), getArchetypes(), getCFPythonVersion(), getConfigDirectory(), getDataDirectory(), getEvent(), getEventFiles(), getFriendlyList(), getLocalDirectory(), getMapDirectory(), getMapHasBeenLoaded(), getMaps(), getMonthName(), getParties(), getPeriodofdayName(), getPlayerDirectory(), getPlayers(), getPrivateDictionary(), getRegions(), getReturnValue(), getScriptName(), getScriptParameters(), getSeasonName(), getSharedDictionary(), getTempDirectory(), getTime(), getUniqueDirectory(), getWeekdayName(), getWhatIsMessage(), getWhoAmI(), getWhoIsActivator(), getWhoIsThird(), AssetModel::headerData(), init_hash_table(), initapply(), initapplyobject(), initcamera(), initdropobject(), initfire(), initghosted(), initmessage(), initmovement(), initmoveto(), initnotice(), initpickup(), initpickupobject(), initPlugin(), initsay(), initstop(), initteleport(), inittrigger(), initturn(), initvisible(), initwizard(), JSON_decode(), JSON_encode(), lamp_type_describe(), legacy_ob_apply(), lighter_type_apply(), ResourcesManager::load(), load_dir(), load_materials(), locate_recipe_artifact(), log_message(), make_snake_layout(), make_square_spiral_layout(), map_gen_spiral(), Map_GetDarkness(), Map_GetDifficulty(), Map_GetEnterX(), Map_GetEnterY(), Map_GetHeight(), Map_GetMessage(), Map_GetName(), Map_GetPath(), Map_GetPlayers(), Map_GetRegion(), Map_GetResetTime(), Map_GetResetTimeout(), Map_GetTempName(), Map_GetUnique(), Map_GetWidth(), Map_Next(), Map_SetPath(), marker_type_trigger(), matcher_all(), matcher_pickup_type(), matchString(), maze_gen(), mimic_type_apply(), monster_check_pickup(), monster_circ1_move(), monster_circ2_move(), monster_pace2_moveh(), monster_pace2_movev(), monster_pace_moveh(), monster_pace_movev(), mood_floor_type_trigger(), move_firewall(), move_player_attack(), npcSay(), nssv_DISABLE_MSVC_WARNINGS(), object_copy_no_speed(), object_create_clone(), Object_GetArchetype(), Object_GetExists(), Object_GetExp(), Object_GetExpMul(), Object_GetFlagProperty(), Object_GetFloatProperty(), Object_GetIntProperty(), Object_GetMap(), Object_GetMaterial(), Object_GetMoney(), Object_GetMoveAllow(), Object_GetMoveBlock(), Object_GetMoveOff(), Object_GetMoveOn(), Object_GetMoveSlow(), Object_GetMoveType(), Object_GetName(), Object_GetNamePl(), Object_GetObjectProperty(), Object_GetOtherArchetype(), Object_GetPickable(), Object_GetSStringProperty(), Object_GetTotalExp(), Object_GetValue(), Object_SetAnim(), Object_SetEnemy(), Object_SetExp(), Object_SetFace(), Object_SetMap(), Object_SetMoveAllow(), Object_SetMoveBlock(), Object_SetMoveOff(), Object_SetMoveOn(), Object_SetMoveSlow(), Object_SetMoveType(), Object_SetName(), Object_SetNamePl(), Object_SetOwner(), Object_SetPickable(), Object_SetQuantity(), Object_SetValue(), pets_move(), Player_GetBedMap(), Player_GetBedX(), Player_GetBedY(), Player_GetIP(), Player_GetMarkedItem(), Player_GetParty(), Player_GetTitle(), Player_SetBedMap(), Player_SetBedX(), Player_SetBedY(), Player_SetMarkedItem(), Player_SetParty(), Player_SetTitle(), poison_type_apply(), poisoning_type_process(), potion_type_apply(), power_crystal_describe(), power_crystal_type_apply(), put_in_icecube(), LicenseManager::readLicense(), readyMap(), rec_sighup(), recursive_roll(), registerCommand(), registerGEvent(), rod_adjust(), roguelike_layout_gen(), ArchetypesModel::rowCount(), runapply(), runapplyobject(), runcamera(), rundropobject(), runfire(), runmessage(), runmovement(), runmoveto(), runnotice(), runpickup(), runpickupobject(), runsay(), runstop(), runteleport(), runtrigger(), runturn(), runvisible(), runwizard(), savebed_type_apply(), nlohmann::detail::parser< BasicJsonType, InputAdapterType >::sax_parse(), scroll_type_apply(), send_skill_extra(), set_darkness_map(), set_map_timeout(), setPlayerMessage(), setReturnValue(), shop_inventory_type_apply(), sign_type_apply(), signal_shutdown(), skillscroll_type_apply(), slow_living(), SockList_ReadPacket(), SockList_Term(), spellbook_type_apply(), teleporter_type_trigger(), thrown_item_effect(), treasure_type_apply(), trigger_type_apply(), unapply_special(), unregisterGEvent(), version_cmd(), and weapon_improver_type_apply().