feat(joinir): Phase 213-2 Step 2-2 & 2-3 Data structure extensions

Extended PatternPipelineContext and CarrierUpdateInfo for Pattern 3 AST-based generalization.

Changes:
1. PatternPipelineContext:
   - Added loop_condition: Option<ASTNode>
   - Added loop_body: Option<Vec<ASTNode>>
   - Added loop_update_summary: Option<LoopUpdateSummary>
   - Updated build_pattern_context() for Pattern 3

2. CarrierUpdateInfo:
   - Added then_expr: Option<ASTNode>
   - Added else_expr: Option<ASTNode>
   - Updated analyze_loop_updates() with None defaults

Status: Phase 213-2 Steps 2-2 & 2-3 complete
Next: Create Pattern3IfAnalyzer to extract if statement and populate update summary
This commit is contained in:
nyash-codex
2025-12-10 00:01:53 +09:00
parent 577b5b01d5
commit d7805e5974
138 changed files with 3529 additions and 378 deletions

View File

@ -83,16 +83,16 @@ print("Length: " + len) # 期待: 11, 実際: 0
./tools/plugin-tester/target/release/plugin-tester check --config nyash.toml
# テスト実行
NYASH_ENTRY_ALLOW_TOPLEVEL_MAIN=1 ./target/release/nyash test_stringbox.hako
NYASH_ENTRY_ALLOW_TOPLEVEL_MAIN=1 ./target/release/hakorune test_stringbox.hako
```
### デバッグ情報収集
```bash
# 詳細ログ
NYASH_CLI_VERBOSE=1 ./target/release/nyash test_stringbox.hako
NYASH_CLI_VERBOSE=1 ./target/release/hakorune test_stringbox.hako
# MIRダンプ確認
./target/release/nyash --dump-mir test_stringbox.hako
./target/release/hakorune --dump-mir test_stringbox.hako
# 具体的な問題箇所の確認
rg "M_BIRTH" plugins/nyash-string-plugin/src/lib.rs # 該当箇所を特定
@ -114,4 +114,4 @@ rg "M_BIRTH" plugins/nyash-string-plugin/src/lib.rs # 該当箇所を特定
2. 効率的なテスト戦略の提案
3. プラグインメソッド呼び出しのデバッグ手法
よろしくお願いします!
よろしくお願いします!