NamedTuple< T > Class Template Reference Data Types

#include <datatype.h>

Inheritance diagram for NamedTuple< T >:

Classes

struct   Helper
struct   HelperStorage

Public Types

using  TupleType = Tuple < typename maxon::details::MemberType < T >::type... >
using  TupleTypeWithPtrsForRefs = Tuple < typename maxon::details::SubstituteReferenceByPointer < typename maxon::details::MemberType < T >::type >::type... >
using  Pack = ParameterPack < T... >
using  ContainerType = ContainerDataType < T... >
template<typename OTHER >
using  ContainsAll = typename Pack::template ContainsAll < typename OTHER::Pack >
-  Public Types inherited from ParameterPack< T... >
using  FirstType = void
using  RestPack = ParameterPack <>
using  ContainsAll = maxon::details::ParameterPackContainsAll < ParameterPack , X... >
using  应用 = TEMPLATE< X..., T... >

静态公共成员函数

static const Block < const Member > &  GetMembers ()
static const TupleDataType GetDataType ()
static const ContainerType GetContainerType ()
static Int   FindIndex (const InternedId &name)
static Int   FindOffset (const InternedId &name)

静态公共属性

static const Bool   ALL_NAMED
-  Static Public Attributes inherited from ParameterPack< T... >
static const Int   COUNT

Static Private Member Functions

template<UInt32 I>
static std::enable_if<(I< sizeof...(T)), Int >::type  FindIndexImpl (const Id *name)
template<UInt32 I>
static Int   FindIndexImpl (...)
template<UInt32 I>
static std::enable_if<(I< sizeof...(T)), Int >::type  FindOffsetImpl (const Id *name)
template<UInt32 I>
static Int   FindOffsetImpl (...)

Static Private Attributes

static HelperStorage   _helper

Member Typedef Documentation

◆  TupleType

using TupleType = Tuple <typename maxon::details::MemberType <T>::type...>

◆  TupleTypeWithPtrsForRefs

using TupleTypeWithPtrsForRefs = Tuple <typename maxon::details::SubstituteReferenceByPointer <typename maxon::details::MemberType <T>::type>::type...>

◆  Pack

using Pack = ParameterPack <T...>

◆  ContainerType

using ContainerType = ContainerDataType <T...>

◆  ContainsAll

using ContainsAll = typename Pack::template ContainsAll <typename OTHER::Pack>

成员函数文档编制

◆  GetMembers()

static const Block <const Member >& GetMembers ( )
static

◆  GetDataType()

static const TupleDataType & GetDataType ( )
static

◆  GetContainerType()

static const ContainerType & GetContainerType ( )
static

◆  FindIndex()

static Int FindIndex ( const InternedId name )
static

◆  FindOffset()

static Int FindOffset ( const InternedId name )
static

◆  FindIndexImpl() [1/2]

static std::enable_if<(I < sizeof...(T)), Int >::type FindIndexImpl ( const Id name )
static private

◆  FindIndexImpl() [2/2]

static Int FindIndexImpl (   ... )
static private

◆  FindOffsetImpl() [1/2]

static std::enable_if<(I < sizeof...(T)), Int >::type FindOffsetImpl ( const Id name )
static private

◆  FindOffsetImpl() [2/2]

static Int FindOffsetImpl (   ... )
static private

Member Data Documentation

◆  ALL_NAMED

const Bool ALL_NAMED static