tomoaki
e4b5a8e832
feat(plan): Phase 273 P2 Step 3-6 - Pattern7 (SplitScan) to Plan line
Migrate Pattern7 from legacy lowering to Plan architecture:
DomainPlan (mod.rs):
- Added SplitScan(SplitScanPlan) variant
- SplitScanPlan: s_var, sep_var, result_var, i_var, start_var
Extractor (pattern7_split_scan.rs):
- extract_split_scan_plan() returning DomainPlan
- Reuses existing extract_split_scan_parts()
Router (router.rs):
- Pattern7 now uses Plan line (Normalize→Verify→Lower)
- Removed from LOOP_PATTERNS table
Normalizer (normalizer.rs):
- normalize_split_scan() - 400+ lines migrated from impl
- 6 blocks: preheader/header/body/then/else/step/after
- 4 PHIs: header(2) + step(2) for i/start carriers
- Side effect: push with EffectMask::MUT
Bug fixes:
- Pattern6 extractor returns Ok(None) for non-match (allows fallback)
- Reverse scan filtered early in extractor (P1 scope)
Tests:
- phase256_p0_split_vm: PASS (exit=3)
- phase258_p0_index_of_string_vm: PASS (exit=6)
Lowerer no longer contains "split" - pattern-agnostic achieved!
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-22 23:35:43 +09:00
..
2025-12-21 04:34:22 +09:00
2025-12-20 03:11:58 +09:00
2025-12-21 09:01:35 +09:00
2025-12-22 23:35:43 +09:00
2025-12-18 01:38:25 +09:00
2025-12-16 21:37:07 +09:00
2025-12-21 04:34:22 +09:00
2025-12-16 21:37:07 +09:00
2025-12-19 08:36:45 +09:00
2025-12-21 05:47:37 +09:00