Megjelent a 7.2.0 nagy teljesítményű könyvtár Glaze, amely JSON olvasására és írására kényelmes lehetőségeket biztosít sorozatgyártásához és desorozatgyártásához adatok.
Támogatott formátumok: CSV, CBOR, BEVE, MessagePack, TOML, EETF (Erlang External Term Format) (opcionális, a fordításhoz Erlang könyvtárak szükségesek), YAML 1.2, Stencil és Mustache. A könyvtár C++ nyelven íródott (header-only, C++23 és felette) és MIT licenc alatt terjesztik.
A Glaze szintén támogatja REPE RPC és HTTP szerver és kliens, modern C++ lehetőségeket kihasználva, beleértve a REST API automatikus generálását, WebSocket támogatást és SSL/TLS titkosítást.
Változások listája:
- A Glaze most már támogatja P2996 «Reflection for C++26». Ez a támogatás olyan funkciókat adott hozzá, amelyek korábban nem álltak rendelkezésre a fordítási időszakra vonatkozó reflexióban:
- nem aggregáló típusok támogatása – az osztályok konstruktorokkal, virtuális függvényekkel és örökléssel simán működnek;
- automatikus enumerálás sorozatgyártása – a glz::meta nem szükséges, az enumerálások automatikusan sztringként sorozatgyárthatók;
- korlátlan számú struktúra tag – a korábbi 128 tagra vonatkozó korlátozás nélkül;
- hozzáférés a privát tagokhoz – reflexió minden tagnál, függetlenül a hozzáférési specifikátoroktól;
- a standard std::meta lehetőségeket használja – nincs fordító-specifikus trükk;
- támogatott fordítók: GCC 16+ (a -std=c++26 -freflection kapcsolókkal) és Bloomberg clang-p2996. Bővebben lásd: a dokumentációval a C++26 reflexióval kapcsolatban.
- Hozzáadva a stream_request buffer méretének konfigurálásának lehetősége.
- Javították a YAML elemzésének hibáit.
Forrás: linux.org.ru
