MLIR 22.0.0git
mlir::TypeTrait Namespace Reference

This trait is used to determine if a type is a dynamic type or not; it should only be implemented by dynamic types. More...

Classes

class  IsDynamicType

Typedefs

template<typename ConcreteType, template< typename > class TraitType>
using TraitBase = detail::StorageUserTraitBase<ConcreteType, TraitType>
 This class represents the base of a type trait.
template<typename ConcreteType>
using IsMutable = detail::StorageUserTrait::IsMutable<ConcreteType>

Detailed Description

This trait is used to determine if a type is a dynamic type or not; it should only be implemented by dynamic types.

This trait is used to determine if a type is mutable or not.

Note: This is only required because dynamic type do not have a static/single TypeID.

It is attached on a type if the corresponding ImplType defines a mutate function with a proper signature.

Typedef Documentation

◆ IsMutable

template<typename ConcreteType>
using mlir::TypeTrait::IsMutable = detail::StorageUserTrait::IsMutable<ConcreteType>

Definition at line 294 of file Types.h.

◆ TraitBase

template<typename ConcreteType, template< typename > class TraitType>
using mlir::TypeTrait::TraitBase = detail::StorageUserTraitBase<ConcreteType, TraitType>

This class represents the base of a type trait.

Definition at line 249 of file Types.h.