9 #ifndef MLIR_DIALECT_SPARSETENSOR_IR_DETAIL_DIMLVLMAPPARSER_H
10 #define MLIR_DIALECT_SPARSETENSOR_IR_DETAIL_DIMLVLMAPPARSER_H
16 namespace sparse_tensor {
55 FailureOr<VarInfo::ID> parseVarUsage(
VarKind vk,
bool requireKnown);
60 FailureOr<VarInfo::ID> parseVarBinding(
VarKind vk,
bool requireKnown =
false);
65 FailureOr<std::pair<Var, bool>>
66 parseOptionalVarBinding(
VarKind vk,
bool requireKnown =
false);
75 ParseResult parseSymbolBindingList();
76 ParseResult parseLvlVarBindingList();
77 ParseResult parseDimSpec();
78 ParseResult parseDimSpecList();
79 FailureOr<LvlVar> parseLvlVarBinding(
bool requireLvlVarBinding);
80 ParseResult parseLvlSpec(
bool requireLvlVarBinding);
81 ParseResult parseLvlSpecList();
This base class exposes generic asm parser hooks, usable across the various derived parsers.
This class implements Optional functionality for ParseResult.
Parses the Sparse Tensor Encoding Attribute (STEA).
FailureOr< DimLvlMap > parseDimLvlMap()
DimLvlMapParser(AsmParser &parser)
ID
Newtype for unique identifiers of VarInfo records, to ensure they aren't confused with Var::Num.
A concrete variable, to be used in our variant of AffineExpr.
VarKind
The three kinds of variables that Var can be.
Include the generated interface declarations.