|
| template<typename T , typename C > |
| | DataTypeImpl (const Id &type, const DataTypeImpl *underlying, const DataTypeImpl *element, const T *nullValue, const C *dummy, VALUEKIND flags=VALUEKIND::NONE, const NonvirtualInterfaceImplementation *impl=nullptr, VALUEKIND kind=ValueKindHelper< T, GetDirectlyReferencedType< T >::value >::KIND, const ParametricTypeInterface *pt=nullptr, const DataTypeImpl *extra=nullptr) |
| |
| template<typename C > |
| | DataTypeImpl (const Id &type, const DataTypeImpl *underlying, const DataTypeImpl *element, const void *nullValue, Int size, Int alignment, const C *dummy, VALUEKIND kind, const ParametricTypeInterface *pt=nullptr, const DataTypeImpl *extra=nullptr) |
| |
| | DataTypeImpl () |
| |
| | DataTypeImpl (const DataTypeImpl &src, const Id &typeId, VALUEKIND qualification, const ParametricTypeInterface *pt, VALUEKIND remove=VALUEKIND::NONE, Bool copyTypeArgs=true, const DataTypeImpl *element=nullptr) |
| |
| template<typename T , typename C > |
| | DataTypeImpl (const Id &type, const DataTypeImpl *underlying, const DataTypeImpl *element, const T *nullValue, const C *dummy, VALUEKIND flags=VALUEKIND::NONE, const NonvirtualInterfaceImplementation *impl=nullptr, VALUEKIND kind=ValueKindHelper< T, GetDirectlyReferencedType< T >::value >::KIND, const ParametricTypeInterface *pt=nullptr, const DataTypeImpl *extra=nullptr) |
| |
| template<typename C > |
| | DataTypeImpl (const Id &type, const DataTypeImpl *underlying, const DataTypeImpl *element, const void *nullValue, Int size, Int alignment, const C *dummy, VALUEKIND kind, const ParametricTypeInterface *pt=nullptr, const DataTypeImpl *extra=nullptr) |
| |
| | DataTypeImpl () |
| |
| | DataTypeImpl (const DataTypeImpl &src, const Id &typeId, VALUEKIND qualification, const ParametricTypeInterface *pt, VALUEKIND remove=VALUEKIND::NONE, Bool copyTypeArgs=true, const DataTypeImpl *element=nullptr) |
| |
| 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 DataTypeImpl * | GetUnqualifiedType () const |
| |
| const DataType & | GetUnderlyingType () const |
| |
| const DataType & | GetElementType () const |
| |
| const DataTypeImpl * | GetDecayedType () const |
| |
| Bool | HasTypeArguments () const |
| |
| const TypeArguments & | GetTypeArguments () const |
| |
| const ParametricTypeInterface * | GetParametricType () const |
| |
| const SimdInfo & | GetSimdInfo () const |
| |
| const NonvirtualInterfaceImplementation * | GetImplementation () const |
| |
| const InterfaceDefinition *const * | GetInterfaces () const |
| |
| const Generic * | GetNullValue () const |
| |
| Result< void * > | Create () const |
| |
| void | Construct (void *dest) const |
| |
| void | Construct (void *dest, Int dstride, Int count) const |
| |
| void | Destruct (const void *dest) const |
| |
| void | Destruct (const void *dest, Int dstride, Int count) const |
| |
| void | MoveConstruct (void *dest, void *src) const |
| |
| void | MoveConstruct (void *dest, Int dstride, void *src, Int sstride, Int count) const |
| |
| void | MoveFrom (void *dest, void *src) const |
| |
| void | MoveFrom (void *dest, Int dstride, void *src, Int sstride, Int count) const |
| |
| Result< void > | CopyFrom (void *dest, const void *src) const |
| |
| Result< void > | CopyFrom (void *dest, Int dstride, const void *src, Int sstride, Int count) const |
| |
| void | AddReference (const void *obj) const |
| |
| void | RemoveReference (const void *obj) const |
| |
| String | ToString (const void *s, const FormatStatement *formatStatement) const |
| |
| Bool | IsEqual (const void *s1, const void *s2, EQUALITY equality) const |
| |
| COMPARERESULT | Compare (const void *s1, const void *s2) const |
| |
| HashInt | GetHashCode (const void *s1) const |
| |
| UniqueHash | GetUniqueHashCode (const void *s1) const |
| |
| Result< void > | DescribeIO (const DataSerializeInterface &stream) const |
| |
| Result< void > | PrivateRegister () const |
| |
| void | PrivateSetStructType (const TupleDataType &tupleType, const Int *offsets) |
| |
| void | PrivateSetTypeArgs (StrongRef< const TypeArguments > &&args) |
| |
| const StrongRef< const DataTypeImpl > & | PrivateGetExtraType () const |
| |
| Result< void > | InitializeNullValue () |
| |
|
| enum class | FLAGS {
NONE
,
GLOBALLY_REFERENCED
,
OWNS_NULL_VALUE
} |
| |
| enum maxon::DataTypeImpl::FLAGS | MAXON_ENUM_FLAGS_CLASS (FLAGS) |
| |
| | ~DataTypeImpl () |
| |
| void | ResetRefs () |
| |
| void | ResetNullValue () |
| |
| | MAXON_DISALLOW_COPY_AND_ASSIGN (DataTypeImpl) |
| |
| void | AddReference () const |
| |
| void | RemoveReference () const |
| |
| const Id | _id |
| |
| const Int | _size |
| |
| const Int | _alignment |
| |
| VALUEKIND | _valueKind |
| |
| FLAGS | _flags |
| |
| StrongRef< const DataTypeImpl > | _underlying |
| |
| StrongRef< const DataTypeImpl > | _elementType |
| |
| StrongRef< const DataTypeImpl > | _extraType |
| |
| const ParametricTypeInterface * | _parametricType |
| |
| union { |
| const NonvirtualInterfaceImplementation * _implementation |
| |
| const InterfaceDefinition *const * _interfaces |
| |
| const TypeArguments * _typeArgs |
| |
| } | MAXON_ENUM_FLAGS_CLASS |
| |
| const void * | _conversions [3] |
| |
| const Generic * | _nullValue |
| |
| void(*const | _construct )(const DataTypeImpl *type, void *dest, Int dstride, Int count) |
| |
| void(*const | _destruct )(const DataTypeImpl *type, const void *dest, Int dstride, Int count) |
| |
| void(*const | _moveConstruct )(const DataTypeImpl *type, void *dest, Int dstride, void *src, Int sstride, Int count) |
| |
| void(*const | _moveFrom )(const DataTypeImpl *type, void *dest, Int dstride, void *src, Int sstride, Int count) |
| |
| Result< void >(*const | _copyFrom )(const DataTypeImpl *type, void *dest, Int dstride, const void *src, Int sstride, Int count) |
| |
| void(*const | _addReference )(const DataTypeImpl *type, const void *obj) |
| |
| void(*const | _removeReference )(const DataTypeImpl *type, const void *obj) |
| |
| String(*const | _toString )(const DataTypeImpl *type, const void *s, const FormatStatement *formatStatement) |
| |
| Bool(*const | _isEqual )(const DataTypeImpl *type, const void *s1, const void *s2, EQUALITY equality) |
| |
| COMPARERESULT(*const | _compare )(const DataTypeImpl *type, const void *s1, const void *s2) |
| |
| HashInt(*const | _getHashCode )(const DataTypeImpl *type, const void *s1) |
| |
| UniqueHash(*const | _getUniqueHashCode )(const DataTypeImpl *type, const void *s1) |
| |
| Result< void >(* | _describeIO )(const DataTypeImpl *type, const DataSerializeInterface &stream) |
| |
| Result< void * >(*const | _newInstance )(const DataTypeImpl *type) |
| |
| Result< void >(*const | _initData )(const DataTypeImpl *type, DataMemBlock *mem) |
| |
| void(*const | _freeData )(const DataTypeImpl *type, DataMemBlock *mem) |
| |
| Result< void >(*const | _copyData )(const DataTypeImpl *type, DataMemBlock *d, const DataMemBlock *s) |
| |
| Result< void >(*const | _initCopyData )(const DataTypeImpl *type, DataMemBlock *d, const DataMemBlock *s) |
| |
| void(*const | _moveData )(const DataTypeImpl *type, DataMemBlock *d, DataMemBlock *s) |
| |
| void(*const | _initMoveData )(const DataTypeImpl *type, DataMemBlock *d, DataMemBlock *s) |
| |
| const void *(*const | _getPtr )(const DataTypeImpl *type, const DataMemBlock *s) |
| |
| Bool(*const | _isEqualData )(const DataTypeImpl *type, const DataMemBlock *s1, const DataMemBlock *s2, EQUALITY equality) |
| |