タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

cppとboostに関するtokuhiromのブックマーク (1)

  • Spirit.Qi で MediaWiki の Wikitext のパーサを実装した

    入力に markup を取って データ構造(ASTって言うのかな)を出力するライブラリです。 URLは以下。 (この記事の執筆時点での最新版) (GitHub上のHEAD) 僕が作っている saya という共通ライブラリの一部として実装してありまして、 細かい部分で依存性があるので、切り離すのはちょっと難しいかもしれません。 が、Spirit.Qiを使った複雑な文法のパーサの1実装として、参考に(?)なりましたら幸いです。 以下、実装の大まかな解説です。 (1) Spirit.Qi における 「ネストした」文法 の実装 基的には boost::variant に投げれば、それだけで大丈夫です。 特に複雑なことをする必要はありません。 セマンティックアクションで [_a = _1] などの代入をする時に型を意識しましょう。 (2) パーサ上のスタックの必要性 複雑な構文になってくる

    tokuhirom
    tokuhirom 2013/06/27
    Notes about Spirit.Qi
  • 1