[clang] [libclang/python] Add typing annotations for the Cursor class (PR #138103)

Vlad Serebrennikov via cfe-commits cfe-commits at lists.llvm.org
Mon May 12 22:58:17 PDT 2025


================
@@ -1821,45 +1824,45 @@ def mangled_name(self):
         return self._mangled_name
 
     @property
-    def location(self):
+    def location(self) -> SourceLocation:
         """
         Return the source location (the starting character) of the entity
         pointed at by the cursor.
         """
         if not hasattr(self, "_loc"):
-            self._loc = conf.lib.clang_getCursorLocation(self)
+            self._loc: SourceLocation = conf.lib.clang_getCursorLocation(self)
 
         return self._loc
 
     @property
-    def linkage(self):
+    def linkage(self) -> LinkageKind:
         """Return the linkage of this cursor."""
         if not hasattr(self, "_linkage"):
             self._linkage = conf.lib.clang_getCursorLinkage(self)
----------------
Endilll wrote:

Thank you for the analysis. I agree that we should list all functions for consistency. Can we have a test for completeness of `FUNCTION_LIST`? Maybe we can count how many attributes of `_FuncPtr` `CDLL` object has, and compare it to length of `FUNCTION_LIST`.

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


More information about the cfe-commits mailing list