MLIR  20.0.0git
Classes | Namespaces | Typedefs | Functions
Types.h File Reference
#include "mlir/IR/TypeSupport.h"
#include "llvm/ADT/ArrayRef.h"
#include "llvm/ADT/DenseMapInfo.h"
#include "llvm/Support/PointerLikeTypeTraits.h"

Go to the source code of this file.

Classes

class  mlir::Type
 Instances of the Type class are uniqued, have an immutable identifier and an optional mutable component. More...
 
class  mlir::TypeInterface< ConcreteType, Traits >
 This class represents the base of a type interface. More...
 
struct  llvm::DenseMapInfo< mlir::Type >
 
struct  llvm::DenseMapInfo< T, std::enable_if_t< std::is_base_of< mlir::Type, T >::value &&!mlir::detail::IsInterface< T >::value > >
 
struct  llvm::PointerLikeTypeTraits< mlir::Type >
 We align TypeStorage by 8, so allow LLVM to steal the low bits. More...
 
struct  llvm::CastInfo< To, From, std::enable_if_t< std::is_same_v< mlir::Type, std::remove_const_t< From > >||std::is_base_of_v< mlir::Type, From > > >
 Add support for llvm style casts. More...
 

Namespaces

 mlir
 Include the generated interface declarations.
 
 mlir::TypeTrait
 This trait is used to determine if a type is a dynamic type or not; it should only be implemented by dynamic types.
 
 llvm
 The OpAsmOpInterface, see OpAsmInterface.td for more details.
 

Typedefs

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

Functions

raw_ostream & mlir::operator<< (raw_ostream &os, Type type)
 
inline ::llvm::hash_code mlir::hash_value (Type arg)