![]() |
Thoth
A functional, expressive, asynchronous C++26 webdev library
|
Namespaces | |
| namespace | Details |
Classes | |
| struct | Json |
| struct | JsonObject |
| struct | StringRef |
Typedefs | |
| using | Null = std::monostate |
| using | String = Dsa::Cow< StringRef, std::string > |
| using | Number = long double |
| using | Bool = bool |
| using | Object = std::unique_ptr< JsonObject > |
| using | Array = std::vector< Json > |
| using | RefValWrapper = Json * |
| using | CRefValWrapper = const Json * |
| using | OptRefValWrapper = std::optional< RefValWrapper > |
| using | OptCRefValWrapper = std::optional< CRefValWrapper > |
| using | ExpRefValWrapper = std::expected< RefValWrapper, Http::RequestError > |
| using | ExpCRefValWrapper = std::expected< CRefValWrapper, Http::RequestError > |
| using | ValWrapper = Json |
| using | CValWrapper = const Json |
| using | OptValWrapper = std::optional< ValWrapper > |
| using | OptCValWrapper = std::optional< CValWrapper > |
| using | ExpValWrapper = std::expected< ValWrapper, Http::RequestError > |
| using | ExpCValWrapper = std::expected< CValWrapper, Http::RequestError > |
| using | JsonObjKey = std::string |
| using | JsonObjKeyRef = std::string_view |
| using | Key = std::variant< int, JsonObjKey > |
| using | Keys = std::span< const Key > |
Functions | |
| template<class ... T> requires ((std::unsigned_integral<T> || std::convertible_to<T, std::string_view>) &&...) | |
| auto | MakeKeys (const T &... keys) |
| template<class ... T> requires (std::constructible_from<Json::Value, T>, ...) | |
| Array | MakeArray (T &&... ts) |
| template<class... P> requires (std::constructible_from<Json, typename P::second_type> && ...) | |
| JsonObject | MakeObject (P &&... ts) |
| using Thoth::NJson::Array = typedef std::vector<Json> |
| using Thoth::NJson::Bool = typedef bool |
| using Thoth::NJson::CRefValWrapper = typedef const Json* |
| using Thoth::NJson::CValWrapper = typedef const Json |
| using Thoth::NJson::ExpCRefValWrapper = typedef std::expected<CRefValWrapper, Http::RequestError> |
| using Thoth::NJson::ExpCValWrapper = typedef std::expected<CValWrapper, Http::RequestError> |
| using Thoth::NJson::ExpRefValWrapper = typedef std::expected<RefValWrapper, Http::RequestError> |
| using Thoth::NJson::ExpValWrapper = typedef std::expected<ValWrapper, Http::RequestError> |
| typedef std::string Thoth::NJson::JsonObjKey |
| typedef std::string_view Thoth::NJson::JsonObjKeyRef |
| using Thoth::NJson::Key = typedef std::variant<int, JsonObjKey> |
| using Thoth::NJson::Keys = typedef std::span<const Key> |
| using Thoth::NJson::Null = typedef std::monostate |
| using Thoth::NJson::Number = typedef long double |
| using Thoth::NJson::Object = typedef std::unique_ptr<JsonObject> |
| using Thoth::NJson::OptCRefValWrapper = typedef std::optional<CRefValWrapper> |
| using Thoth::NJson::OptCValWrapper = typedef std::optional<CValWrapper> |
| using Thoth::NJson::OptRefValWrapper = typedef std::optional<RefValWrapper> |
| using Thoth::NJson::OptValWrapper = typedef std::optional<ValWrapper> |
| using Thoth::NJson::RefValWrapper = typedef Json* |
| using Thoth::NJson::String = typedef Dsa::Cow<StringRef, std::string> |
| using Thoth::NJson::ValWrapper = typedef Json |
| Array Thoth::NJson::MakeArray | ( | T &&... | ts | ) |
| auto Thoth::NJson::MakeKeys | ( | const T &... | keys | ) |
| JsonObject Thoth::NJson::MakeObject | ( | P &&... | ts | ) |