6 января состоялся выпуск 4.3.0 ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· самых быстрых Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ чтСния ΠΈ записи JSON, написанной Π½Π° языкС C++ (header-only, стандарт C++23) ΠΈ распространяСмой ΠΏΠΎ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΈ MIT.
Π’Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹ CSV ΠΈ BEVE.

Бписок измСнСний:

  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° compile-time опция (ΠΈ Π²Ρ€Π°ΠΏΠΏΠ΅Ρ€) append_arrays, которая добавляСт Π΄Π°Π½Π½Ρ‹Π΅ ΠΊ Ρ‚ΠΈΠΏΠ°ΠΌ, ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΌ std::vector Π±Π΅Π· ΠΈΡ… пСрСзаписи:

std::vector<int> v{}; constexpr glz::opts append_opts{.append_arrays = true}; expect(not glz::read<append_opts>(v, "[1,2,3]")); expect(v == std::vector<int>{1,2,3}); expect(not glz::read<append_opts>(v, "[4,5,6]")); expect(v == std::vector<int>{1,2,3,4,5,6});

  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° динамичСски измСняСмых Ρ‚ΠΈΠΏΠΎΠ² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Eigen.
  • Π”ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° рСфлСксии Π²Π΅ΠΊΡ‚ΠΎΡ€Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² Eigen.
  • Π£Π»ΡƒΡ‡ΡˆΠ΅Π½Π° glz::async_string с большим количСством ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ std::format.
  • Π Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³ записи map.
  • Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ always_null_t Π² Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠΈ Π±ΠΎΠ»Π΅Π΅ быстрая запись всСгда null.
  • Π‘ΠΎΠ»Π΅Π΅ эффСктивныС числовыС ΠΊΠ»ΡŽΡ‡ΠΈ Π² динамичСских map.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: linux.org.ru