package org.whole.lang.grammars.util;
import org.whole.lang.builders.IBuilderOperation;
import org.whole.lang.templates.AbstractTemplateFactory;
public class TestGrammar extends AbstractTemplateFactory<org.whole.lang.grammars.model.Grammar> {
public void apply(IBuilderOperation op) {
org.whole.lang.grammars.builders.IGrammarsBuilder b0 = (org.whole.lang.grammars.builders.IGrammarsBuilder) op.wGetBuilder(org.whole.lang.grammars.reflect.GrammarsLanguageKit.URI);
b0.Grammar_();
b0.Name("TestGrammar");
b0.LanguageDescriptor_();
b0.URI("http://lang.whole.org/Test");
b0.Namespace("org.whole.lang.grammars.util");
b0.Name("Test");
org.whole.lang.commons.builders.ICommonsBuilder b1 = (org.whole.lang.commons.builders.ICommonsBuilder) op.wGetBuilder(org.whole.lang.commons.reflect.CommonsLanguageKit.URI);
b1.Resolver();
b0._LanguageDescriptor();
b0.NonTerminal("A");
b1.Resolver();
b0.Productions_(0);
b0._Productions();
b0.Productions_(9);
b0.Production_();
b0.NonTerminal("A");
b0.Concatenate_(3);
b0.LiteralTerminal_();
b0.RegExp("a");
b0.Category("DELIMITER");
b0.Literal("a");
b0._LiteralTerminal();
b0.Repeat_();
b0.Size(0);
b0.Unbounded();
b1.Resolver();
b0.NonTerminal("B");
b0._Repeat();
b0.LiteralTerminal_();
b0.RegExp("b");
b0.Category("DELIMITER");
b0.Literal("b");
b0._LiteralTerminal();
b0._Concatenate();
b1.Resolver();
b0._Production();
b0.Production_();
b0.NonTerminal("B");
b0.Concatenate_(3);
b0.LiteralTerminal_();
b0.RegExp("c");
b0.Category("DELIMITER");
b0.Literal("c");
b0._LiteralTerminal();
b0.Choose_(2);
b0.NonTerminal("A");
b0.NonTerminal("C");
b0._Choose();
b0.LiteralTerminal_();
b0.RegExp("d");
b0.Category("DELIMITER");
b0.Literal("d");
b0._LiteralTerminal();
b0._Concatenate();
b1.Resolver();
b0._Production();
b0.Production_();
b0.NonTerminal("C");
b0.Concatenate_(3);
b0.LiteralTerminal_();
b0.RegExp("e");
b0.Category("DELIMITER");
b0.Literal("e");
b0._LiteralTerminal();
b0.DataTerminal_();
b0.RegExp(".*");
b0.Category("LITERAL");
b0.Format("%s");
b0._DataTerminal();
b0.LiteralTerminal_();
b0.RegExp("f");
b0.Category("DELIMITER");
b0.Literal("f");
b0._LiteralTerminal();
b0._Concatenate();
b1.Resolver();
b0._Production();
b0.Production_();
b0.NonTerminal("D");
b0.Concatenate_(3);
b0.LiteralTerminal_();
b0.RegExp("a");
b0.Category("DELIMITER");
b0.Literal("a");
b0._LiteralTerminal();
b0.Split_();
b0.BySize(5);
b0.Repeat_();
b0.Size(0);
b0.Unbounded();
b1.Resolver();
b0.NonTerminal("B");
b0._Repeat();
b0._Split();
b0.LiteralTerminal_();
b0.RegExp("b");
b0.Category("DELIMITER");
b0.Literal("b");
b0._LiteralTerminal();
b0._Concatenate();
b1.Resolver();
b0._Production();
b0.Production_();
b0.NonTerminal("DD");
b0.Concatenate_(3);
b0.LiteralTerminal_();
b0.RegExp("a");
b0.Category("DELIMITER");
b0.Literal("a");
b0._LiteralTerminal();
b0.Split_();
b0.BySize(5);
b0.Concatenate_(3);
b0.LiteralTerminal_();
b0.RegExp("a");
b0.Category("DELIMITER");
b0.Literal("a");
b0._LiteralTerminal();
b0.Repeat_();
b0.Size(0);
b0.Unbounded();
b1.Resolver();
b0.NonTerminal("B");
b0._Repeat();
b0.LiteralTerminal_();
b0.RegExp("b");
b0.Category("DELIMITER");
b0.Literal("b");
b0._LiteralTerminal();
b0._Concatenate();
b0._Split();
b0.LiteralTerminal_();
b0.RegExp("b");
b0.Category("DELIMITER");
b0.Literal("b");
b0._LiteralTerminal();
b0._Concatenate();
b1.Resolver();
b0._Production();
b0.Production_();
b0.NonTerminal("E");
b0.Concatenate_(3);
b0.LiteralTerminal_();
b0.RegExp("c");
b0.Category("DELIMITER");
b0.Literal("c");
b0._LiteralTerminal();
b0.Optional_();
b0.Choose_(2);
b0.NonTerminal("A");
b0.NonTerminal("C");
b0._Choose();
b0._Optional();
b0.LiteralTerminal_();
b0.RegExp("d");
b0.Category("DELIMITER");
b0.Literal("d");
b0._LiteralTerminal();
b0._Concatenate();
b1.Resolver();
b0._Production();
b0.Production_();
b0.NonTerminal("EE");
b0.Concatenate_(3);
b0.LiteralTerminal_();
b0.RegExp("c");
b0.Category("DELIMITER");
b0.Literal("c");
b0._LiteralTerminal();
b0.Optional_();
b0.Concatenate_(3);
b0.LiteralTerminal_();
b0.RegExp("c");
b0.Category("DELIMITER");
b0.Literal("c");
b0._LiteralTerminal();
b0.Choose_(2);
b0.NonTerminal("A");
b0.NonTerminal("C");
b0._Choose();
b0.LiteralTerminal_();
b0.RegExp("d");
b0.Category("DELIMITER");
b0.Literal("d");
b0._LiteralTerminal();
b0._Concatenate();
b0._Optional();
b0.LiteralTerminal_();
b0.RegExp("d");
b0.Category("DELIMITER");
b0.Literal("d");
b0._LiteralTerminal();
b0._Concatenate();
b1.Resolver();
b0._Production();
b0.Production_();
b0.NonTerminal("F");
b0.Concatenate_(3);
b0.LiteralTerminal_();
b0.RegExp("e");
b0.Category("DELIMITER");
b0.Literal("e");
b0._LiteralTerminal();
b0.When_();
b0.LiteralTerminal_();
b0.RegExp("a");
b0.Category("DELIMITER");
b0.Literal("a");
b0._LiteralTerminal();
b0.DataTerminal_();
b0.RegExp(".*");
b0.Category("LITERAL");
b0.Format("%s");
b0._DataTerminal();
b0._When();
b0.LiteralTerminal_();
b0.RegExp("f");
b0.Category("DELIMITER");
b0.Literal("f");
b0._LiteralTerminal();
b0._Concatenate();
b1.Resolver();
b0._Production();
b0.Production_();
b0.NonTerminal("G");
b0.Concatenate_(3);
b0.LiteralTerminal_();
b0.RegExp("e");
b0.Category("DELIMITER");
b0.Literal("e");
b0._LiteralTerminal();
b0.As_();
b0.Concatenate_(3);
b0.LiteralTerminal_();
b0.RegExp("g");
b0.Category("DELIMITER");
b0.Literal("g");
b0._LiteralTerminal();
b0.DataTerminal_();
b0.RegExp(".*");
b0.Category("LITERAL");
b0.Format("%s");
b0._DataTerminal();
b0.LiteralTerminal_();
b0.RegExp("h");
b0.Category("DELIMITER");
b0.Literal("h");
b0._LiteralTerminal();
b0._Concatenate();
b0.Name("name");
b0._As();
b0.LiteralTerminal_();
b0.RegExp("f");
b0.Category("DELIMITER");
b0.Literal("f");
b0._LiteralTerminal();
b0._Concatenate();
b1.Resolver();
b0._Production();
b0._Productions();
b0.URI("http://lang.whole.org/TestGrammar");
b0.Namespace("org.whole.lang.grammars.util");
b1.Resolver();
b1.Resolver();
b1.Resolver();
b1.Resolver();
b0._Grammar();
}
}