(modules: Iterable[str], target: str)
| 100 | |
| 101 | |
| 102 | def split_target(modules: Iterable[str], target: str) -> tuple[str, str] | None: |
| 103 | remaining: list[str] = [] |
| 104 | while True: |
| 105 | if target in modules: |
| 106 | return target, ".".join(remaining) |
| 107 | components = target.rsplit(".", 1) |
| 108 | if len(components) == 1: |
| 109 | return None |
| 110 | target = components[0] |
| 111 | remaining.insert(0, components[1]) |
| 112 | |
| 113 | |
| 114 | def short_type(obj: object) -> str: |
no test coverage detected
searching dependent graphs…