aboutsummaryrefslogtreecommitdiff
path: root/mingling_cli/src/proj_mgr/rule_solver.rs
Commit message (Collapse)AuthorAgeFilesLines
* feat(proj_mgr): add support for conditional directory removal魏曹先生35 hours1-1/+51
| | | | | | Add `[[hide-dir]]` rule to remove entire directories when their condition evaluates to true, extending the existing file-level hide functionality to directory trees.
* feat(rule_solver): support `!=` comparison and reject trailing tokens魏曹先生36 hours1-2/+39
| | | | | | Add `!=` operator support in rule expressions and ensure the entire expression is consumed during parsing, invalidating any trailing garbage tokens that would previously be silently ignored.
* feat(proj_mgr): add toggle mutex validation and program crate name魏曹先生36 hours1-0/+107
| | | | | | Support `[[user.toggle-mutex]]` groups in rule.toml to enforce mutually exclusive toggle options, and derive `program_crate_name` from `program_name` using snake_case conversion.
* feat: add project template expansion with rule-based generation魏曹先生41 hours1-0/+481
Implement `mling proj-init` to generate projects from zip templates with checklist-based configuration. Extracts template archive, moves checklist for user editing, and expands `tmpl_`-prefixed files using `just_template` with boolean rule evaluation from `rule.toml` for file hides and display toggles.