Skip to content

1.3.0

Compare
Choose a tag to compare
@stephenberry stephenberry released this 02 Jul 13:55
· 1634 commits to main since this release

BREAKING v1.3.0 CHANGE: std::pair is now handled as a JSON object ({"first":second}}. If you require a JSON array of two items, use std::array or std::tuple.

Removed MSVC 2019 support (the compiler has too many limitations for ranges and compile time logic)

  • Added numeric enum support (default behavior)
  • std::string reading with CSV format
  • Added separate concepts for readable_map_t and writable_map_t (thanks @justend29)
  • Views and ranges of std::pair can now be serialized as objects: (thanks @justend29)
auto num_view =
std::views::iota(-2, 3) | std::views::transform([](const auto i) { return std::pair(i, i * i); });
expect(glz::write_json(num_view) == glz::sv{R"({"-2":4,"-1":1,"0":0,"1":1,"2":4})"});
  • Added glz::invoke and glz::invoke_update, which allow invoking functions when reading JSON input
  • Added GLZ_QUOTED_X helper macro (thanks @pwqbot)