[Mlir-commits] [mlir] [MLIR][Python] Add bindings for PDL native rewrite function registering (PR #159926)

Maksim Levental llvmlistbot at llvm.org
Sat Sep 20 10:45:30 PDT 2025


================
@@ -36,6 +41,43 @@ class PyPDLPatternModule {
   }
   MlirPDLPatternModule get() { return module; }
 
+  static nb::object fromPDLValue(MlirPDLValue value) {
+    if (mlirPDLValueIsValue(value)) {
+      return nb::cast(mlirPDLValueAsValue(value));
+    }
+    if (mlirPDLValueIsOperation(value)) {
+      return nb::cast(mlirPDLValueAsOperation(value));
+    }
+    if (mlirPDLValueIsAttribute(value)) {
+      return nb::cast(mlirPDLValueAsAttribute(value));
+    }
+    if (mlirPDLValueIsType(value)) {
+      return nb::cast(mlirPDLValueAsType(value));
+    }
----------------
makslevental wrote:

nit:
```suggestion
    if (mlirPDLValueIsValue(value))
      return nb::cast(mlirPDLValueAsValue(value));
    if (mlirPDLValueIsOperation(value))
      return nb::cast(mlirPDLValueAsOperation(value));
    if (mlirPDLValueIsAttribute(value))
      return nb::cast(mlirPDLValueAsAttribute(value));
    if (mlirPDLValueIsType(value))
      return nb::cast(mlirPDLValueAsType(value));
```

https://github.com/llvm/llvm-project/pull/159926


More information about the Mlir-commits mailing list