(value: Any)
| 102 | |
| 103 | |
| 104 | def _resolve_import(value: Any) -> tuple[str, str, bool]: |
| 105 | module_name = value.__module__ |
| 106 | module = importlib.import_module(module_name) |
| 107 | for name, obj in module.__dict__.items(): |
| 108 | if obj is value: |
| 109 | return module_name, name, False |
| 110 | qualname = getattr(value, "__qualname__", None) |
| 111 | if qualname and "." in qualname: |
| 112 | if "<locals>" in qualname: |
| 113 | raise ValueError(f"Cannot resolve import for {value!r}") |
| 114 | return module_name, f"{module_name}.{qualname}", True |
| 115 | name = getattr(value, "__name__", None) |
| 116 | if name: |
| 117 | return module_name, name, False |
| 118 | raise ValueError(f"Cannot resolve import for {value!r}") |
| 119 | |
| 120 | |
| 121 | def render_value(value: Any, imports: ImportManager) -> str: |
no test coverage detected
searching dependent graphs…