@@ -61,8 +61,8 @@ namespace jsoncons {
61
61
public:
62
62
using key_type = KeyT;
63
63
using value_type = ValueT;
64
- using string_view_type = typename value_type::string_view_type;
65
64
using allocator_type = typename ValueT::allocator_type;
65
+ using string_view_type = typename value_type::string_view_type;
66
66
private:
67
67
68
68
key_type key_;
@@ -95,38 +95,15 @@ namespace jsoncons {
95
95
{
96
96
}
97
97
98
- template <typename ... Args>
99
- key_value (const key_type& name, Args&& ... args, const allocator_type& alloc)
100
- : key_(name, alloc), value_(std::forward<Args>(args)..., alloc)
101
- {
102
- }
103
-
104
- template <typename ... Args>
105
- key_value (key_type&& name, Args&& ... args, const allocator_type& alloc) noexcept
106
- : key_(std::move(name),alloc), value_(std::forward<Args>(args)...,alloc)
107
- {
108
- }
109
-
110
98
key_value (const key_value& member)
111
99
: key_(member.key_), value_(member.value_)
112
100
{
113
101
}
114
102
115
- key_value (const key_value& member, const allocator_type& alloc)
116
- : key_(member.key_, alloc), value_(member.value_, alloc)
117
- {
118
- }
119
-
120
103
key_value (key_value&& member) noexcept
121
104
: key_(std::move(member.key_)), value_(std::move(member.value_))
122
105
{
123
106
}
124
-
125
- key_value (key_value&& member, const allocator_type& alloc) noexcept
126
- : key_(std::move(member.key_), alloc), value_(std::move(member.value_), alloc)
127
- {
128
- }
129
-
130
107
template <typename ... U1, typename ... U2>
131
108
JSONCONS_CONSTEXPR key_value (std::piecewise_construct_t /* unused*/ , std::tuple<U1...> a,
132
109
std::tuple<U2...>
@@ -339,23 +316,12 @@ namespace jsoncons {
339
316
{
340
317
}
341
318
342
- sorted_json_object (const sorted_json_object& val, const allocator_type& alloc)
343
- : allocator_holder<allocator_type>(alloc),
344
- members_ (val.members_,key_value_allocator_type(alloc))
345
- {
346
- }
347
-
348
319
sorted_json_object (sorted_json_object&& val)
349
320
: allocator_holder<allocator_type>(val.get_allocator()),
350
321
members_ (std::move(val.members_))
351
322
{
352
323
}
353
324
354
- sorted_json_object (sorted_json_object&& val,const allocator_type& alloc)
355
- : allocator_holder<allocator_type>(alloc), members_(std::move(val.members_),key_value_allocator_type(alloc))
356
- {
357
- }
358
-
359
325
sorted_json_object& operator =(const sorted_json_object& val)
360
326
{
361
327
allocator_holder<allocator_type>::operator =(val.get_allocator ());
@@ -369,6 +335,17 @@ namespace jsoncons {
369
335
return *this ;
370
336
}
371
337
338
+ sorted_json_object (const sorted_json_object& val, const allocator_type& alloc)
339
+ : allocator_holder<allocator_type>(alloc),
340
+ members_ (val.members_,key_value_allocator_type(alloc))
341
+ {
342
+ }
343
+
344
+ sorted_json_object (sorted_json_object&& val,const allocator_type& alloc)
345
+ : allocator_holder<allocator_type>(alloc), members_(std::move(val.members_),key_value_allocator_type(alloc))
346
+ {
347
+ }
348
+
372
349
template <class InputIt >
373
350
sorted_json_object (InputIt first, InputIt last)
374
351
{
@@ -690,7 +667,8 @@ namespace jsoncons {
690
667
}
691
668
else
692
669
{
693
- it = members_.emplace (it, key_type (name.begin (),name.end ()),
670
+ it = members_.emplace (it,
671
+ key_type (name.begin (),name.end ()),
694
672
std::forward<Args>(args)...);
695
673
inserted = true ;
696
674
}
@@ -1094,13 +1072,6 @@ namespace jsoncons {
1094
1072
{
1095
1073
}
1096
1074
1097
- order_preserving_json_object (order_preserving_json_object&& val,const allocator_type& alloc)
1098
- : allocator_holder<allocator_type>(alloc),
1099
- members_ (std::move(val.members_),key_value_allocator_type(alloc)),
1100
- index_ (std::move(val.index_),index_allocator_type(alloc))
1101
- {
1102
- }
1103
-
1104
1075
order_preserving_json_object (order_preserving_json_object&& val)
1105
1076
: allocator_holder<allocator_type>(val.get_allocator()),
1106
1077
members_ (std::move(val.members_)),
@@ -1115,6 +1086,13 @@ namespace jsoncons {
1115
1086
{
1116
1087
}
1117
1088
1089
+ order_preserving_json_object (order_preserving_json_object&& val,const allocator_type& alloc)
1090
+ : allocator_holder<allocator_type>(alloc),
1091
+ members_ (std::move(val.members_),key_value_allocator_type(alloc)),
1092
+ index_ (std::move(val.index_),index_allocator_type(alloc))
1093
+ {
1094
+ }
1095
+
1118
1096
template <class InputIt >
1119
1097
order_preserving_json_object (InputIt first, InputIt last)
1120
1098
{
0 commit comments