8#ifndef SEN_CORE_META_SEQUENCE_TRAITS_H
9#define SEN_CORE_META_SEQUENCE_TRAITS_H
31 static void valueToVariant(
const T& val,
Var& var) { impl::sequenceToVariant<T>(val, var); }
32 static void variantToValue(
const Var& var, T& val) { impl::variantToSequence<T>(var, val); }
33 [[nodiscard]]
static uint32_t
serializedSize(
const T& val)
noexcept {
return impl::sequenceSerializedSize<T>(val); }
46 [[nodiscard]]
static uint32_t
serializedSize(
const T& val)
noexcept {
return impl::arraySerializedSize<T>(val); }
InputStreamTemplate< LittleEndian > InputStream
Definition input_stream.h:84
OutputStreamTemplate< LittleEndian > OutputStream
Definition output_stream.h:64
Base class for sequence traits.
Definition sequence_traits.h:39
static void variantToValue(const Var &var, T &val)
Definition sequence_traits.h:45
static uint32_t serializedSize(const T &val) noexcept
Definition sequence_traits.h:46
static void write(OutputStream &out, const T &val)
Definition sequence_traits.h:42
static void valueToVariant(const T &val, Var &var)
Definition sequence_traits.h:44
static void read(InputStream &in, T &val)
Definition sequence_traits.h:43
static constexpr bool available
Definition sequence_traits.h:40
Base class for sequence traits.
Definition sequence_traits.h:26
static void valueToVariant(const T &val, Var &var)
Definition sequence_traits.h:31
static constexpr bool available
Definition sequence_traits.h:27
static void variantToValue(const Var &var, T &val)
Definition sequence_traits.h:32
static void read(InputStream &in, T &val)
Definition sequence_traits.h:30
static uint32_t serializedSize(const T &val) noexcept
Definition sequence_traits.h:33
static void write(OutputStream &out, const T &val)
Definition sequence_traits.h:29
Can hold any supported value type. Wraps std::variant to allow recursion and implements some helpers.
Definition var.h:119