Zserio C++ runtime library  1.0.0
Built for Zserio 2.13.0
zserio::TemplatableTypeInfoBase< ALLOC > Class Template Referenceabstract

#include <TypeInfo.h>

Inheritance diagram for zserio::TemplatableTypeInfoBase< ALLOC >:
Collaboration diagram for zserio::TemplatableTypeInfoBase< ALLOC >:

Public Member Functions

 TemplatableTypeInfoBase (StringView schemaName, SchemaType schemaType, CppType cppType, StringView templateName, Span< const BasicTemplateArgumentInfo< ALLOC >> templateArguments)
 
 ~TemplatableTypeInfoBase () override=0
 
 TemplatableTypeInfoBase (const TemplatableTypeInfoBase &)=default
 
TemplatableTypeInfoBaseoperator= (const TemplatableTypeInfoBase &)=default
 
 TemplatableTypeInfoBase (TemplatableTypeInfoBase &&)=default
 
TemplatableTypeInfoBaseoperator= (TemplatableTypeInfoBase &&)=default
 
StringView getTemplateName () const override
 
Span< const BasicTemplateArgumentInfo< ALLOC > > getTemplateArguments () const override
 
- Public Member Functions inherited from zserio::TypeInfoBase< ALLOC >
 TypeInfoBase (StringView schemaName, SchemaType schemaType, CppType cppType)
 
 ~TypeInfoBase () override=0
 
StringView getSchemaName () const override
 
SchemaType getSchemaType () const override
 
CppType getCppType () const override
 
uint8_t getBitSize () const override
 
Span< const BasicFieldInfo< ALLOC > > getFields () const override
 
Span< const BasicParameterInfo< ALLOC > > getParameters () const override
 
Span< const BasicFunctionInfo< ALLOC > > getFunctions () const override
 
StringView getSelector () const override
 
Span< const BasicCaseInfo< ALLOC > > getCases () const override
 
const IBasicTypeInfo< ALLOC > & getUnderlyingType () const override
 
Span< const StringViewgetUnderlyingTypeArguments () const override
 
Span< const ItemInfogetEnumItems () const override
 
Span< const ItemInfogetBitmaskValues () const override
 
Span< const BasicColumnInfo< ALLOC > > getColumns () const override
 
StringView getSqlConstraint () const override
 
StringView getVirtualTableUsing () const override
 
bool isWithoutRowId () const override
 
Span< const BasicTableInfo< ALLOC > > getTables () const override
 
Span< const BasicMessageInfo< ALLOC > > getMessages () const override
 
Span< const BasicMethodInfo< ALLOC > > getMethods () const override
 
IBasicReflectablePtr< ALLOC > createInstance (const ALLOC &allocator) const override
 
IBasicReflectablePtr< ALLOC > createInstance () const override
 
 TypeInfoBase (const TypeInfoBase &)=delete
 
TypeInfoBaseoperator= (const TypeInfoBase &)=delete
 
 TypeInfoBase (const TypeInfoBase &&)=delete
 
TypeInfoBaseoperator= (const TypeInfoBase &&)=delete
 
- Public Member Functions inherited from zserio::IBasicTypeInfo< ALLOC >
virtual ~IBasicTypeInfo ()=default
 

Detailed Description

template<typename ALLOC>
class zserio::TemplatableTypeInfoBase< ALLOC >

Type information abstract base class for templatable types.

Definition at line 442 of file TypeInfo.h.

Constructor & Destructor Documentation

template<typename ALLOC >
zserio::TemplatableTypeInfoBase< ALLOC >::TemplatableTypeInfoBase ( StringView  schemaName,
SchemaType  schemaType,
CppType  cppType,
StringView  templateName,
Span< const BasicTemplateArgumentInfo< ALLOC >>  templateArguments 
)

Constructor.

Parameters
schemaNameThe schema name to be stored in type information.
schemaTypeThe schema type to be stored in type information.
cppTypeThe C++ type to be stored in type information.
templateNameThe full schema template name.
templateArgumentsThe sequence of type informations for template arguments.

Definition at line 1558 of file TypeInfo.h.

template<typename ALLOC >
zserio::TemplatableTypeInfoBase< ALLOC >::~TemplatableTypeInfoBase ( )
overridepure virtualdefault
template<typename ALLOC >
zserio::TemplatableTypeInfoBase< ALLOC >::TemplatableTypeInfoBase ( const TemplatableTypeInfoBase< ALLOC > &  )
default
template<typename ALLOC >
zserio::TemplatableTypeInfoBase< ALLOC >::TemplatableTypeInfoBase ( TemplatableTypeInfoBase< ALLOC > &&  )
default

Member Function Documentation

template<typename ALLOC >
Span< const BasicTemplateArgumentInfo< ALLOC > > zserio::TemplatableTypeInfoBase< ALLOC >::getTemplateArguments ( ) const
overridevirtual

Gets the type information for template arguments.

Returns
Sequence of type informations for template arguments.
Exceptions
CppRuntimeExceptionIf the zserio type is not templatable.

Reimplemented from zserio::TypeInfoBase< ALLOC >.

Definition at line 1575 of file TypeInfo.h.

template<typename ALLOC >
StringView zserio::TemplatableTypeInfoBase< ALLOC >::getTemplateName ( ) const
overridevirtual

Gets the full schema template name.

Returns
The full schema template name.
Exceptions
CppRuntimeExceptionIf the zserio type is not templatable.

Reimplemented from zserio::TypeInfoBase< ALLOC >.

Definition at line 1569 of file TypeInfo.h.

template<typename ALLOC >
TemplatableTypeInfoBase& zserio::TemplatableTypeInfoBase< ALLOC >::operator= ( const TemplatableTypeInfoBase< ALLOC > &  )
default
template<typename ALLOC >
TemplatableTypeInfoBase& zserio::TemplatableTypeInfoBase< ALLOC >::operator= ( TemplatableTypeInfoBase< ALLOC > &&  )
default

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