Il 6 gennaio è stata rilasciata la versione 4.3.0 di una delle librerie più veloci per la lettura e la scrittura di JSON, scritta in C++ (header-only, standard C++23) e distribuita con licenza MIT.
Sono supportati anche i formati CSV e BEVE.
Elenco delle modifiche:
- È stata aggiunta l'opzione compile-time (e il wrapper) append_arrays, che consente di aggiungere dati a tipi come std::vector senza sovrascriverli:
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});
- È stata aggiunta la supporto per i tipi dinamicamente modificabili della libreria Eigen.
- È stata aggiunta la supporto per la riflessione dei tipi vettoriali di Eigen.
- È stata migliorata glz::async_string con un numero maggiore di metodi e supporto per std::format.
- Refactoring della scrittura delle mappe.
- Correzione di always_null_t nella gestione degli oggetti e scrittura più veloce per sempre null.
- Chiavi numeriche più efficienti nelle mappe dinamiche.
Fonte: linux.org.ru
