Zserio C++ runtime library
1.0.0
Built for Zserio 2.13.0
|
#include <TypeInfo.h>
Public Member Functions | |
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 StringView > | getUnderlyingTypeArguments () const override |
Span< const ItemInfo > | getEnumItems () const override |
Span< const ItemInfo > | getBitmaskValues () 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 |
StringView | getTemplateName () const override |
Span< const BasicTemplateArgumentInfo< ALLOC > > | getTemplateArguments () 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 | |
TypeInfoBase & | operator= (const TypeInfoBase &)=delete |
TypeInfoBase (const TypeInfoBase &&)=delete | |
TypeInfoBase & | operator= (const TypeInfoBase &&)=delete |
![]() | |
virtual | ~IBasicTypeInfo ()=default |
Type information abstract base class.
This base class implements fully the methods getSchemaName(), getSchemaName() and getCppType(). All other interface methods just throw an exception.
Definition at line 23 of file TypeInfo.h.
zserio::TypeInfoBase< ALLOC >::TypeInfoBase | ( | StringView | schemaName, |
SchemaType | schemaType, | ||
CppType | cppType | ||
) |
Constructor.
schemaName | The schema name to be stored in type information. |
schemaType | The schema type to be stored in type information. |
cppType | The C++ type to be stored in type information. |
Definition at line 853 of file TypeInfo.h.
|
delete |
Copying and moving is disallowed!
|
delete |
Copying and moving is disallowed!
|
overridepure virtualdefault |
|
overridevirtual |
Creates new instance of the zserio compound type.
allocator | Allocator to use for allocation of new instance. |
CppRuntimeException | If the zserio type is not compound type. |
Implements zserio::IBasicTypeInfo< ALLOC >.
Reimplemented in zserio::CompoundTypeInfoBase< ALLOC >.
Definition at line 993 of file TypeInfo.h.
|
overridevirtual |
Creates new instance of the zserio compound type.
CppRuntimeException | If the zserio type is not compound type. |
Implements zserio::IBasicTypeInfo< ALLOC >.
Definition at line 999 of file TypeInfo.h.
|
overridevirtual |
Gets the type information for bitmask type values.
CppRuntimeException | If the zserio type is not bitmask type. |
Implements zserio::IBasicTypeInfo< ALLOC >.
Reimplemented in zserio::BitmaskTypeInfo< ALLOC >.
Definition at line 933 of file TypeInfo.h.
|
overridevirtual |
Gets the bit size of the fixed size integral schema type.
CppRuntimeException | If the zserio type is not fixed size integral (e.g. varint). |
Implements zserio::IBasicTypeInfo< ALLOC >.
Reimplemented in zserio::FixedSizeBuiltinTypeInfo< ALLOC >.
Definition at line 879 of file TypeInfo.h.
|
overridevirtual |
Gets the type information for choice type cases.
CppRuntimeException | If the zserio type is not choice type. |
Implements zserio::IBasicTypeInfo< ALLOC >.
Reimplemented in zserio::ChoiceTypeInfo< ALLOC >.
Definition at line 909 of file TypeInfo.h.
|
overridevirtual |
Gets the type information for SQL table columns.
CppRuntimeException | If the zserio type is not SQL table type. |
Implements zserio::IBasicTypeInfo< ALLOC >.
Reimplemented in zserio::SqlTableTypeInfo< ALLOC >.
Definition at line 939 of file TypeInfo.h.
|
overridevirtual |
Gets the C++ type.
Implements zserio::IBasicTypeInfo< ALLOC >.
Definition at line 873 of file TypeInfo.h.
|
overridevirtual |
Gets the type information for enumeration type items.
CppRuntimeException | If the zserio type is not enumeration type. |
Implements zserio::IBasicTypeInfo< ALLOC >.
Reimplemented in zserio::EnumTypeInfo< ALLOC >.
Definition at line 927 of file TypeInfo.h.
|
overridevirtual |
Gets the type information for compound type fields.
CppRuntimeException | If the zserio type is not compound type. |
Implements zserio::IBasicTypeInfo< ALLOC >.
Reimplemented in zserio::CompoundTypeInfoBase< ALLOC >.
Definition at line 885 of file TypeInfo.h.
|
overridevirtual |
Gets the type information for compound type functions.
CppRuntimeException | If the zserio type is not compound type. |
Implements zserio::IBasicTypeInfo< ALLOC >.
Reimplemented in zserio::CompoundTypeInfoBase< ALLOC >.
Definition at line 897 of file TypeInfo.h.
|
overridevirtual |
Gets the type information for pubsub messages.
CppRuntimeException | If the zserio type is not pubsub type. |
Implements zserio::IBasicTypeInfo< ALLOC >.
Reimplemented in zserio::PubsubTypeInfo< ALLOC >.
Definition at line 981 of file TypeInfo.h.
|
overridevirtual |
Gets the type information for service methods.
CppRuntimeException | If the zserio type is not service type. |
Implements zserio::IBasicTypeInfo< ALLOC >.
Reimplemented in zserio::ServiceTypeInfo< ALLOC >.
Definition at line 987 of file TypeInfo.h.
|
overridevirtual |
Gets the type information for compound type parameters.
CppRuntimeException | If the zserio type is not compound type. |
Implements zserio::IBasicTypeInfo< ALLOC >.
Reimplemented in zserio::CompoundTypeInfoBase< ALLOC >.
Definition at line 891 of file TypeInfo.h.
|
overridevirtual |
Gets the schema name.
Implements zserio::IBasicTypeInfo< ALLOC >.
Definition at line 861 of file TypeInfo.h.
|
overridevirtual |
Gets the schema type.
Implements zserio::IBasicTypeInfo< ALLOC >.
Definition at line 867 of file TypeInfo.h.
|
overridevirtual |
Gets the selector for choice type.
CppRuntimeException | If the zserio type is not choice type. |
Implements zserio::IBasicTypeInfo< ALLOC >.
Reimplemented in zserio::ChoiceTypeInfo< ALLOC >.
Definition at line 903 of file TypeInfo.h.
|
overridevirtual |
Gets the SQL table constraint.
CppRuntimeException | If the zserio type is not SQL table type. |
Implements zserio::IBasicTypeInfo< ALLOC >.
Reimplemented in zserio::SqlTableTypeInfo< ALLOC >.
Definition at line 945 of file TypeInfo.h.
|
overridevirtual |
Gets the type information for SQL database tables.
CppRuntimeException | If the zserio type is not SQL database type. |
Implements zserio::IBasicTypeInfo< ALLOC >.
Reimplemented in zserio::SqlDatabaseTypeInfo< ALLOC >.
Definition at line 963 of file TypeInfo.h.
|
overridevirtual |
Gets the type information for template arguments.
CppRuntimeException | If the zserio type is not templatable. |
Implements zserio::IBasicTypeInfo< ALLOC >.
Reimplemented in zserio::TemplatableTypeInfoBase< ALLOC >.
Definition at line 975 of file TypeInfo.h.
|
overridevirtual |
Gets the full schema template name.
CppRuntimeException | If the zserio type is not templatable. |
Implements zserio::IBasicTypeInfo< ALLOC >.
Reimplemented in zserio::TemplatableTypeInfoBase< ALLOC >.
Definition at line 969 of file TypeInfo.h.
|
overridevirtual |
Gets the reference to type information of underlying zserio type.
CppRuntimeException | If the zserio type is not enumeration or bitmask type. |
Implements zserio::IBasicTypeInfo< ALLOC >.
Reimplemented in zserio::TypeInfoWithUnderlyingTypeBase< ALLOC >.
Definition at line 915 of file TypeInfo.h.
|
overridevirtual |
Gets the reference to type information of underlying zserio type arguments.
CppRuntimeException | If the zserio type is not enumeration or bitmask type. |
Implements zserio::IBasicTypeInfo< ALLOC >.
Reimplemented in zserio::TypeInfoWithUnderlyingTypeBase< ALLOC >.
Definition at line 921 of file TypeInfo.h.
|
overridevirtual |
Gets the SQL virtual table using specification.
CppRuntimeException | If the zserio type is not SQL table type. |
Implements zserio::IBasicTypeInfo< ALLOC >.
Reimplemented in zserio::SqlTableTypeInfo< ALLOC >.
Definition at line 951 of file TypeInfo.h.
|
overridevirtual |
Checks if SQL table is without row id table.
CppRuntimeException | If the zserio type is not SQL table type. |
Implements zserio::IBasicTypeInfo< ALLOC >.
Reimplemented in zserio::SqlTableTypeInfo< ALLOC >.
Definition at line 957 of file TypeInfo.h.
|
delete |
Copying and moving is disallowed!
|
delete |
Copying and moving is disallowed!