19 Dialect::Dialect(StringRef name) : name(name.str()) {}
20 Dialect::~Dialect() =
default;
22 std::pair<Operation *, bool>
23 Dialect::insertOperation(StringRef name, StringRef summary, StringRef desc,
24 StringRef nativeClassName,
25 bool supportsResultTypeInferrence, llvm::SMLoc loc) {
26 std::unique_ptr<Operation> &operation = operations[name];
28 return std::make_pair(&*operation,
false);
30 operation.reset(
new Operation(name, summary, desc, nativeClassName,
31 supportsResultTypeInferrence, loc));
32 return std::make_pair(&*operation,
true);
35 Operation *Dialect::lookupOperation(StringRef name)
const {
36 auto it = operations.find(name);
37 return it != operations.end() ? it->second.get() :
nullptr;
This class provides an ODS representation of a specific operation.
Include the generated interface declarations.