MLIR 22.0.0git
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.

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()

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

Definition at line 38 of file DimLvlMap.h.

Referenced by operator!=(), operator==(), and unpackBinop().

Member Function Documentation

◆ cast()

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

Definition at line 143 of file DimLvlMap.h.

References isa().

◆ castDimLvlVar()

◆ 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>
U mlir::sparse_tensor::ir_detail::DimLvlExpr::dyn_cast ( ) const
constexpr

Definition at line 149 of file DimLvlMap.h.

References isa().

◆ 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()

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.

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

◆ getAllowedVarKind()

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

◆ getExprKind()

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

Definition at line 64 of file DimLvlMap.h.

Referenced by isa().

◆ isa()

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

◆ isValid()

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

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!=()

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

Definition at line 46 of file DimLvlMap.h.

References DimLvlExpr().

◆ operator==()

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

Definition at line 43 of file DimLvlMap.h.

References DimLvlExpr().

◆ tryGetContext()

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

Definition at line 73 of file DimLvlMap.h.

◆ unpackBinop()

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

Definition at line 40 of file DimLvlMap.cpp.

References DimLvlExpr(), getAffineKind(), lhs, and rhs.

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


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