Defect fixes:
-
Fixed issue with
jmespath::join function
through PR #546 -
Fixed issue with the path for cmake config files through PR #547
-
Related to #539, made the basic_json constructor
basic_json(const Allocator&)
consistent withbasic_json(json_object_arg_t, const Allocator& alloc = Allocator())
. -
Related to #539,
basic_json
copy construction now applies allocator traitsselect_on_container_copy_construction
to the allocator obtained fromother
. For pmr allocators, this gives a default constructed pmr allocator rather
than a copy of the allocator inother
.
Enhancements:
-
Improved the implementation of
basic_json
swap. Previously in some cases it would allocate. -
Improved the implementation of
basic_json
copy assignment. Reduced allocations when assigning from array to array and object to
object. -
Documented the rules for
basic_json
allocators here,
and added numerous tests for conformance to the rules. -
Added missing
basic_json
constructor
basic_json(json_array_arg_t,
std::size_t count, const basic_json& value, semantic_tag tag = semantic_tag::none,
const Allocator& alloc = Allocator());