0.2.0 - 複数[Rule]・中間抽象・[Repeat] リスト表現
クラス構造の制約を緩和し、文法定義をより簡潔に。
✨ 機能追加
- 1クラス複数
[Rule]— 同じクラスに複数の[Rule]を定義可能。どの規則で reduce されたかはRuleNameプロパティで判定しOnReduceでswitch。 - 中間抽象クラス — 抽象基底クラスに共通プロパティを
[Rule]で宣言し、具象サブクラスが: base(...)で初期化(readonly維持・immutable)。 [Repeat]リスト表現 —[Repeat]でIReadOnlyList<T>に展開。Min=1(既定・1回以上)/Min=0(0回以上・空リスト可)。
📝 ドキュメント
- README / grammar-reference.md を現行
[Rule]static モデルに全面更新 - NuGet 英語 README: 相対リンクを GitHub 絶対 URL に変換(publish-nuget.yml に変換ステップ追加)
🔧 サンプル
- MiniC: Cons セル(
ConsStmt/NilProgram)→[Repeat(Min=0)]に移行
✅ テスト
- 全 293 テスト合格(Plus / Star / 中間抽象 / 多段階中間抽象 /
[Repeat]+中間抽象)
Full Changelog: v0.1.0...v0.2.0