33template <
typename EnumType>
44template <
typename T,
typename>
49 template <
typename ParserT>
50 static FailureOr<::llzk::polymorphic::FlatteningCleanupMode>
parse(ParserT &parser) {
52 std::string enumKeyword;
53 auto loc = parser.getCurrentLocation();
54 if (failed(parser.parseOptionalKeywordOrString(&enumKeyword)))
55 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.");
60 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;
69struct FieldParser<std::optional<::llzk::polymorphic::FlatteningCleanupMode>, std::optional<::llzk::polymorphic::FlatteningCleanupMode>> {
70 template <
typename ParserT>
71 static FailureOr<std::optional<::llzk::polymorphic::FlatteningCleanupMode>>
parse(ParserT &parser) {
73 std::string enumKeyword;
74 auto loc = parser.getCurrentLocation();
75 if (failed(parser.parseOptionalKeywordOrString(&enumKeyword)))
76 return std::optional<::llzk::polymorphic::FlatteningCleanupMode>{};
81 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;
88 auto valueStr = stringifyEnum(value);
90 case ::llzk::polymorphic::FlatteningCleanupMode::Unspecified:
91 case ::llzk::polymorphic::FlatteningCleanupMode::Disabled:
92 case ::llzk::polymorphic::FlatteningCleanupMode::Preimage:
95 return p <<
'"' << valueStr <<
'"';
105 static inline ::llzk::polymorphic::FlatteningCleanupMode
getEmptyKey() {
113 static unsigned getHashValue(const ::llzk::polymorphic::FlatteningCleanupMode &val) {
114 return StorageInfo::getHashValue(
static_cast<uint32_t
>(val));
117 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)