//! Pattern lowerers for different loop constructs //! //! Phase 2: Extracted from control_flow.rs //! - Pattern 1: Simple While Loop (pattern1_minimal.rs) //! - Pattern 2: Loop with Conditional Break (pattern2_with_break.rs) //! - Pattern 3: Loop with If-Else PHI (pattern3_with_if_phi.rs) //! //! Phase 194: Table-driven router for pattern dispatch //! - Router module provides table-driven pattern matching //! - Each pattern exports can_lower() and lower() functions //! - See router.rs for how to add new patterns pub(in crate::mir::builder) mod pattern1_minimal; pub(in crate::mir::builder) mod pattern2_with_break; pub(in crate::mir::builder) mod pattern3_with_if_phi; pub(in crate::mir::builder) mod router; // Re-export router for convenience pub(in crate::mir::builder) use router::{route_loop_pattern, LoopPatternContext};