Add or update PerfectHash generated file outputs (file work entries, prepare/save callbacks, CMake/VCXProj registration, and tests) when new output files or artifacts need to be added.
التثبيت
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
Add or update PerfectHash generated file outputs (file work entries, prepare/save callbacks, CMake/VCXProj registration, and tests) when new output files or artifacts need to be added.
Add New Generated File
Workflow
Add a new entry to src/PerfectHash/PerfectHashFileWork.h in VERB_FILE_WORK_TABLE with the right suffix/extension/EOF init; keep ordering invariants (streams follow owning files, VC project entries stay contiguous, context files stay contiguous).
Implement prepare/save callbacks in src/PerfectHash/Chm01FileWork*.c. If a stage is intentionally unused, set PrepareXxxChm01 or SaveXxxChm01 to NULL in src/PerfectHash/Chm01FileWork.h.
If a new file extension is needed, add a UNICODE_STRING in src/PerfectHash/PerfectHashConstants.c and wire it into the file work entry.
Register new sources in src/PerfectHash/CMakeLists.txt; mirror additions in src/PerfectHash/PerfectHash.vcxproj and src/PerfectHash/PerfectHash.vcxproj.filters.
Update src/PerfectHash/Chm01FileWork.c path logic when a file needs custom base names, directories, or stream rules.
Update generators/tests (src/PerfectHash/Chm01FileWorkCMakeListsTextFile.c, tests/run_cli_codegen_test.cmake, etc.) if the new file needs build/test coverage.
Add or expand tests to write the new files and compile/run them.
File Enum Capacity
When the 64-bit bitmap for file enums is exhausted, add a new enum group with _2, _3, etc. suffix and preserve existing ordering rules.