13 #ifndef MLIR_TABLEGEN_PREDICATE_H_
14 #define MLIR_TABLEGEN_PREDICATE_H_
17 #include "llvm/ADT/Hashing.h"
39 explicit Pred(
const llvm::Record *record);
41 explicit Pred(
const llvm::Init *init);
63 operator bool()
const {
return def; }
75 const llvm::Record *
def{
nullptr};
83 explicit CPred(
const llvm::Record *record);
85 explicit CPred(
const llvm::Init *init);
107 std::vector<const llvm::Record *>
getChildren()
const;
std::string getConditionImpl() const
CPred(const llvm::Record *record)
const llvm::Record * getCombinerDef() const
std::vector< const llvm::Record * > getChildren() const
std::string getConditionImpl() const
CombinedPred(const llvm::Record *record)
StringRef getSuffix() const
StringRef getPrefix() const
const llvm::Record & getDef() const
Return the underlying def.
bool operator==(const Pred &other) const
friend llvm::hash_code hash_value(Pred pred)
std::string getCondition() const
ArrayRef< SMLoc > getLoc() const
StringRef getReplacement() const
StringRef getPattern() const
The OpAsmOpInterface, see OpAsmInterface.td for more details.
inline ::llvm::hash_code hash_value(const PolynomialBase< D, T > &arg)
Include the generated interface declarations.