[clang] [libclang/python] Simplify __eq__ operators (PR #140540)
via cfe-commits
cfe-commits at lists.llvm.org
Mon May 19 06:38:29 PDT 2025
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-clang
Author: Jannick Kremer (DeinAlptraum)
<details>
<summary>Changes</summary>
This allows us to remove a few type: ignores.
---
Full diff: https://github.com/llvm/llvm-project/pull/140540.diff
1 Files Affected:
- (modified) clang/bindings/python/clang/cindex.py (+3-9)
``````````diff
diff --git a/clang/bindings/python/clang/cindex.py b/clang/bindings/python/clang/cindex.py
index 6f7243cdf80ac..a9f69309f4f67 100644
--- a/clang/bindings/python/clang/cindex.py
+++ b/clang/bindings/python/clang/cindex.py
@@ -335,9 +335,7 @@ def is_in_system_header(self):
return conf.lib.clang_Location_isInSystemHeader(self) # type: ignore [no-any-return]
def __eq__(self, other):
- if not isinstance(other, SourceLocation):
- return False
- return conf.lib.clang_equalLocations(self, other) # type: ignore [no-any-return]
+ return isinstance(other, SourceLocation) and conf.lib.clang_equalLocations(self, other)
def __ne__(self, other):
return not self.__eq__(other)
@@ -395,9 +393,7 @@ def end(self):
return conf.lib.clang_getRangeEnd(self) # type: ignore [no-any-return]
def __eq__(self, other):
- if not isinstance(other, SourceRange):
- return False
- return conf.lib.clang_equalRanges(self, other) # type: ignore [no-any-return]
+ return isinstance(other, SourceRange) and conf.lib.clang_equalRanges(self, other)
def __ne__(self, other):
return not self.__eq__(other)
@@ -1599,9 +1595,7 @@ def from_location(tu: TranslationUnit, location: SourceLocation) -> Cursor | Non
# This function is not null-guarded because it is used in cursor_null_guard itself
def __eq__(self, other: object) -> bool:
- if not isinstance(other, Cursor):
- return False
- return conf.lib.clang_equalCursors(self, other) # type: ignore [no-any-return]
+ return isinstance(other, Cursor) and conf.lib.clang_equalCursors(self, other)
# Not null-guarded for consistency with __eq__
def __ne__(self, other: object) -> bool:
``````````
</details>
https://github.com/llvm/llvm-project/pull/140540
More information about the cfe-commits
mailing list