Metadata for one top-level AST node.
| 38 | |
| 39 | @dataclass |
| 40 | class NodeInfo: |
| 41 | """Metadata for one top-level AST node.""" |
| 42 | name: str # Symbol name (class/function name, or synthetic expression label) |
| 43 | kind: str # "class" | "function" | "constant" | "assignment" | "expression" | "other" |
| 44 | lineno: int # Start line (1-based) |
| 45 | end_lineno: int # End line (1-based) |
| 46 | source_hash: str = "" # SHA256 of the source lines |
| 47 | target_module: str = "" # Output module path (relative to package root) |
| 48 | bases: List[str] = field(default_factory=list) # For classes: base class names |
| 49 | |
| 50 | |
| 51 | @dataclass |