32template <
typename EnumType>
43template <
typename T,
typename>
48 template <
typename ParserT>
49 static FailureOr<::llzk::polymorphic::FlatteningCleanupMode>
parse(ParserT &parser) {
51 std::string enumKeyword;
52 auto loc = parser.getCurrentLocation();
53 if (failed(parser.parseOptionalKeywordOrString(&enumKeyword)))
54 return parser.emitError(loc,
"expected keyword for Specifies the extent to which unused parameterized definitions (i.e. structs or free functions within a `poly.template`) are removed during the flattening pass.");
59 return parser.emitError(loc,
"invalid Specifies the extent to which unused parameterized definitions (i.e. structs or free functions within a `poly.template`) are removed during the flattening pass. specification: ") << enumKeyword;
68struct FieldParser<std::optional<::llzk::polymorphic::FlatteningCleanupMode>, std::optional<::llzk::polymorphic::FlatteningCleanupMode>> {
69 template <
typename ParserT>
70 static FailureOr<std::optional<::llzk::polymorphic::FlatteningCleanupMode>>
parse(ParserT &parser) {
72 std::string enumKeyword;
73 auto loc = parser.getCurrentLocation();
74 if (failed(parser.parseOptionalKeywordOrString(&enumKeyword)))
75 return std::optional<::llzk::polymorphic::FlatteningCleanupMode>{};
80 return parser.emitError(loc,
"invalid Specifies the extent to which unused parameterized definitions (i.e. structs or free functions within a `poly.template`) are removed during the flattening pass. specification: ") << enumKeyword;
87 auto valueStr = stringifyEnum(value);
89 case ::llzk::polymorphic::FlatteningCleanupMode::Disabled:
90 case ::llzk::polymorphic::FlatteningCleanupMode::Preimage:
93 return p <<
'"' << valueStr <<
'"';
103 static inline ::llzk::polymorphic::FlatteningCleanupMode
getEmptyKey() {
111 static unsigned getHashValue(const ::llzk::polymorphic::FlatteningCleanupMode &val) {
112 return StorageInfo::getHashValue(
static_cast<uint32_t
>(val));
115 static bool isEqual(const ::llzk::polymorphic::FlatteningCleanupMode &lhs, const ::llzk::polymorphic::FlatteningCleanupMode &rhs) {
raw_ostream & operator<<(raw_ostream &os, llvm::PointerUnion< mlir::Value, mlir::Operation * > ptr)
inline ::std::optional< FlatteningCleanupMode > symbolizeEnum< FlatteningCleanupMode >(::llvm::StringRef str)
::std::optional< EnumType > symbolizeEnum(::llvm::StringRef)
::llvm::StringRef stringifyFlatteningCleanupMode(FlatteningCleanupMode val)
::std::optional< FlatteningCleanupMode > symbolizeFlatteningCleanupMode(::llvm::StringRef str)
inline ::llvm::StringRef stringifyEnum(FlatteningCleanupMode enumValue)
constexpr unsigned getMaxEnumValForFlatteningCleanupMode()
::llvm::DenseMapInfo< uint32_t > StorageInfo
static inline ::llzk::polymorphic::FlatteningCleanupMode getTombstoneKey()
static inline ::llzk::polymorphic::FlatteningCleanupMode getEmptyKey()
static unsigned getHashValue(const ::llzk::polymorphic::FlatteningCleanupMode &val)
static bool isEqual(const ::llzk::polymorphic::FlatteningCleanupMode &lhs, const ::llzk::polymorphic::FlatteningCleanupMode &rhs)
static FailureOr< std::optional<::llzk::polymorphic::FlatteningCleanupMode > > parse(ParserT &parser)
static FailureOr<::llzk::polymorphic::FlatteningCleanupMode > parse(ParserT &parser)