На 6 януари беше пусната версия 4.3.0 на една от най-бързите библиотеки за четене и запис на JSON, написана на C++ (header-only, стандарт C++23) и разпространявана под MIT лиценз.
Също така се поддържат формати CSV и BEVE.
Списък с промени:
- Добавена е опцията за компилиране (и рапър) append_arrays, която добавя данни към типове, подобни на std::vector, без да ги презаписва:
std::vector v{}; constexpr glz::opts append_opts{.append_arrays = true}; expect(not glz::read(v, "[1,2,3]")); expect(v == std::vector{1,2,3}); expect(not glz::read(v, "[4,5,6]")); expect(v == std::vector{1,2,3,4,5,6});
- Добавена е поддръжка на динамично променящи се типове на библиотеката Eigen.
- Добавена е поддръжка на рефлексия за векторни типове в Eigen.
- Усъвършенстван е glz::async_string с повече методи и поддръжка на std::format.
- Рефакторинг на записа на map.
- Корекция на always_null_t при работа с обекти и по-бърз запис на винаги null.
- По-ефективни числови ключове в динамичните map.
Източник: linux.org.ru
