/**
* Parse a template foreach block (<code>"#foreach...#end</code>).
*/
final public void p_template_foreach(Events events) throws ParseException {
TemplateFor event = null;
jj_consume_token(T_TEMPLATE_FOREACH);
pushState(EXPRESSION);
event = new TemplateFor(this, p_expression_data());
popState();
p_block(event);
jj_consume_token(T_TEMPLATE_END);
events.append(event);
}