diff --git a/docs/mkdocs/docs/api/basic_json/array_t.md b/docs/mkdocs/docs/api/basic_json/array_t.md index caa0e9162..f621f7b58 100644 --- a/docs/mkdocs/docs/api/basic_json/array_t.md +++ b/docs/mkdocs/docs/api/basic_json/array_t.md @@ -27,7 +27,7 @@ To store objects in C++, a type is defined by the template parameters explained ### Default type -With the default values for `ArrayType` (`std::vector`) and `AllocatorType` (`std::allocator`), the default value for +With the default values for `ArrayType` (`std::vector`) and `AllocatorType` (`std::allocator`), the default type for `array_t` is: ```cpp diff --git a/docs/mkdocs/docs/api/basic_json/boolean_t.md b/docs/mkdocs/docs/api/basic_json/boolean_t.md index f79a7622e..2fd1beb4e 100644 --- a/docs/mkdocs/docs/api/basic_json/boolean_t.md +++ b/docs/mkdocs/docs/api/basic_json/boolean_t.md @@ -23,7 +23,7 @@ To store boolean values in C++, a type is defined by the template parameter `Bo ### Default type -With the default values for `BooleanType` (`#!cpp bool`), the default value for `boolean_t` is `#!cpp bool`. +With the default values for `BooleanType` (`#!cpp bool`), the default type for `boolean_t` is `#!cpp bool`. ### Storage diff --git a/docs/mkdocs/docs/api/basic_json/number_float_t.md b/docs/mkdocs/docs/api/basic_json/number_float_t.md index df5af4c4c..cf482d6f0 100644 --- a/docs/mkdocs/docs/api/basic_json/number_float_t.md +++ b/docs/mkdocs/docs/api/basic_json/number_float_t.md @@ -35,7 +35,7 @@ type to use. ### Default type -With the default values for `NumberFloatType` (`double`), the default value for `number_float_t` is `#!cpp double`. +With the default values for `NumberFloatType` (`double`), the default type for `number_float_t` is `#!cpp double`. ### Default behavior @@ -52,8 +52,9 @@ With the default values for `NumberFloatType` (`double`), the default value for > interoperability can be achieved by implementations that expect no more precision or range than these provide, in the > sense that implementations will approximate JSON numbers within the expected precision. -This implementation does exactly follow this approach, as it uses double precision floating-point numbers. Note that -numbers smaller than `-1.79769313486232e+308` or greater than `1.79769313486232e+308` are rejected during parsing with +This implementation does exactly follow this approach, as it uses double precision floating-point numbers by default. +Note that with the default `double`, numbers smaller than `-1.79769313486232e+308` or greater than +`1.79769313486232e+308` are rejected during parsing with [`out_of_range.406`](../../home/exceptions.md#jsonexceptionout_of_range406). Non-finite values (NaN and infinity) can only be stored by assigning them directly and are serialized to `null`. diff --git a/docs/mkdocs/docs/api/basic_json/number_integer_t.md b/docs/mkdocs/docs/api/basic_json/number_integer_t.md index 48d2873ed..6bd18a74b 100644 --- a/docs/mkdocs/docs/api/basic_json/number_integer_t.md +++ b/docs/mkdocs/docs/api/basic_json/number_integer_t.md @@ -31,7 +31,7 @@ to use. ### Default type -With the default values for `NumberIntegerType` (`std::int64_t`), the default value for `number_integer_t` is +With the default values for `NumberIntegerType` (`std::int64_t`), the default type for `number_integer_t` is `#!cpp std::int64_t`. ### Default behavior diff --git a/docs/mkdocs/docs/api/basic_json/number_unsigned_t.md b/docs/mkdocs/docs/api/basic_json/number_unsigned_t.md index 81cc00f77..217a59f5a 100644 --- a/docs/mkdocs/docs/api/basic_json/number_unsigned_t.md +++ b/docs/mkdocs/docs/api/basic_json/number_unsigned_t.md @@ -32,7 +32,7 @@ the type to use. ### Default type -With the default values for `NumberUnsignedType` (`std::uint64_t`), the default value for `number_unsigned_t` is +With the default values for `NumberUnsignedType` (`std::uint64_t`), the default type for `number_unsigned_t` is `#!cpp std::uint64_t`. ### Default behavior diff --git a/docs/mkdocs/docs/api/basic_json/object_t.md b/docs/mkdocs/docs/api/basic_json/object_t.md index 204e5ab28..66fa9c110 100644 --- a/docs/mkdocs/docs/api/basic_json/object_t.md +++ b/docs/mkdocs/docs/api/basic_json/object_t.md @@ -36,7 +36,7 @@ To store objects in C++, a type is defined by the template parameters described ### Default type With the default values for `ObjectType` (`std::map`), `StringType` (`std::string`), and `AllocatorType` -(`std::allocator`), the default value for `object_t` is: +(`std::allocator`), the default type for `object_t` is: ```cpp // until C++14 diff --git a/docs/mkdocs/docs/api/basic_json/string_t.md b/docs/mkdocs/docs/api/basic_json/string_t.md index 13177cef8..b65e95508 100644 --- a/docs/mkdocs/docs/api/basic_json/string_t.md +++ b/docs/mkdocs/docs/api/basic_json/string_t.md @@ -32,7 +32,7 @@ JSON class into byte-sized characters during deserialization. ### Default type -With the default values for `StringType` (`std::string`), the default value for `string_t` is `#!cpp std::string`. +With the default values for `StringType` (`std::string`), the default type for `string_t` is `#!cpp std::string`. ### Encoding diff --git a/docs/mkdocs/docs/features/types/index.md b/docs/mkdocs/docs/features/types/index.md index bd1e91072..67e97df6e 100644 --- a/docs/mkdocs/docs/features/types/index.md +++ b/docs/mkdocs/docs/features/types/index.md @@ -120,7 +120,7 @@ requirements are collected in [Template Parameter Requirements](template_paramet ### Default type -With the default values for *ObjectType* (`std::map`), *StringType* (`std::string`), and *AllocatorType* (`std::allocator`), the default value for `object_t` is: +With the default values for *ObjectType* (`std::map`), *StringType* (`std::string`), and *AllocatorType* (`std::allocator`), the default type for `object_t` is: ```cpp std::map< @@ -177,7 +177,7 @@ json j = m; ### Default type -With the default values for *ArrayType* (`std::vector`) and *AllocatorType* (`std::allocator`), the default value for `array_t` is: +With the default values for *ArrayType* (`std::vector`) and *AllocatorType* (`std::allocator`), the default type for `array_t` is: ```cpp std::vector< @@ -209,7 +209,7 @@ Unicode values are split by the JSON class into byte-sized characters during des ### Default type -With the default values for *StringType* (`std::string`), the default value for `string_t` is `#!cpp std::string`. +With the default values for *StringType* (`std::string`), the default type for `string_t` is `#!cpp std::string`. ### Encoding @@ -234,7 +234,7 @@ String values are stored as pointers in a `basic_json` type. That is, for any ac ### Default type -With the default values for *BooleanType* (`#!cpp bool`), the default value for `boolean_t` is `#!cpp bool`. +With the default values for *BooleanType* (`#!cpp bool`), the default type for `boolean_t` is `#!cpp bool`. ### Storage @@ -252,9 +252,9 @@ This description includes both integer and floating-point numbers. However, C++ ### Default types -With the default values for *NumberIntegerType* (`std::int64_t`), the default value for `number_integer_t` is `std::int64_t`. -With the default values for *NumberUnsignedType* (`std::uint64_t`), the default value for `number_unsigned_t` is `std::uint64_t`. -With the default values for *NumberFloatType* (`#!cpp double`), the default value for `number_float_t` is `#!cpp double`. +With the default values for *NumberIntegerType* (`std::int64_t`), the default type for `number_integer_t` is `std::int64_t`. +With the default values for *NumberUnsignedType* (`std::uint64_t`), the default type for `number_unsigned_t` is `std::uint64_t`. +With the default values for *NumberFloatType* (`#!cpp double`), the default type for `number_float_t` is `#!cpp double`. ### Default behavior @@ -281,7 +281,7 @@ As this range is a subrange of the exactly supported range [`INT64_MIN`, `INT64_ > This specification allows implementations to set limits on the range and precision of numbers accepted. Since software that implements IEEE 754-2008 binary64 (double precision) numbers is generally available and widely used, good interoperability can be achieved by implementations that expect no more precision or range than these provide, in the sense that implementations will approximate JSON numbers within the expected precision. -This implementation does exactly follow this approach, as it uses double precision floating-point numbers. Note that numbers smaller than `#!c -1.79769313486232e+308` or greater than `#!c 1.79769313486232e+308` are rejected during parsing with [`out_of_range.406`](../../home/exceptions.md#jsonexceptionout_of_range406). Non-finite values (NaN and infinity) can only be stored by assigning them directly and are serialized to `#!json null`. +This implementation does exactly follow this approach, as it uses double precision floating-point numbers by default (see *NumberFloatType* above). Note that with the default `#!cpp double`, numbers smaller than `#!c -1.79769313486232e+308` or greater than `#!c 1.79769313486232e+308` are rejected during parsing with [`out_of_range.406`](../../home/exceptions.md#jsonexceptionout_of_range406). Non-finite values (NaN and infinity) can only be stored by assigning them directly and are serialized to `#!json null`. ### Storage