Coverage for src/renaissance/syntax_tree/node_protocol.py: 100%
5 statements
« prev ^ index » next coverage.py v7.16.1, created at 2026-10-02 13:12 +0000
« prev ^ index » next coverage.py v7.16.1, created at 2026-10-02 13:12 +0000
1"""AI: Structural protocol describing the interface consumed by generic syntax-tree algorithms."""
3from collections.abc import Mapping, Sequence
4from typing import Any, Protocol, Self, runtime_checkable
6from .semantic_kind import SemanticKind
9@runtime_checkable
10class NodeProtocol(Protocol):
11 """Structural interface consumed by generic syntax-tree algorithms."""
13 parser_kind: str
14 semantic_kind: SemanticKind
15 properties: Mapping[str, Any]
16 children: Sequence[Self]
17 signature: str
18 name: str