Not seeing any errors in log. Corrected to 2 single quotes. Same
behavior. I was hoping that $input in each iteration will not be empty
string, but rather 'foo', 'bar' etc (that's the way 1.5 behaves). Why
would setting a value of $type in parent (foreach) scope would affect
the value of the local $input argument?

String template = "#set($global_types=['foo', 'bar', 'yok',
'dar'])#macro( showBox $input)#set($type = '')$input#end"+
                "#macro(showBoxes $types)#foreach($type in
$types)#showBox($type)#end#end#showBoxes($global_types)";


On Thu, May 3, 2012 at 2:33 PM, Nathan Bubna <nbu...@gmail.com> wrote:
> Anything in the log?  #set($type = \"\") is not valid syntax, i think.
>  I'm not even sure what value you want $type to have.  Two double
> quotes or an empty string?
>
> On Thu, May 3, 2012 at 11:17 AM, Boris Partensky
> <boris.parten...@gmail.com> wrote:
>> Hi, I have this use case which involves 2 nested macros and a foreach.
>> I am trying to understand why this template evaluates to empty string
>> on 1.7, and to "foobaryokdar" - on 1.5.
>>
>>
>> String template = "#set($global_types=['foo', 'bar', 'yok',
>> 'dar'])#macro( showBox $input)#set($type = \"\")$input#end"+
>>                "#macro(showBoxes $types)#foreach($type in
>> $types)#showBox($type)#end#end#showBoxes($global_types)";
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: user-unsubscr...@velocity.apache.org
>> For additional commands, e-mail: user-h...@velocity.apache.org
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscr...@velocity.apache.org
> For additional commands, e-mail: user-h...@velocity.apache.org
>

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscr...@velocity.apache.org
For additional commands, e-mail: user-h...@velocity.apache.org

Reply via email to