(
names: Sequence[str | None],
nodes: list[T],
fail: Callable[[str, T], None],
description: str = "function definition",
)
| 5304 | |
| 5305 | |
| 5306 | def check_param_names( |
| 5307 | names: Sequence[str | None], |
| 5308 | nodes: list[T], |
| 5309 | fail: Callable[[str, T], None], |
| 5310 | description: str = "function definition", |
| 5311 | ) -> None: |
| 5312 | seen_names: set[str | None] = set() |
| 5313 | for name, node in zip(names, nodes): |
| 5314 | if name is not None and name in seen_names: |
| 5315 | fail(f'Duplicate parameter "{name}" in {description}', node) |
| 5316 | break |
| 5317 | seen_names.add(name) |
| 5318 | |
| 5319 | |
| 5320 | def is_class_var(expr: NameExpr) -> bool: |
no test coverage detected
searching dependent graphs…