refactor(joinir): L-1.3 - Rename minimal helpers to Case-A helpers

LoopToJoinLowerer API cleanup:

1. Rename methods to reflect their purpose as Case-A helpers:
   - lower_minimal_skip_ws_case_a → lower_case_a_for_skip_ws
   - lower_minimal_trim_case_a → lower_case_a_for_trim
   - lower_minimal_append_defs_case_a → lower_case_a_for_append_defs
   - lower_minimal_stage1_case_a → lower_case_a_for_stage1_resolver

2. Update comments to clarify these are thin wrappers over `lower()`
   - "Case-A 汎用 lowerer の薄いラッパー"
   - Actual logic is centralized in `lower` method

3. Update all 4 call sites:
   - skip_ws.rs
   - funcscanner_trim.rs
   - funcscanner_append_defs.rs
   - stage1_using_resolver.rs

Test results: standalone (2/2), JSON snapshot (6/6) PASS

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
nyash-codex
2025-11-26 10:28:03 +09:00
parent 51ff558904
commit 853cb36800
5 changed files with 17 additions and 16 deletions

View File

@ -368,7 +368,7 @@ fn lower_from_mir(module: &crate::mir::MirModule) -> Option<JoinModule> {
"[joinir/funcscanner_append_defs/generic-hook] detected simple Case A loop (LoopToJoinLowerer)" "[joinir/funcscanner_append_defs/generic-hook] detected simple Case A loop (LoopToJoinLowerer)"
); );
let lowerer = LoopToJoinLowerer::new(); let lowerer = LoopToJoinLowerer::new();
if let Some(jm) = lowerer.lower_minimal_append_defs_case_a(target_func, &loop_form) { if let Some(jm) = lowerer.lower_case_a_for_append_defs(target_func, &loop_form) {
eprintln!( eprintln!(
"[joinir/funcscanner_append_defs/generic-hook] LoopToJoinLowerer produced JoinIR, returning early" "[joinir/funcscanner_append_defs/generic-hook] LoopToJoinLowerer produced JoinIR, returning early"
); );

View File

@ -635,7 +635,7 @@ fn lower_trim_from_mir(module: &crate::mir::MirModule) -> Option<JoinModule> {
"[joinir/trim/generic-hook] simple Case A loop detected (LoopToJoinLowerer)" "[joinir/trim/generic-hook] simple Case A loop detected (LoopToJoinLowerer)"
); );
let lowerer = LoopToJoinLowerer::new(); let lowerer = LoopToJoinLowerer::new();
if let Some(jm) = lowerer.lower_minimal_trim_case_a(target_func, &loop_form) { if let Some(jm) = lowerer.lower_case_a_for_trim(target_func, &loop_form) {
eprintln!("[joinir/trim/generic-hook] LoopToJoinLowerer produced JoinIR, returning early"); eprintln!("[joinir/trim/generic-hook] LoopToJoinLowerer produced JoinIR, returning early");
return Some(jm); return Some(jm);
} }

View File

@ -297,14 +297,12 @@ impl LoopToJoinLowerer {
} }
// ======================================== // ========================================
// Convenience methods for specific patterns // Case-A helpers for specific function patterns
// ======================================== // ========================================
/// Main.skip/1 専用の lowering /// Case-A 汎用 lowerer の「Main.skip/1 用」薄いラッパー。
/// /// 実際のロジックは `lower` に集約されている。
/// Phase 31 Step 1 の検証用メソッド。 pub fn lower_case_a_for_skip_ws(
/// 既存の `skip_ws.rs` からの移行確認に使用。
pub fn lower_minimal_skip_ws_case_a(
&self, &self,
func: &MirFunction, func: &MirFunction,
loop_form: &LoopForm, loop_form: &LoopForm,
@ -312,8 +310,9 @@ impl LoopToJoinLowerer {
self.lower(func, loop_form, Some("Main.skip/1")) self.lower(func, loop_form, Some("Main.skip/1"))
} }
/// FuncScannerBox.trim/1 専用の lowering /// Case-A 汎用 lowerer の「FuncScannerBox.trim/1 用」薄いラッパー。
pub fn lower_minimal_trim_case_a( /// 実際のロジックは `lower` に集約されている。
pub fn lower_case_a_for_trim(
&self, &self,
func: &MirFunction, func: &MirFunction,
loop_form: &LoopForm, loop_form: &LoopForm,
@ -321,8 +320,9 @@ impl LoopToJoinLowerer {
self.lower(func, loop_form, Some("FuncScannerBox.trim/1")) self.lower(func, loop_form, Some("FuncScannerBox.trim/1"))
} }
/// FuncScannerBox.append_defs/2 専用の lowering /// Case-A 汎用 lowerer の「FuncScannerBox.append_defs/2 用」薄いラッパー。
pub fn lower_minimal_append_defs_case_a( /// 実際のロジックは `lower` に集約されている。
pub fn lower_case_a_for_append_defs(
&self, &self,
func: &MirFunction, func: &MirFunction,
loop_form: &LoopForm, loop_form: &LoopForm,
@ -330,8 +330,9 @@ impl LoopToJoinLowerer {
self.lower(func, loop_form, Some("FuncScannerBox.append_defs/2")) self.lower(func, loop_form, Some("FuncScannerBox.append_defs/2"))
} }
/// Stage1UsingResolverBox.resolve_for_source/5 専用の lowering /// Case-A 汎用 lowerer の「Stage1UsingResolverBox.resolve_for_source/5 用」薄いラッパー。
pub fn lower_minimal_stage1_case_a( /// 実際のロジックは `lower` に集約されている。
pub fn lower_case_a_for_stage1_resolver(
&self, &self,
func: &MirFunction, func: &MirFunction,
loop_form: &LoopForm, loop_form: &LoopForm,

View File

@ -382,5 +382,5 @@ fn try_lower_skip_ws_generic_case_a(module: &crate::mir::MirModule) -> Option<Jo
// Phase 31: LoopToJoinLowerer 経由で JoinModule 生成 // Phase 31: LoopToJoinLowerer 経由で JoinModule 生成
let lowerer = LoopToJoinLowerer::new(); let lowerer = LoopToJoinLowerer::new();
lowerer.lower_minimal_skip_ws_case_a(target_func, &loop_form) lowerer.lower_case_a_for_skip_ws(target_func, &loop_form)
} }

View File

@ -369,7 +369,7 @@ fn lower_from_mir(module: &crate::mir::MirModule) -> Option<JoinModule> {
let params_len = target_func.params.len(); let params_len = target_func.params.len();
if params_len == 5 { if params_len == 5 {
let lowerer = LoopToJoinLowerer::new(); let lowerer = LoopToJoinLowerer::new();
if let Some(jm) = lowerer.lower_minimal_stage1_case_a(target_func, &loop_form) { if let Some(jm) = lowerer.lower_case_a_for_stage1_resolver(target_func, &loop_form) {
eprintln!( eprintln!(
"[joinir/stage1_using_resolver/generic-hook] LoopToJoinLowerer produced JoinIR, returning early" "[joinir/stage1_using_resolver/generic-hook] LoopToJoinLowerer produced JoinIR, returning early"
); );