|
StormByte C++ Library 1.2.0
StormByte is a comprehensive, cross-platform C++ library aimed at easing system programming, configuration management, logging, and database handling tasks. This library provides a unified API that abstracts away the complexities and inconsistencies of different platforms (Windows, Linux).
|
Private helpers. More...
Functions | |
| template<typename U > requires TriviallyCopyable<U> && (sizeof(U) > 0) | |
| constexpr U | swap_endian (U val) noexcept |
Reverses the object-representation byte order of val. | |
| template<typename VariantT , typename U , std::size_t... I> | |
| constexpr bool | variant_has_type_impl (std::index_sequence< I... > seq) noexcept |
Fold: is cv/ref-stripped U one of VariantT's alternatives? | |
Variables | |
| template<typename T > | |
| constexpr bool | is_variant_v = false |
true when T is exactly std::variant<Ts...> after cv/ref strip. | |
| template<typename VariantT , typename U > | |
| constexpr bool | variant_has_type_v |
| Convenience wrapper around variant_has_type_impl. | |
Private helpers.
Not a supported API.
|
constexprnoexcept |
Reverses the object-representation byte order of val.
| U | Trivially copyable value type. |
| [in] | val | Value whose bytes are reversed. |
val with endianness swapped.std::byteswap; every other trivial type goes through std::bit_cast + reverse so float, enum and small POD structs stay defined.std::endian test.
|
constexprnoexcept |
Fold: is cv/ref-stripped U one of VariantT's alternatives?
| VariantT | A std::variant<…> (already stripped by the caller). |
| U | Candidate alternative. |
| I | Index pack over std::variant_size_v<VariantT>. |
| [in] | seq | Index sequence; unused except to expand I. |
true if U matches any alternative.
|
constexpr |
true when T is exactly std::variant<Ts...> after cv/ref strip.
Specialization for every std::variant alternative list.
| T | Type to test. |
Partial specialization of a variable template — not SFINAE. Needed because there is no standard std::is_variant.
| Ts | Variant alternatives. |
|
constexpr |
Convenience wrapper around variant_has_type_impl.
| VariantT | A std::variant<…>. |
| U | Candidate alternative. |