Changes for version 0.018 - 2026-04-25
- Removed two dead-code branches identified by Devel::Cover:
- `or $has_wildcard` in fast-return condition (logically unreachable: $has_wildcard can only be true when $ok->@* is already true)
- `elsif ($ok->@*)` in Phase 4 (always true when reached, since the fast-return already handles the empty-accepted case)
- Added Devel::Cover integration: `make cover` target via MY::postamble
- Added 6 new subtests to close remaining coverage gaps:
- Scalar-context branches for empty-args, per-field, and Phase 4 returns
- Unsupported reference input type (scalar ref, coderef, regex)
- `required || []` defensive guard in apply() (torn-object test)
- `@all_msgs` true branch on fast-return path (odd-array + required-only)
- 100% coverage across all Devel::Cover metrics: stmt, branch, cond, sub
- All 84 tests passing
Modules
Field filtering for strict parameter construction
Examples
- examples/CALL_CHAIN_ANALYSIS.md
- examples/CALL_CHAIN_VISUALIZATION.txt
- examples/advanced_filtering.pl
- examples/arrayref_input.pl
- examples/basic_usage.pl
- examples/benchmark-expensive-validation.pl
- examples/benchmark-interfaces.pl
- examples/benchmark-realistic.pl
- examples/benchmark-vs-raw.pl
- examples/closure_interface.pl
- examples/debug_mode.pl
- examples/edge_cases.pl
- examples/error_handling.pl
- examples/modifier_methods.pl
- examples/oo_interface.pl
- examples/strict_construction.pl
- examples/wildcard.pl