| 38 | |
| 39 | |
| 40 | class DocEntry(typing.NamedTuple): |
| 41 | parts: Parts |
| 42 | raw_doc: str | None |
| 43 | |
| 44 | @property |
| 45 | def key(self) -> str: |
| 46 | return ".".join(self.parts) |
| 47 | |
| 48 | @property |
| 49 | def doc(self) -> str: |
| 50 | assert self.raw_doc is not None |
| 51 | |
| 52 | return re.sub(UNICODE_ESCAPE, r"\\u{\1}", self.raw_doc.strip()) |
| 53 | |
| 54 | |
| 55 | def is_c_extension(module: types.ModuleType) -> bool: |
no outgoing calls
no test coverage detected