Collect all header files from the project for cross-file validation. Args: files_by_dir: Dictionary of files organized by directory Returns: Immutable frozenset of all header file paths
(files_by_dir: dict[str, list[str]])
| 780 | |
| 781 | |
| 782 | def _collect_all_headers(files_by_dir: dict[str, list[str]]) -> frozenset[str]: |
| 783 | """Collect all header files from the project for cross-file validation. |
| 784 | |
| 785 | Args: |
| 786 | files_by_dir: Dictionary of files organized by directory |
| 787 | |
| 788 | Returns: |
| 789 | Immutable frozenset of all header file paths |
| 790 | """ |
| 791 | all_headers: set[str] = set() |
| 792 | |
| 793 | # Collect all header files from all directories |
| 794 | for file_list in files_by_dir.values(): |
| 795 | for file_path in file_list: |
| 796 | if file_path.endswith((".h", ".hpp", ".hh", ".hxx")): |
| 797 | all_headers.add(file_path) |
| 798 | |
| 799 | return frozenset(all_headers) |
| 800 | |
| 801 | |
| 802 | def run_checkers_on_single_file( |