Dmitry Arkhipov
Dmitry Arkhipov
The branch ``` if(sp.is_not_shared_and_deallocate_is_trivial()) return; ``` is never tested.
See https://app.codecov.io/gh/boostorg/json/compare/551/tree/include/boost/json/impl/serializer.ipp#D1L220 https://app.codecov.io/gh/boostorg/json/compare/551/tree/include/boost/json/impl/serializer.ipp#D1L339 The state is either untested, because the condition that leads to it is very rare, in which case it still should be recreated in tests. Or this...
See https://github.com/boostorg/json/issues/528#issuecomment-797602318
https://lemire.me/blog/2021/01/29/number-parsing-at-a-gigabyte-per-second/
Changelog: Bugfix: Fixes #331 - [x] Refer to the issue that supports this Pull Request. - [x] I've read the [Contributing guide](https://github.com/conan-io/conan-package-tools/blob/develop/.github/CONTRIBUTING.md). - [x] I've followed the [PEP8](https://www.python.org/dev/peps/pep-0008) style guides...
Fix #736 Fix #667
The main problem with `detail::value_type` is that it does not use `iterator_traits::value_type`. This is not an issue with most iterators, but is definitely an issue with proxy iterators (e.g. `std::vector::iterator`)....
A `tag_invoke` overload should be enough, but alternatively a whole category of proxy types can be created with opt-in trait `is_proxy_type`.
`as_string` et al. should have rvalue-ref qualified overload.