🔨 add NLOHMANN_JSON prefix and undef macros
This commit is contained in:
		
							parent
							
								
									1720bfedd1
								
							
						
					
					
						commit
						897362191d
					
				
					 20 changed files with 4055 additions and 2294 deletions
				
			
		|  | @ -26,7 +26,7 @@ namespace detail | |||
| template<typename BasicJsonType> | ||||
| void from_json(const BasicJsonType& j, typename std::nullptr_t& n) | ||||
| { | ||||
|     if (HEDLEY_UNLIKELY(not j.is_null())) | ||||
|     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not j.is_null())) | ||||
|     { | ||||
|         JSON_THROW(type_error::create(302, "type must be null, but is " + std::string(j.type_name()))); | ||||
|     } | ||||
|  | @ -66,7 +66,7 @@ void get_arithmetic_value(const BasicJsonType& j, ArithmeticType& val) | |||
| template<typename BasicJsonType> | ||||
| void from_json(const BasicJsonType& j, typename BasicJsonType::boolean_t& b) | ||||
| { | ||||
|     if (HEDLEY_UNLIKELY(not j.is_boolean())) | ||||
|     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not j.is_boolean())) | ||||
|     { | ||||
|         JSON_THROW(type_error::create(302, "type must be boolean, but is " + std::string(j.type_name()))); | ||||
|     } | ||||
|  | @ -76,7 +76,7 @@ void from_json(const BasicJsonType& j, typename BasicJsonType::boolean_t& b) | |||
| template<typename BasicJsonType> | ||||
| void from_json(const BasicJsonType& j, typename BasicJsonType::string_t& s) | ||||
| { | ||||
|     if (HEDLEY_UNLIKELY(not j.is_string())) | ||||
|     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not j.is_string())) | ||||
|     { | ||||
|         JSON_THROW(type_error::create(302, "type must be string, but is " + std::string(j.type_name()))); | ||||
|     } | ||||
|  | @ -92,7 +92,7 @@ template < | |||
|         int > = 0 > | ||||
| void from_json(const BasicJsonType& j, ConstructibleStringType& s) | ||||
| { | ||||
|     if (HEDLEY_UNLIKELY(not j.is_string())) | ||||
|     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not j.is_string())) | ||||
|     { | ||||
|         JSON_THROW(type_error::create(302, "type must be string, but is " + std::string(j.type_name()))); | ||||
|     } | ||||
|  | @ -132,7 +132,7 @@ template<typename BasicJsonType, typename T, typename Allocator, | |||
|          enable_if_t<std::is_convertible<BasicJsonType, T>::value, int> = 0> | ||||
| void from_json(const BasicJsonType& j, std::forward_list<T, Allocator>& l) | ||||
| { | ||||
|     if (HEDLEY_UNLIKELY(not j.is_array())) | ||||
|     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not j.is_array())) | ||||
|     { | ||||
|         JSON_THROW(type_error::create(302, "type must be array, but is " + std::string(j.type_name()))); | ||||
|     } | ||||
|  | @ -149,7 +149,7 @@ template<typename BasicJsonType, typename T, | |||
|          enable_if_t<std::is_convertible<BasicJsonType, T>::value, int> = 0> | ||||
| void from_json(const BasicJsonType& j, std::valarray<T>& l) | ||||
| { | ||||
|     if (HEDLEY_UNLIKELY(not j.is_array())) | ||||
|     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not j.is_array())) | ||||
|     { | ||||
|         JSON_THROW(type_error::create(302, "type must be array, but is " + std::string(j.type_name()))); | ||||
|     } | ||||
|  | @ -236,7 +236,7 @@ auto from_json(const BasicJsonType& j, ConstructibleArrayType& arr) | |||
| j.template get<typename ConstructibleArrayType::value_type>(), | ||||
| void()) | ||||
| { | ||||
|     if (HEDLEY_UNLIKELY(not j.is_array())) | ||||
|     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not j.is_array())) | ||||
|     { | ||||
|         JSON_THROW(type_error::create(302, "type must be array, but is " + | ||||
|                                       std::string(j.type_name()))); | ||||
|  | @ -249,7 +249,7 @@ 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) | ||||
| { | ||||
|     if (HEDLEY_UNLIKELY(not j.is_object())) | ||||
|     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not j.is_object())) | ||||
|     { | ||||
|         JSON_THROW(type_error::create(302, "type must be object, but is " + std::string(j.type_name()))); | ||||
|     } | ||||
|  | @ -332,14 +332,14 @@ template <typename BasicJsonType, typename Key, typename Value, typename Compare | |||
|                                      typename BasicJsonType::string_t, Key>::value>> | ||||
| void from_json(const BasicJsonType& j, std::map<Key, Value, Compare, Allocator>& m) | ||||
| { | ||||
|     if (HEDLEY_UNLIKELY(not j.is_array())) | ||||
|     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not j.is_array())) | ||||
|     { | ||||
|         JSON_THROW(type_error::create(302, "type must be array, but is " + std::string(j.type_name()))); | ||||
|     } | ||||
|     m.clear(); | ||||
|     for (const auto& p : j) | ||||
|     { | ||||
|         if (HEDLEY_UNLIKELY(not p.is_array())) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not p.is_array())) | ||||
|         { | ||||
|             JSON_THROW(type_error::create(302, "type must be array, but is " + std::string(p.type_name()))); | ||||
|         } | ||||
|  | @ -352,14 +352,14 @@ template <typename BasicJsonType, typename Key, typename Value, typename Hash, t | |||
|                                      typename BasicJsonType::string_t, Key>::value>> | ||||
| void from_json(const BasicJsonType& j, std::unordered_map<Key, Value, Hash, KeyEqual, Allocator>& m) | ||||
| { | ||||
|     if (HEDLEY_UNLIKELY(not j.is_array())) | ||||
|     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not j.is_array())) | ||||
|     { | ||||
|         JSON_THROW(type_error::create(302, "type must be array, but is " + std::string(j.type_name()))); | ||||
|     } | ||||
|     m.clear(); | ||||
|     for (const auto& p : j) | ||||
|     { | ||||
|         if (HEDLEY_UNLIKELY(not p.is_array())) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not p.is_array())) | ||||
|         { | ||||
|             JSON_THROW(type_error::create(302, "type must be array, but is " + std::string(p.type_name()))); | ||||
|         } | ||||
|  |  | |||
|  | @ -819,7 +819,7 @@ v = buf * 10^decimal_exponent | |||
| len is the length of the buffer (number of decimal digits) | ||||
| The buffer must be large enough, i.e. >= max_digits10. | ||||
| */ | ||||
| HEDLEY_NON_NULL(1) | ||||
| NLOHMANN_JSON_HEDLEY_NON_NULL(1) | ||||
| inline void grisu2(char* buf, int& len, int& decimal_exponent, | ||||
|                    diyfp m_minus, diyfp v, diyfp m_plus) | ||||
| { | ||||
|  | @ -879,7 +879,7 @@ len is the length of the buffer (number of decimal digits) | |||
| The buffer must be large enough, i.e. >= max_digits10. | ||||
| */ | ||||
| template <typename FloatType> | ||||
| HEDLEY_NON_NULL(1) | ||||
| NLOHMANN_JSON_HEDLEY_NON_NULL(1) | ||||
| void grisu2(char* buf, int& len, int& decimal_exponent, FloatType value) | ||||
| { | ||||
|     static_assert(diyfp::kPrecision >= std::numeric_limits<FloatType>::digits + 3, | ||||
|  | @ -918,8 +918,8 @@ void grisu2(char* buf, int& len, int& decimal_exponent, FloatType value) | |||
| @return a pointer to the element following the exponent. | ||||
| @pre -1000 < e < 1000 | ||||
| */ | ||||
| HEDLEY_NON_NULL(1) | ||||
| HEDLEY_RETURNS_NON_NULL | ||||
| NLOHMANN_JSON_HEDLEY_NON_NULL(1) | ||||
| NLOHMANN_JSON_HEDLEY_RETURNS_NON_NULL | ||||
| inline char* append_exponent(char* buf, int e) | ||||
| { | ||||
|     assert(e > -1000); | ||||
|  | @ -970,8 +970,8 @@ notation. Otherwise it will be printed in exponential notation. | |||
| @pre min_exp < 0 | ||||
| @pre max_exp > 0 | ||||
| */ | ||||
| HEDLEY_NON_NULL(1) | ||||
| HEDLEY_RETURNS_NON_NULL | ||||
| NLOHMANN_JSON_HEDLEY_NON_NULL(1) | ||||
| NLOHMANN_JSON_HEDLEY_RETURNS_NON_NULL | ||||
| inline char* format_buffer(char* buf, int len, int decimal_exponent, | ||||
|                            int min_exp, int max_exp) | ||||
| { | ||||
|  | @ -1055,8 +1055,8 @@ format. Returns an iterator pointing past-the-end of the decimal representation. | |||
| @note The result is NOT null-terminated. | ||||
| */ | ||||
| template <typename FloatType> | ||||
| HEDLEY_NON_NULL(1, 2) | ||||
| HEDLEY_RETURNS_NON_NULL | ||||
| NLOHMANN_JSON_HEDLEY_NON_NULL(1, 2) | ||||
| NLOHMANN_JSON_HEDLEY_RETURNS_NON_NULL | ||||
| char* to_chars(char* first, const char* last, FloatType value) | ||||
| { | ||||
|     static_cast<void>(last); // maybe unused - fix warning
 | ||||
|  |  | |||
|  | @ -47,7 +47,7 @@ class exception : public std::exception | |||
| { | ||||
|   public: | ||||
|     /// returns the explanatory string
 | ||||
|     HEDLEY_RETURNS_NON_NULL | ||||
|     NLOHMANN_JSON_HEDLEY_RETURNS_NON_NULL | ||||
|     const char* what() const noexcept override | ||||
|     { | ||||
|         return m.what(); | ||||
|  | @ -57,7 +57,7 @@ class exception : public std::exception | |||
|     const int id; | ||||
| 
 | ||||
|   protected: | ||||
|     HEDLEY_NON_NULL(3) | ||||
|     NLOHMANN_JSON_HEDLEY_NON_NULL(3) | ||||
|     exception(int id_, const char* what_arg) : id(id_), m(what_arg) {} | ||||
| 
 | ||||
|     static std::string name(const std::string& ename, int id_) | ||||
|  | @ -210,7 +210,7 @@ class invalid_iterator : public exception | |||
|     } | ||||
| 
 | ||||
|   private: | ||||
|     HEDLEY_NON_NULL(3) | ||||
|     NLOHMANN_JSON_HEDLEY_NON_NULL(3) | ||||
|     invalid_iterator(int id_, const char* what_arg) | ||||
|         : exception(id_, what_arg) {} | ||||
| }; | ||||
|  | @ -264,7 +264,7 @@ class type_error : public exception | |||
|     } | ||||
| 
 | ||||
|   private: | ||||
|     HEDLEY_NON_NULL(3) | ||||
|     NLOHMANN_JSON_HEDLEY_NON_NULL(3) | ||||
|     type_error(int id_, const char* what_arg) : exception(id_, what_arg) {} | ||||
| }; | ||||
| 
 | ||||
|  | @ -311,7 +311,7 @@ class out_of_range : public exception | |||
|     } | ||||
| 
 | ||||
|   private: | ||||
|     HEDLEY_NON_NULL(3) | ||||
|     NLOHMANN_JSON_HEDLEY_NON_NULL(3) | ||||
|     out_of_range(int id_, const char* what_arg) : exception(id_, what_arg) {} | ||||
| }; | ||||
| 
 | ||||
|  | @ -349,7 +349,7 @@ class other_error : public exception | |||
|     } | ||||
| 
 | ||||
|   private: | ||||
|     HEDLEY_NON_NULL(3) | ||||
|     NLOHMANN_JSON_HEDLEY_NON_NULL(3) | ||||
|     other_error(int id_, const char* what_arg) : exception(id_, what_arg) {} | ||||
| }; | ||||
| }  // namespace detail
 | ||||
|  |  | |||
|  | @ -66,7 +66,7 @@ class binary_reader | |||
| 
 | ||||
|     @return | ||||
|     */ | ||||
|     HEDLEY_NON_NULL(3) | ||||
|     NLOHMANN_JSON_HEDLEY_NON_NULL(3) | ||||
|     bool sax_parse(const input_format_t format, | ||||
|                    json_sax_t* sax_, | ||||
|                    const bool strict = true) | ||||
|  | @ -108,7 +108,7 @@ class binary_reader | |||
|                 get(); | ||||
|             } | ||||
| 
 | ||||
|             if (HEDLEY_UNLIKELY(current != std::char_traits<char>::eof())) | ||||
|             if (NLOHMANN_JSON_HEDLEY_UNLIKELY(current != std::char_traits<char>::eof())) | ||||
|             { | ||||
|                 return sax->parse_error(chars_read, get_token_string(), | ||||
|                                         parse_error::create(110, chars_read, exception_message(format, "expected end of input; last byte: 0x" + get_token_string(), "value"))); | ||||
|  | @ -144,12 +144,12 @@ class binary_reader | |||
|         std::int32_t document_size; | ||||
|         get_number<std::int32_t, true>(input_format_t::bson, document_size); | ||||
| 
 | ||||
|         if (HEDLEY_UNLIKELY(not sax->start_object(std::size_t(-1)))) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not sax->start_object(std::size_t(-1)))) | ||||
|         { | ||||
|             return false; | ||||
|         } | ||||
| 
 | ||||
|         if (HEDLEY_UNLIKELY(not parse_bson_element_list(/*is_array*/false))) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not parse_bson_element_list(/*is_array*/false))) | ||||
|         { | ||||
|             return false; | ||||
|         } | ||||
|  | @ -170,7 +170,7 @@ class binary_reader | |||
|         while (true) | ||||
|         { | ||||
|             get(); | ||||
|             if (HEDLEY_UNLIKELY(not unexpect_eof(input_format_t::bson, "cstring"))) | ||||
|             if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not unexpect_eof(input_format_t::bson, "cstring"))) | ||||
|             { | ||||
|                 return false; | ||||
|             } | ||||
|  | @ -198,7 +198,7 @@ class binary_reader | |||
|     template<typename NumberType> | ||||
|     bool get_bson_string(const NumberType len, string_t& result) | ||||
|     { | ||||
|         if (HEDLEY_UNLIKELY(len < 1)) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(len < 1)) | ||||
|         { | ||||
|             auto last_token = get_token_string(); | ||||
|             return sax->parse_error(chars_read, last_token, parse_error::create(112, chars_read, exception_message(input_format_t::bson, "string length must be at least 1, is " + std::to_string(len), "string"))); | ||||
|  | @ -293,13 +293,13 @@ class binary_reader | |||
|         string_t key; | ||||
|         while (int element_type = get()) | ||||
|         { | ||||
|             if (HEDLEY_UNLIKELY(not unexpect_eof(input_format_t::bson, "element list"))) | ||||
|             if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not unexpect_eof(input_format_t::bson, "element list"))) | ||||
|             { | ||||
|                 return false; | ||||
|             } | ||||
| 
 | ||||
|             const std::size_t element_type_parse_position = chars_read; | ||||
|             if (HEDLEY_UNLIKELY(not get_bson_cstr(key))) | ||||
|             if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not get_bson_cstr(key))) | ||||
|             { | ||||
|                 return false; | ||||
|             } | ||||
|  | @ -309,7 +309,7 @@ class binary_reader | |||
|                 return false; | ||||
|             } | ||||
| 
 | ||||
|             if (HEDLEY_UNLIKELY(not parse_bson_element_internal(element_type, element_type_parse_position))) | ||||
|             if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not parse_bson_element_internal(element_type, element_type_parse_position))) | ||||
|             { | ||||
|                 return false; | ||||
|             } | ||||
|  | @ -330,12 +330,12 @@ class binary_reader | |||
|         std::int32_t document_size; | ||||
|         get_number<std::int32_t, true>(input_format_t::bson, document_size); | ||||
| 
 | ||||
|         if (HEDLEY_UNLIKELY(not sax->start_array(std::size_t(-1)))) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not sax->start_array(std::size_t(-1)))) | ||||
|         { | ||||
|             return false; | ||||
|         } | ||||
| 
 | ||||
|         if (HEDLEY_UNLIKELY(not parse_bson_element_list(/*is_array*/true))) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not parse_bson_element_list(/*is_array*/true))) | ||||
|         { | ||||
|             return false; | ||||
|         } | ||||
|  | @ -620,12 +620,12 @@ class binary_reader | |||
|             case 0xF9: // Half-Precision Float (two-byte IEEE 754)
 | ||||
|             { | ||||
|                 const int byte1_raw = get(); | ||||
|                 if (HEDLEY_UNLIKELY(not unexpect_eof(input_format_t::cbor, "number"))) | ||||
|                 if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not unexpect_eof(input_format_t::cbor, "number"))) | ||||
|                 { | ||||
|                     return false; | ||||
|                 } | ||||
|                 const int byte2_raw = get(); | ||||
|                 if (HEDLEY_UNLIKELY(not unexpect_eof(input_format_t::cbor, "number"))) | ||||
|                 if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not unexpect_eof(input_format_t::cbor, "number"))) | ||||
|                 { | ||||
|                     return false; | ||||
|                 } | ||||
|  | @ -698,7 +698,7 @@ class binary_reader | |||
|     */ | ||||
|     bool get_cbor_string(string_t& result) | ||||
|     { | ||||
|         if (HEDLEY_UNLIKELY(not unexpect_eof(input_format_t::cbor, "string"))) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not unexpect_eof(input_format_t::cbor, "string"))) | ||||
|         { | ||||
|             return false; | ||||
|         } | ||||
|  | @ -787,7 +787,7 @@ class binary_reader | |||
|     */ | ||||
|     bool get_cbor_array(const std::size_t len) | ||||
|     { | ||||
|         if (HEDLEY_UNLIKELY(not sax->start_array(len))) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not sax->start_array(len))) | ||||
|         { | ||||
|             return false; | ||||
|         } | ||||
|  | @ -796,7 +796,7 @@ class binary_reader | |||
|         { | ||||
|             for (std::size_t i = 0; i < len; ++i) | ||||
|             { | ||||
|                 if (HEDLEY_UNLIKELY(not parse_cbor_internal())) | ||||
|                 if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not parse_cbor_internal())) | ||||
|                 { | ||||
|                     return false; | ||||
|                 } | ||||
|  | @ -806,7 +806,7 @@ class binary_reader | |||
|         { | ||||
|             while (get() != 0xFF) | ||||
|             { | ||||
|                 if (HEDLEY_UNLIKELY(not parse_cbor_internal(false))) | ||||
|                 if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not parse_cbor_internal(false))) | ||||
|                 { | ||||
|                     return false; | ||||
|                 } | ||||
|  | @ -823,7 +823,7 @@ class binary_reader | |||
|     */ | ||||
|     bool get_cbor_object(const std::size_t len) | ||||
|     { | ||||
|         if (HEDLEY_UNLIKELY(not sax->start_object(len))) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not sax->start_object(len))) | ||||
|         { | ||||
|             return false; | ||||
|         } | ||||
|  | @ -834,12 +834,12 @@ class binary_reader | |||
|             for (std::size_t i = 0; i < len; ++i) | ||||
|             { | ||||
|                 get(); | ||||
|                 if (HEDLEY_UNLIKELY(not get_cbor_string(key) or not sax->key(key))) | ||||
|                 if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not get_cbor_string(key) or not sax->key(key))) | ||||
|                 { | ||||
|                     return false; | ||||
|                 } | ||||
| 
 | ||||
|                 if (HEDLEY_UNLIKELY(not parse_cbor_internal())) | ||||
|                 if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not parse_cbor_internal())) | ||||
|                 { | ||||
|                     return false; | ||||
|                 } | ||||
|  | @ -850,12 +850,12 @@ class binary_reader | |||
|         { | ||||
|             while (get() != 0xFF) | ||||
|             { | ||||
|                 if (HEDLEY_UNLIKELY(not get_cbor_string(key) or not sax->key(key))) | ||||
|                 if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not get_cbor_string(key) or not sax->key(key))) | ||||
|                 { | ||||
|                     return false; | ||||
|                 } | ||||
| 
 | ||||
|                 if (HEDLEY_UNLIKELY(not parse_cbor_internal())) | ||||
|                 if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not parse_cbor_internal())) | ||||
|                 { | ||||
|                     return false; | ||||
|                 } | ||||
|  | @ -1244,7 +1244,7 @@ class binary_reader | |||
|     */ | ||||
|     bool get_msgpack_string(string_t& result) | ||||
|     { | ||||
|         if (HEDLEY_UNLIKELY(not unexpect_eof(input_format_t::msgpack, "string"))) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not unexpect_eof(input_format_t::msgpack, "string"))) | ||||
|         { | ||||
|             return false; | ||||
|         } | ||||
|  | @ -1320,14 +1320,14 @@ class binary_reader | |||
|     */ | ||||
|     bool get_msgpack_array(const std::size_t len) | ||||
|     { | ||||
|         if (HEDLEY_UNLIKELY(not sax->start_array(len))) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not sax->start_array(len))) | ||||
|         { | ||||
|             return false; | ||||
|         } | ||||
| 
 | ||||
|         for (std::size_t i = 0; i < len; ++i) | ||||
|         { | ||||
|             if (HEDLEY_UNLIKELY(not parse_msgpack_internal())) | ||||
|             if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not parse_msgpack_internal())) | ||||
|             { | ||||
|                 return false; | ||||
|             } | ||||
|  | @ -1342,7 +1342,7 @@ class binary_reader | |||
|     */ | ||||
|     bool get_msgpack_object(const std::size_t len) | ||||
|     { | ||||
|         if (HEDLEY_UNLIKELY(not sax->start_object(len))) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not sax->start_object(len))) | ||||
|         { | ||||
|             return false; | ||||
|         } | ||||
|  | @ -1351,12 +1351,12 @@ class binary_reader | |||
|         for (std::size_t i = 0; i < len; ++i) | ||||
|         { | ||||
|             get(); | ||||
|             if (HEDLEY_UNLIKELY(not get_msgpack_string(key) or not sax->key(key))) | ||||
|             if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not get_msgpack_string(key) or not sax->key(key))) | ||||
|             { | ||||
|                 return false; | ||||
|             } | ||||
| 
 | ||||
|             if (HEDLEY_UNLIKELY(not parse_msgpack_internal())) | ||||
|             if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not parse_msgpack_internal())) | ||||
|             { | ||||
|                 return false; | ||||
|             } | ||||
|  | @ -1403,7 +1403,7 @@ class binary_reader | |||
|             get();  // TODO(niels): may we ignore N here?
 | ||||
|         } | ||||
| 
 | ||||
|         if (HEDLEY_UNLIKELY(not unexpect_eof(input_format_t::ubjson, "value"))) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not unexpect_eof(input_format_t::ubjson, "value"))) | ||||
|         { | ||||
|             return false; | ||||
|         } | ||||
|  | @ -1457,7 +1457,7 @@ class binary_reader | |||
|             case 'U': | ||||
|             { | ||||
|                 std::uint8_t number; | ||||
|                 if (HEDLEY_UNLIKELY(not get_number(input_format_t::ubjson, number))) | ||||
|                 if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not get_number(input_format_t::ubjson, number))) | ||||
|                 { | ||||
|                     return false; | ||||
|                 } | ||||
|  | @ -1468,7 +1468,7 @@ class binary_reader | |||
|             case 'i': | ||||
|             { | ||||
|                 std::int8_t number; | ||||
|                 if (HEDLEY_UNLIKELY(not get_number(input_format_t::ubjson, number))) | ||||
|                 if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not get_number(input_format_t::ubjson, number))) | ||||
|                 { | ||||
|                     return false; | ||||
|                 } | ||||
|  | @ -1479,7 +1479,7 @@ class binary_reader | |||
|             case 'I': | ||||
|             { | ||||
|                 std::int16_t number; | ||||
|                 if (HEDLEY_UNLIKELY(not get_number(input_format_t::ubjson, number))) | ||||
|                 if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not get_number(input_format_t::ubjson, number))) | ||||
|                 { | ||||
|                     return false; | ||||
|                 } | ||||
|  | @ -1490,7 +1490,7 @@ class binary_reader | |||
|             case 'l': | ||||
|             { | ||||
|                 std::int32_t number; | ||||
|                 if (HEDLEY_UNLIKELY(not get_number(input_format_t::ubjson, number))) | ||||
|                 if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not get_number(input_format_t::ubjson, number))) | ||||
|                 { | ||||
|                     return false; | ||||
|                 } | ||||
|  | @ -1501,7 +1501,7 @@ class binary_reader | |||
|             case 'L': | ||||
|             { | ||||
|                 std::int64_t number; | ||||
|                 if (HEDLEY_UNLIKELY(not get_number(input_format_t::ubjson, number))) | ||||
|                 if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not get_number(input_format_t::ubjson, number))) | ||||
|                 { | ||||
|                     return false; | ||||
|                 } | ||||
|  | @ -1537,15 +1537,15 @@ class binary_reader | |||
|         if (current == '$') | ||||
|         { | ||||
|             result.second = get();  // must not ignore 'N', because 'N' maybe the type
 | ||||
|             if (HEDLEY_UNLIKELY(not unexpect_eof(input_format_t::ubjson, "type"))) | ||||
|             if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not unexpect_eof(input_format_t::ubjson, "type"))) | ||||
|             { | ||||
|                 return false; | ||||
|             } | ||||
| 
 | ||||
|             get_ignore_noop(); | ||||
|             if (HEDLEY_UNLIKELY(current != '#')) | ||||
|             if (NLOHMANN_JSON_HEDLEY_UNLIKELY(current != '#')) | ||||
|             { | ||||
|                 if (HEDLEY_UNLIKELY(not unexpect_eof(input_format_t::ubjson, "value"))) | ||||
|                 if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not unexpect_eof(input_format_t::ubjson, "value"))) | ||||
|                 { | ||||
|                     return false; | ||||
|                 } | ||||
|  | @ -1628,11 +1628,11 @@ class binary_reader | |||
|             case 'C':  // char
 | ||||
|             { | ||||
|                 get(); | ||||
|                 if (HEDLEY_UNLIKELY(not unexpect_eof(input_format_t::ubjson, "char"))) | ||||
|                 if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not unexpect_eof(input_format_t::ubjson, "char"))) | ||||
|                 { | ||||
|                     return false; | ||||
|                 } | ||||
|                 if (HEDLEY_UNLIKELY(current > 127)) | ||||
|                 if (NLOHMANN_JSON_HEDLEY_UNLIKELY(current > 127)) | ||||
|                 { | ||||
|                     auto last_token = get_token_string(); | ||||
|                     return sax->parse_error(chars_read, last_token, parse_error::create(113, chars_read, exception_message(input_format_t::ubjson, "byte after 'C' must be in range 0x00..0x7F; last byte: 0x" + last_token, "char"))); | ||||
|  | @ -1667,14 +1667,14 @@ class binary_reader | |||
|     bool get_ubjson_array() | ||||
|     { | ||||
|         std::pair<std::size_t, int> size_and_type; | ||||
|         if (HEDLEY_UNLIKELY(not get_ubjson_size_type(size_and_type))) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not get_ubjson_size_type(size_and_type))) | ||||
|         { | ||||
|             return false; | ||||
|         } | ||||
| 
 | ||||
|         if (size_and_type.first != string_t::npos) | ||||
|         { | ||||
|             if (HEDLEY_UNLIKELY(not sax->start_array(size_and_type.first))) | ||||
|             if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not sax->start_array(size_and_type.first))) | ||||
|             { | ||||
|                 return false; | ||||
|             } | ||||
|  | @ -1685,7 +1685,7 @@ class binary_reader | |||
|                 { | ||||
|                     for (std::size_t i = 0; i < size_and_type.first; ++i) | ||||
|                     { | ||||
|                         if (HEDLEY_UNLIKELY(not get_ubjson_value(size_and_type.second))) | ||||
|                         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not get_ubjson_value(size_and_type.second))) | ||||
|                         { | ||||
|                             return false; | ||||
|                         } | ||||
|  | @ -1696,7 +1696,7 @@ class binary_reader | |||
|             { | ||||
|                 for (std::size_t i = 0; i < size_and_type.first; ++i) | ||||
|                 { | ||||
|                     if (HEDLEY_UNLIKELY(not parse_ubjson_internal())) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not parse_ubjson_internal())) | ||||
|                     { | ||||
|                         return false; | ||||
|                     } | ||||
|  | @ -1705,14 +1705,14 @@ class binary_reader | |||
|         } | ||||
|         else | ||||
|         { | ||||
|             if (HEDLEY_UNLIKELY(not sax->start_array(std::size_t(-1)))) | ||||
|             if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not sax->start_array(std::size_t(-1)))) | ||||
|             { | ||||
|                 return false; | ||||
|             } | ||||
| 
 | ||||
|             while (current != ']') | ||||
|             { | ||||
|                 if (HEDLEY_UNLIKELY(not parse_ubjson_internal(false))) | ||||
|                 if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not parse_ubjson_internal(false))) | ||||
|                 { | ||||
|                     return false; | ||||
|                 } | ||||
|  | @ -1729,7 +1729,7 @@ class binary_reader | |||
|     bool get_ubjson_object() | ||||
|     { | ||||
|         std::pair<std::size_t, int> size_and_type; | ||||
|         if (HEDLEY_UNLIKELY(not get_ubjson_size_type(size_and_type))) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not get_ubjson_size_type(size_and_type))) | ||||
|         { | ||||
|             return false; | ||||
|         } | ||||
|  | @ -1737,7 +1737,7 @@ class binary_reader | |||
|         string_t key; | ||||
|         if (size_and_type.first != string_t::npos) | ||||
|         { | ||||
|             if (HEDLEY_UNLIKELY(not sax->start_object(size_and_type.first))) | ||||
|             if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not sax->start_object(size_and_type.first))) | ||||
|             { | ||||
|                 return false; | ||||
|             } | ||||
|  | @ -1746,11 +1746,11 @@ class binary_reader | |||
|             { | ||||
|                 for (std::size_t i = 0; i < size_and_type.first; ++i) | ||||
|                 { | ||||
|                     if (HEDLEY_UNLIKELY(not get_ubjson_string(key) or not sax->key(key))) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not get_ubjson_string(key) or not sax->key(key))) | ||||
|                     { | ||||
|                         return false; | ||||
|                     } | ||||
|                     if (HEDLEY_UNLIKELY(not get_ubjson_value(size_and_type.second))) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not get_ubjson_value(size_and_type.second))) | ||||
|                     { | ||||
|                         return false; | ||||
|                     } | ||||
|  | @ -1761,11 +1761,11 @@ class binary_reader | |||
|             { | ||||
|                 for (std::size_t i = 0; i < size_and_type.first; ++i) | ||||
|                 { | ||||
|                     if (HEDLEY_UNLIKELY(not get_ubjson_string(key) or not sax->key(key))) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not get_ubjson_string(key) or not sax->key(key))) | ||||
|                     { | ||||
|                         return false; | ||||
|                     } | ||||
|                     if (HEDLEY_UNLIKELY(not parse_ubjson_internal())) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not parse_ubjson_internal())) | ||||
|                     { | ||||
|                         return false; | ||||
|                     } | ||||
|  | @ -1775,18 +1775,18 @@ class binary_reader | |||
|         } | ||||
|         else | ||||
|         { | ||||
|             if (HEDLEY_UNLIKELY(not sax->start_object(std::size_t(-1)))) | ||||
|             if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not sax->start_object(std::size_t(-1)))) | ||||
|             { | ||||
|                 return false; | ||||
|             } | ||||
| 
 | ||||
|             while (current != '}') | ||||
|             { | ||||
|                 if (HEDLEY_UNLIKELY(not get_ubjson_string(key, false) or not sax->key(key))) | ||||
|                 if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not get_ubjson_string(key, false) or not sax->key(key))) | ||||
|                 { | ||||
|                     return false; | ||||
|                 } | ||||
|                 if (HEDLEY_UNLIKELY(not parse_ubjson_internal())) | ||||
|                 if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not parse_ubjson_internal())) | ||||
|                 { | ||||
|                     return false; | ||||
|                 } | ||||
|  | @ -1852,7 +1852,7 @@ class binary_reader | |||
|         for (std::size_t i = 0; i < sizeof(NumberType); ++i) | ||||
|         { | ||||
|             get(); | ||||
|             if (HEDLEY_UNLIKELY(not unexpect_eof(format, "number"))) | ||||
|             if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not unexpect_eof(format, "number"))) | ||||
|             { | ||||
|                 return false; | ||||
|             } | ||||
|  | @ -1896,7 +1896,7 @@ class binary_reader | |||
|         std::generate_n(std::back_inserter(result), len, [this, &success, &format]() | ||||
|         { | ||||
|             get(); | ||||
|             if (HEDLEY_UNLIKELY(not unexpect_eof(format, "string"))) | ||||
|             if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not unexpect_eof(format, "string"))) | ||||
|             { | ||||
|                 success = false; | ||||
|             } | ||||
|  | @ -1910,10 +1910,10 @@ class binary_reader | |||
|     @param[in] context  further context information (for diagnostics) | ||||
|     @return whether the last read character is not EOF | ||||
|     */ | ||||
|     HEDLEY_NON_NULL(3) | ||||
|     NLOHMANN_JSON_HEDLEY_NON_NULL(3) | ||||
|     bool unexpect_eof(const input_format_t format, const char* context) const | ||||
|     { | ||||
|         if (HEDLEY_UNLIKELY(current == std::char_traits<char>::eof())) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(current == std::char_traits<char>::eof())) | ||||
|         { | ||||
|             return sax->parse_error(chars_read, "<end of file>", | ||||
|                                     parse_error::create(110, chars_read, exception_message(format, "unexpected end of input", context))); | ||||
|  |  | |||
|  | @ -55,7 +55,7 @@ Input adapter for stdio file access. This adapter read only 1 byte and do not us | |||
| class file_input_adapter : public input_adapter_protocol | ||||
| { | ||||
|   public: | ||||
|     HEDLEY_NON_NULL(2) | ||||
|     NLOHMANN_JSON_HEDLEY_NON_NULL(2) | ||||
|     explicit file_input_adapter(std::FILE* f)  noexcept | ||||
|         : m_file(f) | ||||
|     {} | ||||
|  | @ -131,7 +131,7 @@ class input_stream_adapter : public input_adapter_protocol | |||
| class input_buffer_adapter : public input_adapter_protocol | ||||
| { | ||||
|   public: | ||||
|     HEDLEY_NON_NULL(2) | ||||
|     NLOHMANN_JSON_HEDLEY_NON_NULL(2) | ||||
|     input_buffer_adapter(const char* b, const std::size_t l) noexcept | ||||
|         : cursor(b), limit(b + l) | ||||
|     {} | ||||
|  | @ -145,7 +145,7 @@ class input_buffer_adapter : public input_adapter_protocol | |||
| 
 | ||||
|     std::char_traits<char>::int_type get_character() noexcept override | ||||
|     { | ||||
|         if (HEDLEY_LIKELY(cursor < limit)) | ||||
|         if (NLOHMANN_JSON_HEDLEY_LIKELY(cursor < limit)) | ||||
|         { | ||||
|             return std::char_traits<char>::to_int_type(*(cursor++)); | ||||
|         } | ||||
|  | @ -335,7 +335,7 @@ class input_adapter | |||
| { | ||||
|   public: | ||||
|     // native support
 | ||||
|     HEDLEY_NON_NULL(2) | ||||
|     NLOHMANN_JSON_HEDLEY_NON_NULL(2) | ||||
|     input_adapter(std::FILE* file) | ||||
|         : ia(std::make_shared<file_input_adapter>(file)) {} | ||||
|     /// input adapter for input stream
 | ||||
|  | @ -404,7 +404,7 @@ class input_adapter | |||
|             "each element in the iterator range must have the size of 1 byte"); | ||||
| 
 | ||||
|         const auto len = static_cast<size_t>(std::distance(first, last)); | ||||
|         if (HEDLEY_LIKELY(len > 0)) | ||||
|         if (NLOHMANN_JSON_HEDLEY_LIKELY(len > 0)) | ||||
|         { | ||||
|             // there is at least one element: use the address of first
 | ||||
|             ia = std::make_shared<input_buffer_adapter>(reinterpret_cast<const char*>(&(*first)), len); | ||||
|  |  | |||
|  | @ -206,7 +206,7 @@ class json_sax_dom_parser | |||
|     { | ||||
|         ref_stack.push_back(handle_value(BasicJsonType::value_t::object)); | ||||
| 
 | ||||
|         if (HEDLEY_UNLIKELY(len != std::size_t(-1) and len > ref_stack.back()->max_size())) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(len != std::size_t(-1) and len > ref_stack.back()->max_size())) | ||||
|         { | ||||
|             JSON_THROW(out_of_range::create(408, | ||||
|                                             "excessive object size: " + std::to_string(len))); | ||||
|  | @ -232,7 +232,7 @@ class json_sax_dom_parser | |||
|     { | ||||
|         ref_stack.push_back(handle_value(BasicJsonType::value_t::array)); | ||||
| 
 | ||||
|         if (HEDLEY_UNLIKELY(len != std::size_t(-1) and len > ref_stack.back()->max_size())) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(len != std::size_t(-1) and len > ref_stack.back()->max_size())) | ||||
|         { | ||||
|             JSON_THROW(out_of_range::create(408, | ||||
|                                             "excessive array size: " + std::to_string(len))); | ||||
|  | @ -288,7 +288,7 @@ class json_sax_dom_parser | |||
|                object to which we can add elements | ||||
|     */ | ||||
|     template<typename Value> | ||||
|     HEDLEY_RETURNS_NON_NULL | ||||
|     NLOHMANN_JSON_HEDLEY_RETURNS_NON_NULL | ||||
|     BasicJsonType* handle_value(Value&& v) | ||||
|     { | ||||
|         if (ref_stack.empty()) | ||||
|  | @ -395,7 +395,7 @@ class json_sax_dom_callback_parser | |||
|         ref_stack.push_back(val.second); | ||||
| 
 | ||||
|         // check object limit
 | ||||
|         if (ref_stack.back() and HEDLEY_UNLIKELY(len != std::size_t(-1) and len > ref_stack.back()->max_size())) | ||||
|         if (ref_stack.back() and NLOHMANN_JSON_HEDLEY_UNLIKELY(len != std::size_t(-1) and len > ref_stack.back()->max_size())) | ||||
|         { | ||||
|             JSON_THROW(out_of_range::create(408, "excessive object size: " + std::to_string(len))); | ||||
|         } | ||||
|  | @ -458,7 +458,7 @@ class json_sax_dom_callback_parser | |||
|         ref_stack.push_back(val.second); | ||||
| 
 | ||||
|         // check array limit
 | ||||
|         if (ref_stack.back() and HEDLEY_UNLIKELY(len != std::size_t(-1) and len > ref_stack.back()->max_size())) | ||||
|         if (ref_stack.back() and NLOHMANN_JSON_HEDLEY_UNLIKELY(len != std::size_t(-1) and len > ref_stack.back()->max_size())) | ||||
|         { | ||||
|             JSON_THROW(out_of_range::create(408, "excessive array size: " + std::to_string(len))); | ||||
|         } | ||||
|  |  | |||
|  | @ -59,7 +59,7 @@ class lexer | |||
|     }; | ||||
| 
 | ||||
|     /// return name of values of type token_type (only used for errors)
 | ||||
|     HEDLEY_RETURNS_NON_NULL | ||||
|     NLOHMANN_JSON_HEDLEY_RETURNS_NON_NULL | ||||
|     static const char* token_type_name(const token_type t) noexcept | ||||
|     { | ||||
|         switch (t) | ||||
|  | @ -201,7 +201,7 @@ class lexer | |||
|         for (auto range = ranges.begin(); range != ranges.end(); ++range) | ||||
|         { | ||||
|             get(); | ||||
|             if (HEDLEY_LIKELY(*range <= current and current <= *(++range))) | ||||
|             if (NLOHMANN_JSON_HEDLEY_LIKELY(*range <= current and current <= *(++range))) | ||||
|             { | ||||
|                 add(current); | ||||
|             } | ||||
|  | @ -300,7 +300,7 @@ class lexer | |||
|                             const int codepoint1 = get_codepoint(); | ||||
|                             int codepoint = codepoint1; // start with codepoint1
 | ||||
| 
 | ||||
|                             if (HEDLEY_UNLIKELY(codepoint1 == -1)) | ||||
|                             if (NLOHMANN_JSON_HEDLEY_UNLIKELY(codepoint1 == -1)) | ||||
|                             { | ||||
|                                 error_message = "invalid string: '\\u' must be followed by 4 hex digits"; | ||||
|                                 return token_type::parse_error; | ||||
|  | @ -310,18 +310,18 @@ class lexer | |||
|                             if (0xD800 <= codepoint1 and codepoint1 <= 0xDBFF) | ||||
|                             { | ||||
|                                 // expect next \uxxxx entry
 | ||||
|                                 if (HEDLEY_LIKELY(get() == '\\' and get() == 'u')) | ||||
|                                 if (NLOHMANN_JSON_HEDLEY_LIKELY(get() == '\\' and get() == 'u')) | ||||
|                                 { | ||||
|                                     const int codepoint2 = get_codepoint(); | ||||
| 
 | ||||
|                                     if (HEDLEY_UNLIKELY(codepoint2 == -1)) | ||||
|                                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(codepoint2 == -1)) | ||||
|                                     { | ||||
|                                         error_message = "invalid string: '\\u' must be followed by 4 hex digits"; | ||||
|                                         return token_type::parse_error; | ||||
|                                     } | ||||
| 
 | ||||
|                                     // check if codepoint2 is a low surrogate
 | ||||
|                                     if (HEDLEY_LIKELY(0xDC00 <= codepoint2 and codepoint2 <= 0xDFFF)) | ||||
|                                     if (NLOHMANN_JSON_HEDLEY_LIKELY(0xDC00 <= codepoint2 and codepoint2 <= 0xDFFF)) | ||||
|                                     { | ||||
|                                         // overwrite codepoint
 | ||||
|                                         codepoint = static_cast<int>( | ||||
|  | @ -348,7 +348,7 @@ class lexer | |||
|                             } | ||||
|                             else | ||||
|                             { | ||||
|                                 if (HEDLEY_UNLIKELY(0xDC00 <= codepoint1 and codepoint1 <= 0xDFFF)) | ||||
|                                 if (NLOHMANN_JSON_HEDLEY_UNLIKELY(0xDC00 <= codepoint1 and codepoint1 <= 0xDFFF)) | ||||
|                                 { | ||||
|                                     error_message = "invalid string: surrogate U+DC00..U+DFFF must follow U+D800..U+DBFF"; | ||||
|                                     return token_type::parse_error; | ||||
|  | @ -723,7 +723,7 @@ class lexer | |||
|                 case 0xDE: | ||||
|                 case 0xDF: | ||||
|                 { | ||||
|                     if (HEDLEY_UNLIKELY(not next_byte_in_range({0x80, 0xBF}))) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not next_byte_in_range({0x80, 0xBF}))) | ||||
|                     { | ||||
|                         return token_type::parse_error; | ||||
|                     } | ||||
|  | @ -733,7 +733,7 @@ class lexer | |||
|                 // U+0800..U+0FFF: bytes E0 A0..BF 80..BF
 | ||||
|                 case 0xE0: | ||||
|                 { | ||||
|                     if (HEDLEY_UNLIKELY(not (next_byte_in_range({0xA0, 0xBF, 0x80, 0xBF})))) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not (next_byte_in_range({0xA0, 0xBF, 0x80, 0xBF})))) | ||||
|                     { | ||||
|                         return token_type::parse_error; | ||||
|                     } | ||||
|  | @ -757,7 +757,7 @@ class lexer | |||
|                 case 0xEE: | ||||
|                 case 0xEF: | ||||
|                 { | ||||
|                     if (HEDLEY_UNLIKELY(not (next_byte_in_range({0x80, 0xBF, 0x80, 0xBF})))) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not (next_byte_in_range({0x80, 0xBF, 0x80, 0xBF})))) | ||||
|                     { | ||||
|                         return token_type::parse_error; | ||||
|                     } | ||||
|  | @ -767,7 +767,7 @@ class lexer | |||
|                 // U+D000..U+D7FF: bytes ED 80..9F 80..BF
 | ||||
|                 case 0xED: | ||||
|                 { | ||||
|                     if (HEDLEY_UNLIKELY(not (next_byte_in_range({0x80, 0x9F, 0x80, 0xBF})))) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not (next_byte_in_range({0x80, 0x9F, 0x80, 0xBF})))) | ||||
|                     { | ||||
|                         return token_type::parse_error; | ||||
|                     } | ||||
|  | @ -777,7 +777,7 @@ class lexer | |||
|                 // U+10000..U+3FFFF F0 90..BF 80..BF 80..BF
 | ||||
|                 case 0xF0: | ||||
|                 { | ||||
|                     if (HEDLEY_UNLIKELY(not (next_byte_in_range({0x90, 0xBF, 0x80, 0xBF, 0x80, 0xBF})))) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not (next_byte_in_range({0x90, 0xBF, 0x80, 0xBF, 0x80, 0xBF})))) | ||||
|                     { | ||||
|                         return token_type::parse_error; | ||||
|                     } | ||||
|  | @ -789,7 +789,7 @@ class lexer | |||
|                 case 0xF2: | ||||
|                 case 0xF3: | ||||
|                 { | ||||
|                     if (HEDLEY_UNLIKELY(not (next_byte_in_range({0x80, 0xBF, 0x80, 0xBF, 0x80, 0xBF})))) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not (next_byte_in_range({0x80, 0xBF, 0x80, 0xBF, 0x80, 0xBF})))) | ||||
|                     { | ||||
|                         return token_type::parse_error; | ||||
|                     } | ||||
|  | @ -799,7 +799,7 @@ class lexer | |||
|                 // U+100000..U+10FFFF F4 80..8F 80..BF 80..BF
 | ||||
|                 case 0xF4: | ||||
|                 { | ||||
|                     if (HEDLEY_UNLIKELY(not (next_byte_in_range({0x80, 0x8F, 0x80, 0xBF, 0x80, 0xBF})))) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not (next_byte_in_range({0x80, 0x8F, 0x80, 0xBF, 0x80, 0xBF})))) | ||||
|                     { | ||||
|                         return token_type::parse_error; | ||||
|                     } | ||||
|  | @ -816,19 +816,19 @@ class lexer | |||
|         } | ||||
|     } | ||||
| 
 | ||||
|     HEDLEY_NON_NULL(2) | ||||
|     NLOHMANN_JSON_HEDLEY_NON_NULL(2) | ||||
|     static void strtof(float& f, const char* str, char** endptr) noexcept | ||||
|     { | ||||
|         f = std::strtof(str, endptr); | ||||
|     } | ||||
| 
 | ||||
|     HEDLEY_NON_NULL(2) | ||||
|     NLOHMANN_JSON_HEDLEY_NON_NULL(2) | ||||
|     static void strtof(double& f, const char* str, char** endptr) noexcept | ||||
|     { | ||||
|         f = std::strtod(str, endptr); | ||||
|     } | ||||
| 
 | ||||
|     HEDLEY_NON_NULL(2) | ||||
|     NLOHMANN_JSON_HEDLEY_NON_NULL(2) | ||||
|     static void strtof(long double& f, const char* str, char** endptr) noexcept | ||||
|     { | ||||
|         f = std::strtold(str, endptr); | ||||
|  | @ -1204,14 +1204,14 @@ scan_number_done: | |||
|     @param[in] length        the length of the passed literal text | ||||
|     @param[in] return_type   the token type to return on success | ||||
|     */ | ||||
|     HEDLEY_NON_NULL(2) | ||||
|     NLOHMANN_JSON_HEDLEY_NON_NULL(2) | ||||
|     token_type scan_literal(const char* literal_text, const std::size_t length, | ||||
|                             token_type return_type) | ||||
|     { | ||||
|         assert(current == literal_text[0]); | ||||
|         for (std::size_t i = 1; i < length; ++i) | ||||
|         { | ||||
|             if (HEDLEY_UNLIKELY(get() != literal_text[i])) | ||||
|             if (NLOHMANN_JSON_HEDLEY_UNLIKELY(get() != literal_text[i])) | ||||
|             { | ||||
|                 error_message = "invalid literal"; | ||||
|                 return token_type::parse_error; | ||||
|  | @ -1257,7 +1257,7 @@ scan_number_done: | |||
|             current = ia->get_character(); | ||||
|         } | ||||
| 
 | ||||
|         if (HEDLEY_LIKELY(current != std::char_traits<char>::eof())) | ||||
|         if (NLOHMANN_JSON_HEDLEY_LIKELY(current != std::char_traits<char>::eof())) | ||||
|         { | ||||
|             token_string.push_back(std::char_traits<char>::to_char_type(current)); | ||||
|         } | ||||
|  | @ -1298,7 +1298,7 @@ scan_number_done: | |||
|             --position.chars_read_current_line; | ||||
|         } | ||||
| 
 | ||||
|         if (HEDLEY_LIKELY(current != std::char_traits<char>::eof())) | ||||
|         if (NLOHMANN_JSON_HEDLEY_LIKELY(current != std::char_traits<char>::eof())) | ||||
|         { | ||||
|             assert(not token_string.empty()); | ||||
|             token_string.pop_back(); | ||||
|  | @ -1377,7 +1377,7 @@ scan_number_done: | |||
|     } | ||||
| 
 | ||||
|     /// return syntax error message
 | ||||
|     HEDLEY_RETURNS_NON_NULL | ||||
|     NLOHMANN_JSON_HEDLEY_RETURNS_NON_NULL | ||||
|     constexpr const char* get_error_message() const noexcept | ||||
|     { | ||||
|         return error_message; | ||||
|  |  | |||
|  | @ -147,7 +147,7 @@ class parser | |||
|     } | ||||
| 
 | ||||
|     template <typename SAX> | ||||
|     HEDLEY_NON_NULL(2) | ||||
|     NLOHMANN_JSON_HEDLEY_NON_NULL(2) | ||||
|     bool sax_parse(SAX* sax, const bool strict = true) | ||||
|     { | ||||
|         (void)detail::is_sax_static_asserts<SAX, BasicJsonType> {}; | ||||
|  | @ -167,7 +167,7 @@ class parser | |||
| 
 | ||||
|   private: | ||||
|     template <typename SAX> | ||||
|     HEDLEY_NON_NULL(2) | ||||
|     NLOHMANN_JSON_HEDLEY_NON_NULL(2) | ||||
|     bool sax_parse_internal(SAX* sax) | ||||
|     { | ||||
|         // stack to remember the hierarchy of structured values we are parsing
 | ||||
|  | @ -185,7 +185,7 @@ class parser | |||
|                 { | ||||
|                     case token_type::begin_object: | ||||
|                     { | ||||
|                         if (HEDLEY_UNLIKELY(not sax->start_object(std::size_t(-1)))) | ||||
|                         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not sax->start_object(std::size_t(-1)))) | ||||
|                         { | ||||
|                             return false; | ||||
|                         } | ||||
|  | @ -193,7 +193,7 @@ class parser | |||
|                         // closing } -> we are done
 | ||||
|                         if (get_token() == token_type::end_object) | ||||
|                         { | ||||
|                             if (HEDLEY_UNLIKELY(not sax->end_object())) | ||||
|                             if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not sax->end_object())) | ||||
|                             { | ||||
|                                 return false; | ||||
|                             } | ||||
|  | @ -201,20 +201,20 @@ class parser | |||
|                         } | ||||
| 
 | ||||
|                         // parse key
 | ||||
|                         if (HEDLEY_UNLIKELY(last_token != token_type::value_string)) | ||||
|                         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(last_token != token_type::value_string)) | ||||
|                         { | ||||
|                             return sax->parse_error(m_lexer.get_position(), | ||||
|                                                     m_lexer.get_token_string(), | ||||
|                                                     parse_error::create(101, m_lexer.get_position(), | ||||
|                                                             exception_message(token_type::value_string, "object key"))); | ||||
|                         } | ||||
|                         if (HEDLEY_UNLIKELY(not sax->key(m_lexer.get_string()))) | ||||
|                         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not sax->key(m_lexer.get_string()))) | ||||
|                         { | ||||
|                             return false; | ||||
|                         } | ||||
| 
 | ||||
|                         // parse separator (:)
 | ||||
|                         if (HEDLEY_UNLIKELY(get_token() != token_type::name_separator)) | ||||
|                         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(get_token() != token_type::name_separator)) | ||||
|                         { | ||||
|                             return sax->parse_error(m_lexer.get_position(), | ||||
|                                                     m_lexer.get_token_string(), | ||||
|  | @ -232,7 +232,7 @@ class parser | |||
| 
 | ||||
|                     case token_type::begin_array: | ||||
|                     { | ||||
|                         if (HEDLEY_UNLIKELY(not sax->start_array(std::size_t(-1)))) | ||||
|                         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not sax->start_array(std::size_t(-1)))) | ||||
|                         { | ||||
|                             return false; | ||||
|                         } | ||||
|  | @ -240,7 +240,7 @@ class parser | |||
|                         // closing ] -> we are done
 | ||||
|                         if (get_token() == token_type::end_array) | ||||
|                         { | ||||
|                             if (HEDLEY_UNLIKELY(not sax->end_array())) | ||||
|                             if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not sax->end_array())) | ||||
|                             { | ||||
|                                 return false; | ||||
|                             } | ||||
|  | @ -258,14 +258,14 @@ class parser | |||
|                     { | ||||
|                         const auto res = m_lexer.get_number_float(); | ||||
| 
 | ||||
|                         if (HEDLEY_UNLIKELY(not std::isfinite(res))) | ||||
|                         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not std::isfinite(res))) | ||||
|                         { | ||||
|                             return sax->parse_error(m_lexer.get_position(), | ||||
|                                                     m_lexer.get_token_string(), | ||||
|                                                     out_of_range::create(406, "number overflow parsing '" + m_lexer.get_token_string() + "'")); | ||||
|                         } | ||||
| 
 | ||||
|                         if (HEDLEY_UNLIKELY(not sax->number_float(res, m_lexer.get_string()))) | ||||
|                         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not sax->number_float(res, m_lexer.get_string()))) | ||||
|                         { | ||||
|                             return false; | ||||
|                         } | ||||
|  | @ -275,7 +275,7 @@ class parser | |||
| 
 | ||||
|                     case token_type::literal_false: | ||||
|                     { | ||||
|                         if (HEDLEY_UNLIKELY(not sax->boolean(false))) | ||||
|                         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not sax->boolean(false))) | ||||
|                         { | ||||
|                             return false; | ||||
|                         } | ||||
|  | @ -284,7 +284,7 @@ class parser | |||
| 
 | ||||
|                     case token_type::literal_null: | ||||
|                     { | ||||
|                         if (HEDLEY_UNLIKELY(not sax->null())) | ||||
|                         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not sax->null())) | ||||
|                         { | ||||
|                             return false; | ||||
|                         } | ||||
|  | @ -293,7 +293,7 @@ class parser | |||
| 
 | ||||
|                     case token_type::literal_true: | ||||
|                     { | ||||
|                         if (HEDLEY_UNLIKELY(not sax->boolean(true))) | ||||
|                         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not sax->boolean(true))) | ||||
|                         { | ||||
|                             return false; | ||||
|                         } | ||||
|  | @ -302,7 +302,7 @@ class parser | |||
| 
 | ||||
|                     case token_type::value_integer: | ||||
|                     { | ||||
|                         if (HEDLEY_UNLIKELY(not sax->number_integer(m_lexer.get_number_integer()))) | ||||
|                         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not sax->number_integer(m_lexer.get_number_integer()))) | ||||
|                         { | ||||
|                             return false; | ||||
|                         } | ||||
|  | @ -311,7 +311,7 @@ class parser | |||
| 
 | ||||
|                     case token_type::value_string: | ||||
|                     { | ||||
|                         if (HEDLEY_UNLIKELY(not sax->string(m_lexer.get_string()))) | ||||
|                         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not sax->string(m_lexer.get_string()))) | ||||
|                         { | ||||
|                             return false; | ||||
|                         } | ||||
|  | @ -320,7 +320,7 @@ class parser | |||
| 
 | ||||
|                     case token_type::value_unsigned: | ||||
|                     { | ||||
|                         if (HEDLEY_UNLIKELY(not sax->number_unsigned(m_lexer.get_number_unsigned()))) | ||||
|                         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not sax->number_unsigned(m_lexer.get_number_unsigned()))) | ||||
|                         { | ||||
|                             return false; | ||||
|                         } | ||||
|  | @ -368,9 +368,9 @@ class parser | |||
|                 } | ||||
| 
 | ||||
|                 // closing ]
 | ||||
|                 if (HEDLEY_LIKELY(last_token == token_type::end_array)) | ||||
|                 if (NLOHMANN_JSON_HEDLEY_LIKELY(last_token == token_type::end_array)) | ||||
|                 { | ||||
|                     if (HEDLEY_UNLIKELY(not sax->end_array())) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not sax->end_array())) | ||||
|                     { | ||||
|                         return false; | ||||
|                     } | ||||
|  | @ -396,7 +396,7 @@ class parser | |||
|                 if (get_token() == token_type::value_separator) | ||||
|                 { | ||||
|                     // parse key
 | ||||
|                     if (HEDLEY_UNLIKELY(get_token() != token_type::value_string)) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(get_token() != token_type::value_string)) | ||||
|                     { | ||||
|                         return sax->parse_error(m_lexer.get_position(), | ||||
|                                                 m_lexer.get_token_string(), | ||||
|  | @ -404,13 +404,13 @@ class parser | |||
|                                                         exception_message(token_type::value_string, "object key"))); | ||||
|                     } | ||||
| 
 | ||||
|                     if (HEDLEY_UNLIKELY(not sax->key(m_lexer.get_string()))) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not sax->key(m_lexer.get_string()))) | ||||
|                     { | ||||
|                         return false; | ||||
|                     } | ||||
| 
 | ||||
|                     // parse separator (:)
 | ||||
|                     if (HEDLEY_UNLIKELY(get_token() != token_type::name_separator)) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(get_token() != token_type::name_separator)) | ||||
|                     { | ||||
|                         return sax->parse_error(m_lexer.get_position(), | ||||
|                                                 m_lexer.get_token_string(), | ||||
|  | @ -424,9 +424,9 @@ class parser | |||
|                 } | ||||
| 
 | ||||
|                 // closing }
 | ||||
|                 if (HEDLEY_LIKELY(last_token == token_type::end_object)) | ||||
|                 if (NLOHMANN_JSON_HEDLEY_LIKELY(last_token == token_type::end_object)) | ||||
|                 { | ||||
|                     if (HEDLEY_UNLIKELY(not sax->end_object())) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not sax->end_object())) | ||||
|                     { | ||||
|                         return false; | ||||
|                     } | ||||
|  |  | |||
|  | @ -255,7 +255,7 @@ class iter_impl | |||
| 
 | ||||
|             default: | ||||
|             { | ||||
|                 if (HEDLEY_LIKELY(m_it.primitive_iterator.is_begin())) | ||||
|                 if (NLOHMANN_JSON_HEDLEY_LIKELY(m_it.primitive_iterator.is_begin())) | ||||
|                 { | ||||
|                     return *m_object; | ||||
|                 } | ||||
|  | @ -289,7 +289,7 @@ class iter_impl | |||
| 
 | ||||
|             default: | ||||
|             { | ||||
|                 if (HEDLEY_LIKELY(m_it.primitive_iterator.is_begin())) | ||||
|                 if (NLOHMANN_JSON_HEDLEY_LIKELY(m_it.primitive_iterator.is_begin())) | ||||
|                 { | ||||
|                     return m_object; | ||||
|                 } | ||||
|  | @ -392,7 +392,7 @@ class iter_impl | |||
|     bool operator==(const iter_impl& other) const | ||||
|     { | ||||
|         // if objects are not the same, the comparison is undefined
 | ||||
|         if (HEDLEY_UNLIKELY(m_object != other.m_object)) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(m_object != other.m_object)) | ||||
|         { | ||||
|             JSON_THROW(invalid_iterator::create(212, "cannot compare iterators of different containers")); | ||||
|         } | ||||
|  | @ -428,7 +428,7 @@ class iter_impl | |||
|     bool operator<(const iter_impl& other) const | ||||
|     { | ||||
|         // if objects are not the same, the comparison is undefined
 | ||||
|         if (HEDLEY_UNLIKELY(m_object != other.m_object)) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(m_object != other.m_object)) | ||||
|         { | ||||
|             JSON_THROW(invalid_iterator::create(212, "cannot compare iterators of different containers")); | ||||
|         } | ||||
|  | @ -588,7 +588,7 @@ class iter_impl | |||
| 
 | ||||
|             default: | ||||
|             { | ||||
|                 if (HEDLEY_LIKELY(m_it.primitive_iterator.get_value() == -n)) | ||||
|                 if (NLOHMANN_JSON_HEDLEY_LIKELY(m_it.primitive_iterator.get_value() == -n)) | ||||
|                 { | ||||
|                     return *m_object; | ||||
|                 } | ||||
|  | @ -606,7 +606,7 @@ class iter_impl | |||
|     { | ||||
|         assert(m_object != nullptr); | ||||
| 
 | ||||
|         if (HEDLEY_LIKELY(m_object->is_object())) | ||||
|         if (NLOHMANN_JSON_HEDLEY_LIKELY(m_object->is_object())) | ||||
|         { | ||||
|             return m_it.object_iterator->first; | ||||
|         } | ||||
|  |  | |||
|  | @ -244,7 +244,7 @@ class json_pointer | |||
|     */ | ||||
|     void pop_back() | ||||
|     { | ||||
|         if (HEDLEY_UNLIKELY(empty())) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(empty())) | ||||
|         { | ||||
|             JSON_THROW(detail::out_of_range::create(405, "JSON pointer has no parent")); | ||||
|         } | ||||
|  | @ -268,7 +268,7 @@ class json_pointer | |||
|     */ | ||||
|     const std::string& back() | ||||
|     { | ||||
|         if (HEDLEY_UNLIKELY(empty())) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(empty())) | ||||
|         { | ||||
|             JSON_THROW(detail::out_of_range::create(405, "JSON pointer has no parent")); | ||||
|         } | ||||
|  | @ -332,7 +332,7 @@ class json_pointer | |||
|         const int res = std::stoi(s, &processed_chars); | ||||
| 
 | ||||
|         // check if the string was completely read
 | ||||
|         if (HEDLEY_UNLIKELY(processed_chars != s.size())) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(processed_chars != s.size())) | ||||
|         { | ||||
|             JSON_THROW(detail::out_of_range::create(404, "unresolved reference token '" + s + "'")); | ||||
|         } | ||||
|  | @ -342,7 +342,7 @@ class json_pointer | |||
| 
 | ||||
|     json_pointer top() const | ||||
|     { | ||||
|         if (HEDLEY_UNLIKELY(empty())) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(empty())) | ||||
|         { | ||||
|             JSON_THROW(detail::out_of_range::create(405, "JSON pointer has no parent")); | ||||
|         } | ||||
|  | @ -474,7 +474,7 @@ class json_pointer | |||
|                 case detail::value_t::array: | ||||
|                 { | ||||
|                     // error condition (cf. RFC 6901, Sect. 4)
 | ||||
|                     if (HEDLEY_UNLIKELY(reference_token.size() > 1 and reference_token[0] == '0')) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(reference_token.size() > 1 and reference_token[0] == '0')) | ||||
|                     { | ||||
|                         JSON_THROW(detail::parse_error::create(106, 0, | ||||
|                                                                "array index '" + reference_token + | ||||
|  | @ -532,7 +532,7 @@ class json_pointer | |||
| 
 | ||||
|                 case detail::value_t::array: | ||||
|                 { | ||||
|                     if (HEDLEY_UNLIKELY(reference_token == "-")) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(reference_token == "-")) | ||||
|                     { | ||||
|                         // "-" always fails the range check
 | ||||
|                         JSON_THROW(detail::out_of_range::create(402, | ||||
|  | @ -541,7 +541,7 @@ class json_pointer | |||
|                     } | ||||
| 
 | ||||
|                     // error condition (cf. RFC 6901, Sect. 4)
 | ||||
|                     if (HEDLEY_UNLIKELY(reference_token.size() > 1 and reference_token[0] == '0')) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(reference_token.size() > 1 and reference_token[0] == '0')) | ||||
|                     { | ||||
|                         JSON_THROW(detail::parse_error::create(106, 0, | ||||
|                                                                "array index '" + reference_token + | ||||
|  | @ -597,7 +597,7 @@ class json_pointer | |||
| 
 | ||||
|                 case detail::value_t::array: | ||||
|                 { | ||||
|                     if (HEDLEY_UNLIKELY(reference_token == "-")) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(reference_token == "-")) | ||||
|                     { | ||||
|                         // "-" cannot be used for const access
 | ||||
|                         JSON_THROW(detail::out_of_range::create(402, | ||||
|  | @ -606,7 +606,7 @@ class json_pointer | |||
|                     } | ||||
| 
 | ||||
|                     // error condition (cf. RFC 6901, Sect. 4)
 | ||||
|                     if (HEDLEY_UNLIKELY(reference_token.size() > 1 and reference_token[0] == '0')) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(reference_token.size() > 1 and reference_token[0] == '0')) | ||||
|                     { | ||||
|                         JSON_THROW(detail::parse_error::create(106, 0, | ||||
|                                                                "array index '" + reference_token + | ||||
|  | @ -656,7 +656,7 @@ class json_pointer | |||
| 
 | ||||
|                 case detail::value_t::array: | ||||
|                 { | ||||
|                     if (HEDLEY_UNLIKELY(reference_token == "-")) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(reference_token == "-")) | ||||
|                     { | ||||
|                         // "-" always fails the range check
 | ||||
|                         JSON_THROW(detail::out_of_range::create(402, | ||||
|  | @ -665,7 +665,7 @@ class json_pointer | |||
|                     } | ||||
| 
 | ||||
|                     // error condition (cf. RFC 6901, Sect. 4)
 | ||||
|                     if (HEDLEY_UNLIKELY(reference_token.size() > 1 and reference_token[0] == '0')) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(reference_token.size() > 1 and reference_token[0] == '0')) | ||||
|                     { | ||||
|                         JSON_THROW(detail::parse_error::create(106, 0, | ||||
|                                                                "array index '" + reference_token + | ||||
|  | @ -712,7 +712,7 @@ class json_pointer | |||
|         } | ||||
| 
 | ||||
|         // check if nonempty reference string begins with slash
 | ||||
|         if (HEDLEY_UNLIKELY(reference_string[0] != '/')) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(reference_string[0] != '/')) | ||||
|         { | ||||
|             JSON_THROW(detail::parse_error::create(107, 1, | ||||
|                                                    "JSON pointer must be empty or begin with '/' - was: '" + | ||||
|  | @ -747,9 +747,9 @@ class json_pointer | |||
|                 assert(reference_token[pos] == '~'); | ||||
| 
 | ||||
|                 // ~ must be followed by 0 or 1
 | ||||
|                 if (HEDLEY_UNLIKELY(pos == reference_token.size() - 1 or | ||||
|                                     (reference_token[pos + 1] != '0' and | ||||
|                                      reference_token[pos + 1] != '1'))) | ||||
|                 if (NLOHMANN_JSON_HEDLEY_UNLIKELY(pos == reference_token.size() - 1 or | ||||
|                                                   (reference_token[pos + 1] != '0' and | ||||
|                                                    reference_token[pos + 1] != '1'))) | ||||
|                 { | ||||
|                     JSON_THROW(detail::parse_error::create(108, 0, "escape character '~' must be followed with '0' or '1'")); | ||||
|                 } | ||||
|  | @ -874,7 +874,7 @@ class json_pointer | |||
|     static BasicJsonType | ||||
|     unflatten(const BasicJsonType& value) | ||||
|     { | ||||
|         if (HEDLEY_UNLIKELY(not value.is_object())) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not value.is_object())) | ||||
|         { | ||||
|             JSON_THROW(detail::type_error::create(314, "only objects can be unflattened")); | ||||
|         } | ||||
|  | @ -884,7 +884,7 @@ class json_pointer | |||
|         // iterate the JSON object values
 | ||||
|         for (const auto& element : *value.m_value.object) | ||||
|         { | ||||
|             if (HEDLEY_UNLIKELY(not element.second.is_primitive())) | ||||
|             if (NLOHMANN_JSON_HEDLEY_UNLIKELY(not element.second.is_primitive())) | ||||
|             { | ||||
|                 JSON_THROW(detail::type_error::create(315, "values in object must be primitive")); | ||||
|             } | ||||
|  |  | |||
|  | @ -17,3 +17,5 @@ | |||
| #undef JSON_HAS_CPP_17 | ||||
| #undef NLOHMANN_BASIC_JSON_TPL_DECLARATION | ||||
| #undef NLOHMANN_BASIC_JSON_TPL | ||||
| 
 | ||||
| #include <nlohmann/thirdparty/hedley/hedley_undef.hpp> | ||||
|  |  | |||
|  | @ -715,7 +715,7 @@ class binary_writer | |||
|     static std::size_t calc_bson_entry_header_size(const string_t& name) | ||||
|     { | ||||
|         const auto it = name.find(static_cast<typename string_t::value_type>(0)); | ||||
|         if (HEDLEY_UNLIKELY(it != BasicJsonType::string_t::npos)) | ||||
|         if (NLOHMANN_JSON_HEDLEY_UNLIKELY(it != BasicJsonType::string_t::npos)) | ||||
|         { | ||||
|             JSON_THROW(out_of_range::create(409, | ||||
|                                             "BSON key cannot contain code point U+0000 (at byte " + std::to_string(it) + ")")); | ||||
|  |  | |||
|  | @ -40,7 +40,7 @@ class output_vector_adapter : public output_adapter_protocol<CharType> | |||
|         v.push_back(c); | ||||
|     } | ||||
| 
 | ||||
|     HEDLEY_NON_NULL(2) | ||||
|     NLOHMANN_JSON_HEDLEY_NON_NULL(2) | ||||
|     void write_characters(const CharType* s, std::size_t length) override | ||||
|     { | ||||
|         std::copy(s, s + length, std::back_inserter(v)); | ||||
|  | @ -64,7 +64,7 @@ class output_stream_adapter : public output_adapter_protocol<CharType> | |||
|         stream.put(c); | ||||
|     } | ||||
| 
 | ||||
|     HEDLEY_NON_NULL(2) | ||||
|     NLOHMANN_JSON_HEDLEY_NON_NULL(2) | ||||
|     void write_characters(const CharType* s, std::size_t length) override | ||||
|     { | ||||
|         stream.write(s, static_cast<std::streamsize>(length)); | ||||
|  | @ -88,7 +88,7 @@ class output_string_adapter : public output_adapter_protocol<CharType> | |||
|         str.push_back(c); | ||||
|     } | ||||
| 
 | ||||
|     HEDLEY_NON_NULL(2) | ||||
|     NLOHMANN_JSON_HEDLEY_NON_NULL(2) | ||||
|     void write_characters(const CharType* s, std::size_t length) override | ||||
|     { | ||||
|         str.append(s, length); | ||||
|  |  | |||
|  | @ -110,7 +110,7 @@ class serializer | |||
| 
 | ||||
|                     // variable to hold indentation for recursive calls
 | ||||
|                     const auto new_indent = current_indent + indent_step; | ||||
|                     if (HEDLEY_UNLIKELY(indent_string.size() < new_indent)) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(indent_string.size() < new_indent)) | ||||
|                     { | ||||
|                         indent_string.resize(indent_string.size() * 2, ' '); | ||||
|                     } | ||||
|  | @ -183,7 +183,7 @@ class serializer | |||
| 
 | ||||
|                     // variable to hold indentation for recursive calls
 | ||||
|                     const auto new_indent = current_indent + indent_step; | ||||
|                     if (HEDLEY_UNLIKELY(indent_string.size() < new_indent)) | ||||
|                     if (NLOHMANN_JSON_HEDLEY_UNLIKELY(indent_string.size() < new_indent)) | ||||
|                     { | ||||
|                         indent_string.resize(indent_string.size() * 2, ' '); | ||||
|                     } | ||||
|  | @ -498,7 +498,7 @@ class serializer | |||
|         } | ||||
| 
 | ||||
|         // we finished processing the string
 | ||||
|         if (HEDLEY_LIKELY(state == UTF8_ACCEPT)) | ||||
|         if (NLOHMANN_JSON_HEDLEY_LIKELY(state == UTF8_ACCEPT)) | ||||
|         { | ||||
|             // write buffer
 | ||||
|             if (bytes > 0) | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue