Antlr4.StringTemplate.TemplateGroup.DefineTemplate C# (CSharp) Method

DefineTemplate() public method

public DefineTemplate ( string name, string template, string arguments ) : CompiledTemplate
name string
template string
arguments string
return Antlr4.StringTemplate.Compiler.CompiledTemplate
        public virtual CompiledTemplate DefineTemplate(string name, string template, string[] arguments)
        {
            if (name[0] != '/')
                name = "/" + name;

            List<FormalArgument> a = new List<FormalArgument>();
            foreach (string arg in arguments)
                a.Add(new FormalArgument(arg));

            return DefineTemplate(name, new CommonToken(GroupParser.ID, name), a, template, null);
        }

Same methods

TemplateGroup::DefineTemplate ( string fullyQualifiedTemplateName, IToken nameT, List args, string template, IToken templateToken ) : CompiledTemplate
TemplateGroup::DefineTemplate ( string name, string template ) : CompiledTemplate

Usage Example

 public void TestIndirectMap()
 {
     TemplateGroup group = new TemplateGroup();
     group.DefineTemplate("a", "[<x>]", new string[] { "x" });
     group.DefineTemplate("test", "hi <names:(templateName)()>!", new string[] { "names", "templateName" });
     Template st = group.GetInstanceOf("test");
     st.Add("names", "Ter");
     st.Add("names", "Tom");
     st.Add("names", "Sumana");
     st.Add("templateName", "a");
     string expected =
         "hi [Ter][Tom][Sumana]!";
     string result = st.Render();
     Assert.AreEqual(expected, result);
 }
All Usage Examples Of Antlr4.StringTemplate.TemplateGroup::DefineTemplate