Skip to content

feat(preproc): add queryable preprocessor model#228

Merged
hongjr03 merged 8 commits into
masterfrom
refactor/preproc-crate
Jun 5, 2026
Merged

feat(preproc): add queryable preprocessor model#228
hongjr03 merged 8 commits into
masterfrom
refactor/preproc-crate

Conversation

@hongjr03
Copy link
Copy Markdown
Member

@hongjr03 hongjr03 commented Jun 4, 2026

Summary

  • Split the preproc crate into explicit index and model modules.
  • Add a queryable preprocessor model built on source-order events and macro environment replay.
  • Expose macro visibility, macro definition/reference resolution, provenance, includes, and inactive branch facts through hir::preproc.
  • Wire IDE completion, go to definition, hover, and references to structured preprocessor facts for macros, conditional macro tokens, and literal includes.

Scope

  • Covers single-file macro environments with manifest predefines.
  • Keeps IDE consumers behind the HIR preprocessor facade.
  • Leaves full include-chain macro replay and manifest source-range provenance for follow-up work.

Validation

  • cargo test -p preproc
  • cargo test -p ide preproc_macro -- --nocapture
  • cargo check -p hir
  • cargo check -p ide
  • cargo fmt --check
  • git diff --check

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jun 4, 2026

Docs preview: https://vide.pascal-lab.net/preview/pr-228/

@hongjr03 hongjr03 force-pushed the refactor/preproc-crate branch from 27b76e6 to 9c78586 Compare June 4, 2026 18:03
@hongjr03 hongjr03 changed the title refactor(preproc): add preprocessor query model feat(preproc): add queryable preprocessor model Jun 5, 2026
@hongjr03 hongjr03 marked this pull request as ready for review June 5, 2026 04:03
@hongjr03 hongjr03 merged commit 997752f into master Jun 5, 2026
12 checks passed
@hongjr03 hongjr03 deleted the refactor/preproc-crate branch June 5, 2026 04:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant