refactor(joinir): centralize balanced depth-scan policy decision
This commit is contained in:
@ -17,14 +17,14 @@ pub(in crate::mir::builder) fn choose_pattern_kind(
|
||||
body: &[ASTNode],
|
||||
) -> crate::mir::loop_pattern_detection::LoopPatternKind {
|
||||
use crate::mir::builder::control_flow::joinir::patterns::ast_feature_extractor as ast_features;
|
||||
use crate::mir::builder::control_flow::joinir::patterns::policies::balanced_depth_scan_policy::classify_balanced_depth_scan_array_end;
|
||||
use crate::mir::builder::control_flow::joinir::patterns::policies::balanced_depth_scan_policy_box::BalancedDepthScanPolicyBox;
|
||||
use crate::mir::builder::control_flow::joinir::patterns::policies::PolicyDecision;
|
||||
use crate::mir::loop_pattern_detection;
|
||||
|
||||
// Phase 107: Route balanced depth-scan (return-in-loop) to Pattern2 via policy.
|
||||
//
|
||||
// This keeps Pattern routing structural: no by-name dispatch, no silent fallback.
|
||||
match classify_balanced_depth_scan_array_end(condition, body) {
|
||||
match BalancedDepthScanPolicyBox::decide(condition, body) {
|
||||
PolicyDecision::Use(_) => {
|
||||
return loop_pattern_detection::LoopPatternKind::Pattern2Break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user