Wydanie 7.2.0 miało miejsce wysoka wydajność Biblioteka Glazura, zaprojektowany do odczytu i zapisu JSON z wygodnymi możliwościami serializacja i deserializacja dane.
Obsługiwane są również formaty CSV, CBOR, BEWA, Pakiet wiadomości, TOML, EETF (Erlang External Term Format) (opcjonalnie, wymaga bibliotek Erlang do kompilacji), YAML 1.2, Stencil i Mustache. Biblioteka jest napisana w C++ (tylko nagłówek, standard C++23 i nowsze) i jest dystrybuowana na licencji MIT.
Glaze zapewnia również wsparcie POWTÓRZ RPC и Serwer i klient HTTP, wykorzystując nowoczesne funkcje C++, w tym automatyczne generowanie interfejsu REST API, obsługę WebSocket i szyfrowanie SSL/TLS.
Lista zmian:
- Glaze teraz obsługuje P2996 „Refleksja dla C++26”To wsparcie dodało możliwości, które nie były dostępne w poprzednich implementacjach refleksji w czasie kompilacji:
- obsługa typów nieagregacyjnych — klasy z konstruktorami, funkcjami wirtualnymi i dziedziczeniem po prostu działają;
- Automatyczna serializacja wyliczeń – glz::meta nie jest wymagane, wyliczenia są automatycznie serializowane do ciągów znaków;
- nieograniczona liczba członków struktury – bez dotychczasowego ograniczenia do 128 członków;
- dostęp do członków prywatnych - odzwierciedlenie wszystkich członków, niezależnie od specyfikatorów dostępu;
- wykorzystuje standardowe możliwości std::meta – bez obejść specyficznych dla kompilatora;
- obsługiwane kompilatory: GCC 16+ (z opcjami -std=c++26 -freflection) i Bloomberg clang-p2996Więcej szczegółów znajdziesz tutaj . dokumentacja na temat refleksji nad C++26.
- Dodano możliwość konfiguracji rozmiaru bufora w stream_request.
- Naprawiono błędy analizy YAML.
Źródło: linux.org.ru
