MLIR  20.0.0git
Public Member Functions | Protected Types | List of all members
mlir::sparse_tensor::ir_detail::DimLvlExpr Class Reference

#include "Dialect/SparseTensor/IR/Detail/DimLvlMap.h"

+ Inheritance diagram for mlir::sparse_tensor::ir_detail::DimLvlExpr:

Public Member Functions

constexpr DimLvlExpr (ExprKind ek, AffineExpr expr)
 
constexpr bool operator== (DimLvlExpr other) const
 
constexpr bool operator!= (DimLvlExpr other) const
 
 operator bool () const
 
template<typename U >
constexpr bool isa () const
 
template<typename U >
constexpr U cast () const
 
template<typename U >
constexpr U dyn_cast () const
 
constexpr ExprKind getExprKind () const
 
constexpr VarKind getAllowedVarKind () const
 
constexpr AffineExpr getAffineExpr () const
 
AffineExprKind getAffineKind () const
 
MLIRContexttryGetContext () const
 
SymVar castSymVar () const
 
std::optional< SymVardyn_castSymVar () const
 
Var castDimLvlVar () const
 
std::optional< Vardyn_castDimLvlVar () const
 
std::tuple< DimLvlExpr, AffineExprKind, DimLvlExprunpackBinop () const
 
bool isValid (Ranks const &ranks) const
 Checks whether the variables bound/used by this spec are valid with respect to the given ranks. More...
 

Protected Types

enum class  BindingStrength : bool { Weak = false , Strong = true }
 

Detailed Description

Definition at line 32 of file DimLvlMap.h.

Member Enumeration Documentation

◆ BindingStrength

Enumerator
Weak 
Strong 

Definition at line 92 of file DimLvlMap.h.

Constructor & Destructor Documentation

◆ DimLvlExpr()

constexpr mlir::sparse_tensor::ir_detail::DimLvlExpr::DimLvlExpr ( ExprKind  ek,
AffineExpr  expr 
)
inlineconstexpr

Definition at line 38 of file DimLvlMap.h.

Member Function Documentation

◆ cast()

template<typename U >
constexpr U mlir::sparse_tensor::ir_detail::DimLvlExpr::cast
constexpr

Definition at line 143 of file DimLvlMap.h.

◆ castDimLvlVar()

Var DimLvlExpr::castDimLvlVar ( ) const

◆ castSymVar()

SymVar DimLvlExpr::castSymVar ( ) const

Definition at line 19 of file DimLvlMap.cpp.

Referenced by mlir::sparse_tensor::ir_detail::VarSet::add().

◆ dyn_cast()

template<typename U >
constexpr U mlir::sparse_tensor::ir_detail::DimLvlExpr::dyn_cast
constexpr

Definition at line 149 of file DimLvlMap.h.

◆ dyn_castDimLvlVar()

std::optional< Var > DimLvlExpr::dyn_castDimLvlVar ( ) const

◆ dyn_castSymVar()

std::optional< SymVar > DimLvlExpr::dyn_castSymVar ( ) const

Definition at line 23 of file DimLvlMap.cpp.

◆ getAffineExpr()

constexpr AffineExpr mlir::sparse_tensor::ir_detail::DimLvlExpr::getAffineExpr ( ) const
inlineconstexpr

Definition at line 68 of file DimLvlMap.h.

Referenced by mlir::sparse_tensor::ir_detail::Ranks::isValid().

◆ getAffineKind()

AffineExprKind mlir::sparse_tensor::ir_detail::DimLvlExpr::getAffineKind ( ) const
inline

Definition at line 69 of file DimLvlMap.h.

References mlir::AffineExpr::getKind().

Referenced by mlir::sparse_tensor::ir_detail::VarSet::add(), and unpackBinop().

◆ getAllowedVarKind()

constexpr VarKind mlir::sparse_tensor::ir_detail::DimLvlExpr::getAllowedVarKind ( ) const
inlineconstexpr

◆ getExprKind()

constexpr ExprKind mlir::sparse_tensor::ir_detail::DimLvlExpr::getExprKind ( ) const
inlineconstexpr

◆ isa()

template<typename U >
constexpr bool mlir::sparse_tensor::ir_detail::DimLvlExpr::isa
constexpr

◆ isValid()

bool mlir::sparse_tensor::ir_detail::DimLvlExpr::isValid ( Ranks const &  ranks) const

Checks whether the variables bound/used by this spec are valid with respect to the given ranks.

◆ operator bool()

mlir::sparse_tensor::ir_detail::DimLvlExpr::operator bool ( ) const
inlineexplicit

Definition at line 49 of file DimLvlMap.h.

◆ operator!=()

constexpr bool mlir::sparse_tensor::ir_detail::DimLvlExpr::operator!= ( DimLvlExpr  other) const
inlineconstexpr

Definition at line 46 of file DimLvlMap.h.

◆ operator==()

constexpr bool mlir::sparse_tensor::ir_detail::DimLvlExpr::operator== ( DimLvlExpr  other) const
inlineconstexpr

Definition at line 43 of file DimLvlMap.h.

◆ tryGetContext()

MLIRContext* mlir::sparse_tensor::ir_detail::DimLvlExpr::tryGetContext ( ) const
inline

◆ unpackBinop()

std::tuple< DimLvlExpr, AffineExprKind, DimLvlExpr > DimLvlExpr::unpackBinop ( ) const

Definition at line 40 of file DimLvlMap.cpp.

References getAffineKind().

Referenced by mlir::sparse_tensor::ir_detail::VarSet::add().


The documentation for this class was generated from the following files: