public override string ToString()
{
if (impl == null)
return "bad-template()";
string args = string.Empty;
if (impl.FormalArguments != null)
args = string.Join(",", impl.FormalArguments.Select(i => i.Name).ToArray());
string name = Name;
if (this.impl.IsRegion)
name = "@" + TemplateGroup.GetUnmangledTemplateName(name);
return string.Format("{0}({1})", name, args);
}