sbepp
Loading...
Searching...
No Matches
sbepp::type_traits< T > Class Template Reference

Provides various traits and attributes of a <type> element. More...

Public Types

using primitive_type = PrimitiveType
 Underlying type.
 
using value_type = ValueType
 Representation type.
 
template<typename Byte >
using value_type = ArrayType<Byte>
 Representation type for non-constant arrays.
 

Static Public Member Functions

static constexpr const char * name () noexcept
 Returns name attribute.
 
static constexpr const char * description () noexcept
 Returns description attribute.
 
static constexpr field_presence presence () noexcept
 Returns presence.
 
static constexpr primitive_type min_value () noexcept
 Returns minValue. Available only if length() == 1 and presence() != field_presence::constant
 
static constexpr primitive_type max_value () noexcept
 Returns maxValue. Available only if length() == 1 and presence() != field_presence::constant
 
static constexpr primitive_type null_value () noexcept
 Returns nullValue. Available only if length() == 1 and presence() == field_presence::optional
 
static constexpr length_t length () noexcept
 Returns length attribute.
 
static constexpr offset_t offset () noexcept
 Returns type offset. Available only if offset is static, i.e. not available for public types whose offset is different on each usage.
 
static constexpr const char * semantic_type () noexcept
 Returns semanticType attribute.
 
static constexpr version_t since_version () noexcept
 Returns sinceVersion attribute.
 
static constexpr version_t deprecated () noexcept
 Returns deprecated attribute. Available only if provided in schema.
 
static constexpr const char * character_encoding () noexcept
 Returns characterEncoding attribute.
 

Detailed Description

template<typename T>
class sbepp::type_traits< T >

Provides various traits and attributes of a <type> element.

For example: sbepp::type_traits<some_schema::schema::types::some_type>::name();

Template Parameters
Ttype tag

Member Typedef Documentation

◆ value_type

template<typename T >
template<typename Byte >
using sbepp::type_traits< T >::value_type = ArrayType<Byte>

Representation type for non-constant arrays.

Template Parameters
Bytebyte type

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