[Mlir-commits] [mlir] 4e679ea - [MLIR] [python] Fixed the signature of `_OperationBase.get_asm` (#136676)

llvmlistbot at llvm.org llvmlistbot at llvm.org
Tue Apr 22 18:53:38 PDT 2025


Author: Sergei Lebedev
Date: 2025-04-22T21:53:35-04:00
New Revision: 4e679ea89cc68829c4b9efc73121467bee56519c

URL: https://github.com/llvm/llvm-project/commit/4e679ea89cc68829c4b9efc73121467bee56519c
DIFF: https://github.com/llvm/llvm-project/commit/4e679ea89cc68829c4b9efc73121467bee56519c.diff

LOG: [MLIR] [python] Fixed the signature of `_OperationBase.get_asm` (#136676)

It claimed to return an `io.StringIO` or an `io.BytesIO`, but it did in
fact return `str` or `bytes`.

Added: 
    

Modified: 
    mlir/python/mlir/_mlir_libs/_mlir/ir.pyi

Removed: 
    


################################################################################
diff  --git a/mlir/python/mlir/_mlir_libs/_mlir/ir.pyi b/mlir/python/mlir/_mlir_libs/_mlir/ir.pyi
index 1c8080c5d6d2e..6c5f91d757cdc 100644
--- a/mlir/python/mlir/_mlir_libs/_mlir/ir.pyi
+++ b/mlir/python/mlir/_mlir_libs/_mlir/ir.pyi
@@ -45,9 +45,8 @@ from __future__ import annotations
 import abc
 import collections
 from collections.abc import Callable, Sequence
-import io
 from pathlib import Path
-from typing import Any, BinaryIO, ClassVar, TypeVar, overload
+from typing import Any, BinaryIO, ClassVar, Literal, TypeVar, overload
 
 __all__ = [
     "AffineAddExpr",
@@ -196,6 +195,19 @@ class _OperationBase:
         Detaches the operation from its parent block.
         """
     def erase(self) -> None: ...
+
+    @overload
+    def get_asm(
+        binary: Literal[True],
+        large_elements_limit: int | None = None,
+        enable_debug_info: bool = False,
+        pretty_debug_info: bool = False,
+        print_generic_op_form: bool = False,
+        use_local_scope: bool = False,
+        assume_verified: bool = False,
+        skip_regions: bool = False,
+    ) -> bytes: ...
+    @overload
     def get_asm(
         self,
         binary: bool = False,
@@ -206,19 +218,14 @@ class _OperationBase:
         use_local_scope: bool = False,
         assume_verified: bool = False,
         skip_regions: bool = False,
-    ) -> io.BytesIO | io.StringIO:
+    ) -> str:
         """
-        Gets the assembly form of the operation with all options available.
+        Returns the assembly form of the operation.
 
-        Args:
-          binary: Whether to return a bytes (True) or str (False) object. Defaults to
-            False.
-          ... others ...: See the print() method for common keyword arguments for
-            configuring the printout.
-        Returns:
-          Either a bytes or str object, depending on the setting of the 'binary'
-          argument.
+        See the print() method for common keyword arguments for configuring
+        the output.
         """
+
     def move_after(self, other: _OperationBase) -> None:
         """
         Puts self immediately after the other operation in its parent block.


        


More information about the Mlir-commits mailing list