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.
friend class Context
Allow access to the constructor.
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 represents a generic ODS Type constraint.
StringRef getCppClass() const
Return the name of the underlying c++ class of this constraint.
friend class Context
Allow access to the constructor.
Include the generated interface declarations.