velocityで変数を代入するときの罠

velociryでは、変数を表示する際に

${hoge}

と、簡略形の

$hoge

の両方が使えます。

同様に、変数を代入する際に

$set($hoge = ${foo})

と、

$set($hoge = $foo)

のどちらも使えます。

ところが、実は

$set(${hoge} = ${foo})

$set(${hoge} = ${foo})

は使えません。

どうしてこんな仕様になっているか理由は分からないですが、この問題のせいで無限に時間を溶かしたので気をつけましょう。