以下是一些无效的HStringTemplate
语法:
option_a = $options.a$
option_b = $options.b$
$if options.option_c_is_needed$
option_c = $option.c$
$end$
换句话说,只有在特定谓词为真时才应创建模板文件的一部分。如何通过HStringTemplate
实现目标?如果没有办法在其中执行此操作,那么哪些库可能对此有帮助?
可能有一些模拟erubis
机制,能够在模板文件中使用haskell
代码吗?
答案 0 :(得分:2)
哈马尔的评论是正确的。见下文:
*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"