{
t = (org.antlr.stringtemplate.language.StringTemplateAST)_t;
match(_t,ID);
_t = _t.getNextSibling();
args = (org.antlr.stringtemplate.language.StringTemplateAST)_t;
if ( _t==null ) throw new MismatchedTokenException();
_t = _t.getNextSibling();
String templateName = t.getText();
StringTemplateGroup group = self.getGroup();
StringTemplate embedded = group.getEmbeddedInstanceOf(self, templateName);
if ( embedded!=null ) {
embedded.setArgumentsAST(args);
templatesToApply.addElement(embedded);
}
break;
}
case ANONYMOUS_TEMPLATE:
{
anon = (org.antlr.stringtemplate.language.StringTemplateAST)_t;
match(_t,ANONYMOUS_TEMPLATE);
_t = _t.getNextSibling();
StringTemplate anonymous = anon.getStringTemplate();
// to properly see overridden templates, always set
// anonymous' group to be self's group
anonymous.setGroup(self.getGroup());
templatesToApply.addElement(anonymous);
break;
}
case VALUE:
{
AST __t28 = _t;
org.antlr.stringtemplate.language.StringTemplateAST tmp20_AST_in = (org.antlr.stringtemplate.language.StringTemplateAST)_t;
match(_t,VALUE);
_t = _t.getFirstChild();
n=expr(_t);
_t = _retTree;
args2 = (org.antlr.stringtemplate.language.StringTemplateAST)_t;
if ( _t==null ) throw new MismatchedTokenException();
_t = _t.getNextSibling();
StringTemplate embedded = null;
if ( n!=null ) {
String templateName = n.toString();