================
@@ -311,36 +320,36 @@ def from_offset(tu, file, offset):
return conf.lib.clang_getLocationForOffset(tu, file, offset) # type:
ignore [no-any-return]
@property
- def file(self):
+ def file(self) -> File | None:
"""Get the file represented by this source location."""
return self._get_instantiation()[0]
@property
- def line(self):
+ def line(self) -> int:
"""Get the line represented by this source location."""
return self._get_instantiation()[1]
@property
- def column(self):
+ def column(self) -> int:
"""Get the column represented by this source location."""
return self._get_instantiation()[2]
@property
- def offset(self):
+ def offset(self) -> int:
"""Get the file offset represented by this source location."""
return self._get_instantiation()[3]
@property
- def is_in_system_header(self):
+ def is_in_system_header(self) -> bool:
"""Returns true if the given source location is in a system header."""
return bool(conf.lib.clang_Location_isInSystemHeader(self))
- def __eq__(self, other):
+ def __eq__(self, other: object) -> bool:
----------------
Endilll wrote:
Annotating anything as `object` doesn't convey any information and is probably
actively harmful here, because `SourceLocation` is not equality comparable to
everything, even if we applied some defensive programming here.
@DeinAlptraum should we throw `ValueError` if `isinstance` check fails?
https://github.com/llvm/llvm-project/pull/173845
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits