Glaze 7.2.0

Glaze 7.2.0 Glaze 7.2.0

Wydano wersję 7.2.0 wysokowydajnej biblioteki Glaze, przeznaczoną do odczytu i zapisu danych JSON z wygodnymi funkcjonalnościami serializacji i deserializacji danych.

Obsługiwane są również formaty CSV, CBOR, BEVE, MessagePack, TOML, EETF (Erlang External Term Format) (opcjonalnie, potrzebne są biblioteki Erlang do kompilacji), YAML 1.2, Stencil i Mustache. Biblioteka została napisana w C++ (header-only, standard C++23 i wyżej) i jest rozpowszechniana na licencji MIT.

Glaze zapewnia również wsparcie REPE RPC i serwera i klienta HTTP, korzystając z nowoczesnych możliwości C++, w tym automatycznego generowania REST API, wsparcia dla WebSocket oraz szyfrowania SSL/TLS.

Lista zmian:

  • Glaze teraz obsługuje P2996 «Reflection for C++26». Ta obsługa dodała funkcjonalności, które były niedostępne w wcześniejszych implementacjach refleksji na etapie kompilacji:
    • wsparcie dla typów nieagregatowych – klasy z konstruktorami, wirtualnymi funkcjami i dziedziczeniem działają bez problemów;
    • automatyczna serializacja enumeracji – glz::meta nie jest wymagana, enumeracje są automatycznie serializowane do ciągów;
    • nieograniczona liczba członków struktury – bez wcześniejszego ograniczenia do 128 członków;
    • dostęp do prywatnych członków – refleksja wszystkich członków, niezależnie od specyfikatorów dostępu;
    • wykorzystywane są standardowe możliwości std::meta – bez specyficznych dla kompilatora hacków;
    • obsługiwane kompilatory: GCC 16+ (z opcjami -std=c++26 -freflection) oraz Bloomberg clang-p2996. Szczegóły dostępne w dokumentację na temat refleksji C++26.
  • Dodano możliwość konfiguracji rozmiaru bufora w stream_request.
  • Poprawiono błędy analizy YAML.

Źródło: linux.org.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster