#include <datatypebase.h>
Public Member Functions | |
Primary ()=default | |
Primary (const DataTypeImpl *type) | |
![]() | |
DataType ()=default | |
DataType (const DataTypeImpl *ptr) | |
DataType (std::nullptr_t)=delete | |
operator Bool () const | |
Bool | operator== (const DataType &other) const |
Bool | operator!= (const DataType &other) const |
HashInt | GetHashCode () const |
const DataTypeImpl * | operator-> () const |
const Id & | GetId () const |
String | ToString (const FormatStatement *formatStatement=nullptr) const |
Int | GetSize () const |
Int | GetAlignment () const |
VALUEKIND | GetValueKind () const |
Bool | CheckValueKind (VALUEKIND test) const |
const DataType & | GetUnqualifiedType () const |
const DataType & | ResolveRecursiveType () const |
const DataType & | GetUnderlyingType () const |
const DataType & | GetElementType () const |
const DataType & | GetDecayedType () const |
Bool | HasTypeArguments () const |
const TypeArguments & | GetTypeArguments () const |
const ParametricTypeInterface * | GetParametricType () const |
const TupleDataType & | GetTupleType () const |
Result< void > | AddConversion (const DataType &src, CONVERSION_FLAGS kind, Conversion &&func) const |
Result< void > | Convert (Generic &dest, const ConstDataPtr &src, CONVERSION_FLAGS ignore=CONVERSION_FLAGS::NONE) const |
template<typename T > | |
void | AssertType () const |
template<typename T > | |
Bool | Is () const |
Bool | IsCastableFrom (const DataType &other) const |
template<typename T > | |
Bool | IsCastableFrom () const |
template<typename T > | |
Bool | IsCastableTo () const |
enum maxon::DataType::BASE_OF_MODE | MAXON_ENUM_FLAGS_CLASS (BASE_OF_MODE) |
Bool | IsBaseOfOrSame (const DataType &other, BASE_OF_MODE mode=BASE_OF_MODE::NONE) const |
Bool | IsSimilar (const DataType &other) const |
void | Reset () |
const DataTypeImpl * | PrivateGetPointer () const |
template<typename DEST , typename SRC > | |
Result< void > | AddConversion (CONVERSION_FLAGS kind, Result< void >(*conversion)(DEST &, const SRC &)) |
Additional Inherited Members | |
![]() | |
enum | BASE_OF_MODE { NONE, ORDERED_TYPE_ONLY, UNORDERED_BY_NAME, GENERIC_DOWNCAST } |
using | Conversion = Delegate< Result< void >(const DataPtr &dest, const ConstDataPtr &src)> |
![]() | |
static const DataType & | NullValue () |
static Result< DataType > | Get (const Id &typeId) |
template<typename DEST , typename SRC > | |
static Result< void > | AddConversion (CONVERSION_FLAGS kind, Result< void >(*conversion)(DEST &dest, const SRC &src)) |
|
default |
|
explicit |