Sen API
Sen Libraries
Loading...
Searching...
No Matches
sen::StructTraitsBase Struct Reference

Base class for struct traits. More...

#include <struct_traits.h>

Static Public Attributes

static constexpr bool available = true

Static Protected Member Functions

static void expectAtLeastOneField (const char *name, const Span< uint16_t > &fields)
static void throwEmptyStructError (const char *name)
static void throwNonNativeField (const char *structName, const char *fieldName)
static void throwInvalidFieldIndex (const char *structName, uint16_t index)
static const VarMapgetMap (const Var &var, std::string_view structType)
template<typename T>
static void extractField (const VarMap &map, T &val, std::string_view fieldName, std::string_view fieldType, std::string_view structType)

Detailed Description

Base class for struct traits.

Member Function Documentation

◆ expectAtLeastOneField()

void sen::StructTraitsBase::expectAtLeastOneField ( const char * name,
const Span< uint16_t > & fields )
inlinestaticprotected

◆ throwEmptyStructError()

void sen::StructTraitsBase::throwEmptyStructError ( const char * name)
inlinestaticprotected

◆ throwNonNativeField()

void sen::StructTraitsBase::throwNonNativeField ( const char * structName,
const char * fieldName )
inlinestaticprotected

◆ throwInvalidFieldIndex()

void sen::StructTraitsBase::throwInvalidFieldIndex ( const char * structName,
uint16_t index )
inlinestaticprotected

◆ getMap()

const VarMap & sen::StructTraitsBase::getMap ( const Var & var,
std::string_view structType )
inlinestaticnodiscardprotected

◆ extractField()

template<typename T>
void sen::StructTraitsBase::extractField ( const VarMap & map,
T & val,
std::string_view fieldName,
std::string_view fieldType,
std::string_view structType )
inlinestaticprotected

Member Data Documentation

◆ available

bool sen::StructTraitsBase::available = true
staticconstexpr

The documentation for this struct was generated from the following file: