2

いくつかの無効なHStringTemplate構文を次に示します。

option_a = $options.a$
option_b = $options.b$
$if options.option_c_is_needed$
option_c = $option.c$
$end$

つまり、特定の述語が true の場合にのみ、テンプレート ファイルの一部を作成する必要があります。を介してどのように達成できHStringTemplateますか?その中でそれを行う方法がない場合、ここでどのライブラリが役立つでしょうか?

テンプレートファイル内のコードerubisを使用する機能を備えたメカニズムの類似物があるかもしれませんか?haskell

4

1 に答える 1

2

Hammarのコメントは正しいです。下記参照:

*Main Text.StringTemplate> render $ setAttribute "optSet" False $ (newSTMP "OptSet: $if(optSet)$Option Is Set$else$Option Isn't Set$endif$" :: StringTemplate String)
"OptSet: Option Isn't Set"
*Main Text.StringTemplate> render $ setAttribute "optSet" True  $ (newSTMP "OptSet: $if(optSet)$Option Is Set$else$Option Isn't Set$endif$" :: StringTemplate String)
"OptSet: Option Is Set"
于 2013-05-19T18:17:57.073 に答える