なんちゃってPascalを作ってみる(3)
こんにちは。前々回の自動投稿をセットしていたつもりでしたが、なぜか失敗していて実際の投稿は遅れてしまいました。
さて、前回はデザインパターンのうち、Compositeパターンを取り上げました。
今回は抽象構文木(Abstract Syntax Tree:AST)をCompositeパターンを使って概略を作っていこうと思います。
astEntryクラス
前回のEntryクラスを参考に、葉も節も扱えるastEntryクラスを作ってみます。
astがついているのは、構文抽象木のASTを作るつもりということで付けています。
まだ、全体像をつかめていないので、astEntry(仮)クラスとしておきます。
ほとんど前回のEntryクラスと同じということは気にしないでください。
astLeafクラス
次に葉にあたるクラスを作ります。
前回のCompositeパターンでは、_elementはstringでしたが、今回はtokenとして定義しています。
違いはこの程度かな。
astNodeクラス
次に節にあたるクラスを作ります。
_elementがastEntryのリストになった程度の違いでしょうか。
週刊マンガでほとんどストーリーが進展しないで終わってしまう感じですが、今回はこれでおしまいにします。
それではまた。
ディスカッション
コメント一覧
まだ、コメントがありません