14 #ifndef MLIR_TOOLS_PDLL_ODS_CONSTRAINT_H_
15 #define MLIR_TOOLS_PDLL_ODS_CONSTRAINT_H_
20 #include "llvm/ADT/SmallVector.h"
21 #include "llvm/ADT/StringMap.h"
35 StringRef
getName()
const {
return name; }
48 : name(name.str()), summary(summary.str()) {}
70 :
Constraint(name, summary), cppClassName(cppClassName.str()) {}
73 std::string cppClassName;
90 TypeConstraint(StringRef name, StringRef summary, StringRef cppClassName)
91 :
Constraint(name, summary), cppClassName(cppClassName.str()) {}
94 std::string cppClassName;
This class represents a generic ODS Attribute constraint.
StringRef getCppClass() const
Return the name of the underlying c++ class of this constraint.
This class represents a generic ODS constraint.
Constraint(const Constraint &)=delete
StringRef getDemangledName() const
Return the demangled name of this constraint.
StringRef getSummary() const
Return the summary of this constraint.
StringRef getName() const
Return the unique name of this constraint.
Constraint(StringRef name, StringRef summary)
This class contains all of the registered ODS operation classes.
This class represents a generic ODS Type constraint.
StringRef getCppClass() const
Return the name of the underlying c++ class of this constraint.
Include the generated interface declarations.