StackOverflowでgppなるものが紹介されていたのでそれを使ってみる事にした。 aptで入れられるのもポイントが高い。 上記ページは使い方の説明がちょっと間違っていて、以下のように書くとproductionモードのみで機能する関数を定義できる。
#define release
#ifdef release
copyGuard();
#else
console.log(foo);
#endif
以下のコマンドを実行すると、#ifdef 周りを処理してくれたJavaScriptコードを生成してくれる。 あとはこのファイルを普段通り使えば良い。
gpp test.js -Drelease > test.release.js
地味にもう1つハマりポイントがあって、同一ファイルへの書き出しはできない。 以下のように別ファイルに書き出してから戻す必要がある。
gpp test.js -Drelease > test.js.gpp
mv test.js.gpp test.js
使い方がわかれば非常に良い感じに使えるツール。 JavaScript以外の #ifdef に対応していない言語にも使えるので、応用範囲も広い。
0 件のコメント:
コメントを投稿