# Un-ignore: the top-level p2t/.gitignore ignores `build/` (for Node/TS),
# but our per-family sub-project NEEDS its build/ tracked for the .sgr +
# makeall. Re-ignore generated artifacts below.
!build/

# Built binary and lib (regenerated by build/makeall)
bin/ccsf4
lib/lib*.a

# cppcc-generated parser sources/headers + the Python/JS/Rust KeyWords modules
# (build/makeall regenerates them from build/F4_RouteHandler.sgr and copies
# to incloc/ + srcloc/)
build/F4*.cc
build/F4*.h
build/F4*.py
build/F4*.mjs
build/F4*.rs
build/F4_RouteHandler.sgr.fgr
build/F4_RouteHandler.sgr.bfgr
build/F4_RouteHandler.sgr.lis
build/F4_RouteHandler.sgr.log
build/F4_RouteHandler.sgr.urt
build/F4_RouteHandler.sgr.ubrt
incloc/F4*.h
srcloc/F4*.cc
srcloc/F4*.py
srcloc/F4*.mjs
srcloc/F4*.rs

# Object files
**/*.o

# Run dir is for ad-hoc inputs and ccsf4 outputs (.fgr/.urt/.lis/.log).
# Committed exceptions: the canonical fixture(s).
run/*
!run/.gitkeep
# .D4 + .E9 per-handler fixtures (inputs only in pilot) + the .E9
# demo fixture preserving the full steps grammar coverage (incl.
# branch with nested then/else).
!run/F4_register_handler.dsl
!run/F4_login_handler.dsl
!run/F4_demo_steps.dsl
