[Mlir-commits] [mlir] [MLIR][Python] Support dialect conversion in python bindings (PR #177782)
llvmlistbot at llvm.org
llvmlistbot at llvm.org
Thu Jan 29 07:20:39 PST 2026
================
@@ -2774,6 +2774,28 @@ void populateRoot(nb::module_ &m) {
"dialect_class"_a, nb::kw_only(), "replace"_a = false,
"Produce a class decorator for registering an Operation class as part of "
"a dialect");
+ m.def(
+ "register_op_adaptor",
+ [](const nb::type_object &opClass, bool replace) -> nb::object {
+ return nb::cpp_function(
+ [opClass,
+ replace](nb::type_object adaptorClass) -> nb::type_object {
+ std::string operationName =
+ nb::cast<std::string>(adaptorClass.attr("OPERATION_NAME"));
+ PyGlobals::get().registerOpAdaptorImpl(operationName,
+ adaptorClass, replace);
+ // Dict-stuff the new adaptorClass by name onto the opClass.
+ opClass.attr("Adaptor") = adaptorClass;
+ return adaptorClass;
----------------
PragmaTwice wrote:
yah currently the Adaptor attr is unused. just thought that it may be useful for python users.
https://github.com/llvm/llvm-project/pull/177782
More information about the Mlir-commits
mailing list