2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

HaxeAdvent Calendar 2015

Day 4

hxmlファイルに書くコンパイルオプションで重複する記述を省略する

Posted at

Haxeではコンパイルオプションをhxmlというファイルに記述しておくことができます。

Haxeはクロスプラットフォームに向けてコンパイルを行うことが出来るため、
このhxmlファイルに複数のターゲットを記述するケースがあります。

複数のターゲットを記述する例
# jsにコンパイル
-main Main
-lib nanika
-js main.js

--next

# pythonにコンパイル
-main Main
-lib nanika
-python main.py

この時、-main-libをターゲット毎に書くのは冗長です。

これを解決するために--eachというオプションを利用出来ます。
--eachオプションを利用すると以下のように簡潔に記述することが出来るようになります。

--eachを使って簡潔にしたもの
# 共通のオプションを定義
-main Main
-lib nanika

--each

# jsにコンパイル
-js main.js

--next

# pythonにコンパイル
-python main.py

--eachを記述した後に、書かれるブロック(--nextが登場するまでの区切り)に頭で定義したオプションが引き継がれるようになります。

リソースの埋め込みなどをコンパイルオプションに書き出すと、出力ターゲット毎に同じ記述が増え、変更などを行う際につまらないミスの原因にもなるので、覚えておくと便利なオプションですね。

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?