|
MLIR 22.0.0git
|
A concrete variable, to be used in our variant of AffineExpr. More...
#include "Dialect/SparseTensor/IR/Detail/Var.h"
Classes | |
| class | Impl |
| The underlying implementation of Var. More... | |
Public Types | |
| using | Num = unsigned |
| Typedef for the type of variable numbers. | |
Public Member Functions | |
| constexpr | Var (VarKind vk, Num n) |
| Var (AffineSymbolExpr sym) | |
| Var (VarKind vk, AffineDimExpr var) | |
| constexpr bool | operator== (Var other) const |
| constexpr bool | operator!= (Var other) const |
| constexpr VarKind | getKind () const |
| constexpr Num | getNum () const |
| template<typename U> | |
| constexpr bool | isa () const |
| template<typename U> | |
| constexpr U | cast () const |
| template<typename U> | |
| constexpr std::optional< U > | dyn_cast () const |
| std::string | str () const |
| void | print (llvm::raw_ostream &os) const |
| void | print (AsmPrinter &printer) const |
| void | dump () const |
Static Public Member Functions | |
| static constexpr bool | isWF_Num (Num n) |
| Checks whether the number would be accepted by Var(VarKind,Var::Num). | |
Protected Member Functions | |
| constexpr | Var (Impl impl) |
| Protected ctor for the RTTI methods to use. | |
A concrete variable, to be used in our variant of AffineExpr.
Client-facing class for VarKind + Var::Num pairs, with RTTI support for subclasses with a fixed VarKind.
|
inlineexplicitconstexprprotected |
Protected ctor for the RTTI methods to use.
Definition at line 112 of file Var.h.
Referenced by operator!=(), operator==(), Var(), and Var().
|
inline |
Definition at line 116 of file Var.h.
References mlir::sparse_tensor::ir_detail::Symbol, and Var().
|
inline |
Definition at line 117 of file Var.h.
References mlir::sparse_tensor::ir_detail::Symbol, and Var().
|
constexpr |
Definition at line 188 of file Var.h.
References isa().
Referenced by mlir::sparse_tensor::ir_detail::LvlExpr::castDimVar(), and mlir::sparse_tensor::ir_detail::DimExpr::castLvlVar().
|
constexpr |
|
inlineconstexpr |
Definition at line 124 of file Var.h.
Referenced by mlir::sparse_tensor::ir_detail::VarSet::add(), mlir::sparse_tensor::ir_detail::DimVar::classof(), mlir::sparse_tensor::ir_detail::LvlVar::classof(), mlir::sparse_tensor::ir_detail::SymVar::classof(), mlir::sparse_tensor::ir_detail::VarSet::contains(), isa(), mlir::sparse_tensor::ir_detail::Ranks::isValid(), and print().
|
inlineconstexpr |
Definition at line 125 of file Var.h.
Referenced by mlir::sparse_tensor::ir_detail::VarSet::add(), mlir::sparse_tensor::ir_detail::VarSet::contains(), mlir::sparse_tensor::ir_detail::Ranks::isValid(), and print().
|
constexpr |
Definition at line 178 of file Var.h.
References mlir::sparse_tensor::ir_detail::Dimension, getKind(), mlir::sparse_tensor::ir_detail::Level, and mlir::sparse_tensor::ir_detail::Symbol.
Referenced by cast(), and dyn_cast().
|
inlinestaticnodiscardconstexpr |
Checks whether the number would be accepted by Var(VarKind,Var::Num).
Definition at line 83 of file Var.h.
Referenced by mlir::sparse_tensor::ir_detail::Var::Impl::Impl(), and mlir::sparse_tensor::ir_detail::VarInfo::setNum().
| void Var::print | ( | AsmPrinter & | printer | ) | const |
Definition at line 35 of file Var.cpp.
References mlir::AsmPrinter::getStream(), and print().
| void Var::print | ( | llvm::raw_ostream & | os | ) | const |
| std::string Var::str | ( | ) | const |