arrayマクロを利用した簡単Array-of定義

Array-ofやFastArray-ofは型パラメータが必要なため記述量が多くなってしまいます。arrayマクロとfast-arrayマクロは型パラメータの記述を省略して配列を生成するためのマクロです。

arrayマクロ

このマクロは、与えられた初期値から型パラメータを推測して、適切な Array-of 配列の定義に置換されます。

|| 従来の書き方
def x = {{Array-of int} 1, 2, 3}

|| arrayマクロ利用(パラメータがintと推測されます)
|| 以下は上記と同等です。

def x = {array 1, 2, 3}

また、コンパイル時型の異なる引数が与えられた場合も、なるべく具体的な型の配列の生成を試みます。以下はサンプルです。

def x = {array {TextField}, {PasswordField}, {ComboBox}}

これは{Array-of any}ではなく、{Array-of {MultiUIValueControlFrame-of String}}となります。

fast-arrayマクロ

これはarrayマクロのFastArray-of版です。