Chiharu の日記

絵描き C/C++ プログラマーの日記です。

ctoxmi - C to XMI

cparser パッケージ 〜レキサー実装完了

先日の日記の続き。 レキサーの実装を完了しました。ダウンロードはこちらから。意外とすんなり実装できました。また、実装中に一部のクラス構成を修正しました。正規表現と文字列比較の切り替えをコードから自明な感じにしてみました。 実装については 1 行…

cparser パッケージ 〜レキサー設計

先日の日記の続き。 こちらのサイトを眺めていたら、レキサーを自作できそうな気がしてきたので、設計してみました。 汎用部品をクラス図に起こしてみました。C++11 だと std::regex があるため結構気軽に文字列解析できますね。cparser::Lexer::Lexer() に…

cmeta パッケージ 〜実装完了

先日の日記の続き。 とりあえず、クラス図に起こした分だけ C++ で実装しました。ダウンロードはこちらから。実装中、クラス図中のコピー可能なすべてのクラスのメンバに swap が不足していることに気づきました。あぁ。例外安全。最近 C 言語ばかり触ってい…

C to XMI 〜まずはメタ構造を

最近、ある種のコーディング規約で実装された OOP っぽい C コードをクラス図へリバースしたい状況があって、ずっと手作業をしていたのですが、いい加減、面倒くさくなってきて、ツールを自作しようかどうか悩み始めています。 さしあたって、C コードから静…