CRTP base that ties a concrete type to a fixed TypeKind.
<mrdocs/Metadata/Type/TypeBase.hpp>template<TypeKind K>
struct TypeCommonBase
: Type
| Name | Description |
|---|---|
Type | A possibly qualified type. |
| Name | Description |
|---|---|
asType | asType overloads |
namedSymbol | Return the symbol named by this type. |
operator<=> | Three-way comparison operators |
| Name | Description |
|---|---|
isArray | True when this is an array type. |
isAuto | True when this concrete kind is auto. |
isDecltype | True when this concrete kind is decltype. |
isFunction | True when this is a function type. |
isLValueReference | True when this is an lvalue reference. |
isMemberPointer | True when this is a member pointer. |
isNamed | True when this concrete kind is a named type. |
isPointer | True when this is a pointer type. |
isRValueReference | True when this is an rvalue reference. |
| Name | Description |
|---|---|
Constraints | The constraints associated with the type |
IsConst | The const qualifier |
IsPackExpansion | Whether this is the pattern of a pack expansion. |
IsVolatile | The volatile qualifier |
Kind | The kind of Type this is |
| Name | Description |
|---|---|
kind_id | Static discriminator for the concrete type. |
| Name | Description |
|---|---|
TypeCommonBase [constructor] | Construct the base with the fixed kind. |
| Name | Description |
|---|---|
innerType | Return the inner type. |
innerType | Return the inner type. |
innerTypePtr | Return the inner type. |
innerTypePtr | Return the inner type. |
toString | Render a type to a human-readable string. |
| Name | Description |
|---|---|
ArrayType
| C++ array type (bounded or unbounded). |
AutoType
| Represents auto or decltype(auto) placeholder type. |
DecltypeType
| decltype(expr) type wrapper. |
FunctionType
| Function type with parameters, qualifiers, and noexcept info. |
LValueReferenceType
| An lvalue reference type. |
MemberPointerType
| Pointer-to-member type (object or function). |
NamedType
| A type identified by name (possibly fundamental). |
PointerType
| Pointer type wrapper. |
RValueReferenceType
| An rvalue reference type. |