@@ -272,9 +272,9 @@ class basic_array
272
272
explicit basic_array (const basic_value<string_t >& val);
273
273
explicit basic_array (basic_value<string_t >&& val);
274
274
275
- template <
276
- typename collection_t ,
277
- typename _ = std::enable_if_t <std::is_constructible_v<value_type, typename collection_t ::iterator::value_type>>>
275
+ template <typename collection_t ,
276
+ typename _ = std:: enable_if_t <std::is_constructible_v<
277
+ value_type, typename std::iterator_traits< typename collection_t ::iterator> ::value_type>>>
278
278
basic_array (collection_t arr)
279
279
: _array_data(std::make_move_iterator(arr.begin()), std::make_move_iterator(arr.end()))
280
280
{}
@@ -384,8 +384,8 @@ class basic_object
384
384
basic_object (std::initializer_list<value_type> init_list);
385
385
explicit basic_object (const basic_value<string_t >& val);
386
386
explicit basic_object (basic_value<string_t >&& val);
387
- template <typename map_t ,
388
- typename _ = std::enable_if_t <std::is_constructible_v<value_type, typename map_t ::iterator::value_type>>>
387
+ template <typename map_t , typename _ = std:: enable_if_t <std::is_constructible_v<
388
+ value_type, typename std::iterator_traits< typename map_t ::iterator> ::value_type>>>
389
389
basic_object (map_t map) : _object_data(std::make_move_iterator(map.begin()), std::make_move_iterator(map.end()))
390
390
{}
391
391
@@ -2540,9 +2540,9 @@ namespace _serialization_helper
2540
2540
template <typename T, typename = void >
2541
2541
constexpr bool is_container = false ;
2542
2542
template <typename T>
2543
- constexpr bool
2544
- is_container<T, void_t < typename T::value_type, typename T::iterator, typename T::iterator::value_type>> =
2545
- std::is_same_v<typename T::value_type, typename T::iterator::value_type>;
2543
+ constexpr bool is_container<T, void_t < typename T::value_type, typename T::iterator,
2544
+ typename std::iterator_traits< typename T::iterator> ::value_type>> =
2545
+ std::is_same_v<typename T::value_type, typename std::iterator_traits< typename T::iterator> ::value_type>;
2546
2546
2547
2547
template <typename T, typename = void >
2548
2548
constexpr bool is_map = false ;
0 commit comments