package org.whole.lang.grammars.codebase; import org.whole.lang.builders.IBuilderOperation; import org.whole.lang.templates.AbstractTemplateFactory; public class MediaWikiGrammar 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("MediaWikiGrammar"); b0.LanguageDescriptor_(); b0.URI("whole:org.whole.lang.mediawiki:MediaWiki"); b0.Namespace("org.whole.lang.mediawiki"); b0.Name("MediaWiki"); 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("Article"); b1.Resolver(); b0.Productions_(3); b0.Production_(); b0.NonTerminal("WS"); b0.LiteralTerminal_(); b0.RegExp("\\s*"); b0.Category("DELIMITER"); b0.Literal(""); b0._LiteralTerminal(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("SP"); b0.LiteralTerminal_(); b0.RegExp(" "); b0.Category("DELIMITER"); b0.Literal(" "); b0._LiteralTerminal(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("NL"); b0.LiteralTerminal_(); b0.RegExp("\\n"); b0.Category("DELIMITER"); b0.Literal("\n"); b0._LiteralTerminal(); b1.Resolver(); b0._Production(); b0._Productions(); b0.Productions_(15); b0.Production_(); b0.NonTerminal("Wiki"); b0.Concatenate_(5); b0.Production_(); b0.NonTerminal("Title"); b0.DataTerminal_(); b0.RegExp(".*"); b0.Category("LITERAL"); b0.Format("%s"); b0._DataTerminal(); b1.Resolver(); b0._Production(); b0.NewLine(); b0.Production_(); b0.NonTerminal("Authors"); b0.Repeat_(); b0.Size(1); b0.Unbounded(); b0.Space(); b0.Production_(); b0.NonTerminal("Author"); b0.DataTerminal_(); b0.RegExp(".*"); b0.Category("LITERAL"); b0.Format("%s"); b0._DataTerminal(); b1.Resolver(); b0._Production(); b0._Repeat(); b1.Resolver(); b0._Production(); b0.NewLine(); b0.Production_(); b0.NonTerminal("WikiPages"); b0.Repeat_(); b0.Size(1); b0.Unbounded(); b0.NewLine(); b0.Production_(); b0.NonTerminal("WikiPage"); b0.Concatenate_(3); b0.As_(); b0.NonTerminal("ArticleTitle"); b0.Name("title"); b0._As(); b0.Space(); b0.NonTerminal("Article"); b0._Concatenate(); b1.Resolver(); b0._Production(); b0._Repeat(); b1.Resolver(); b0._Production(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("Article"); b0.Production_(); b0.NonTerminal("Blocks"); b0.Repeat_(); b0.Size(1); b0.Unbounded(); b1.Resolver(); b0.Concatenate_(2); b0.Production_(); b0.NonTerminal("Block"); b0.Concatenate_(3); b0.Choose_(2); b0.Production_(); b0.NonTerminal("SpecialBlock"); b0.Choose_(9); b0.Production_(); b0.NonTerminal("HorizontalRule"); b0.LiteralTerminal_(); b0.RegExp("----+\\n"); b0.Category("LITERAL"); b0.Literal("----"); b0._LiteralTerminal(); b1.Resolver(); b0._Production(); b0.NonTerminal("Heading"); b0.Production_(); b0.NonTerminal("Nowiki"); b0.Concatenate_(3); b0.LiteralTerminal_(); b0.RegExp("<nowiki>"); b0.Category("DELIMITER"); b0.Literal("<nowiki>"); b0._LiteralTerminal(); b0.As_(); b0.Split_(); b0.ByDelimiter_(); b0.RegExp("</nowiki>"); b0._ByDelimiter(); b0.Production_(); b0.NonTerminal("RawText"); b0.DataTerminal_(); b0.RegExp("(?s).*"); b0.Category("LITERAL"); b0.Format("%s"); b0._DataTerminal(); b1.Resolver(); b0._Production(); b0._Split(); b0.Name("text"); b0._As(); b0.LiteralTerminal_(); b0.RegExp("</nowiki>"); b0.Category("DELIMITER"); b0.Literal("</nowiki>"); b0._LiteralTerminal(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("Pre"); b0.Concatenate_(3); b0.LiteralTerminal_(); b0.RegExp("<pre>"); b0.Category("DELIMITER"); b0.Literal("<pre>"); b0._LiteralTerminal(); b0.As_(); b0.Split_(); b0.ByDelimiter_(); b0.RegExp("</pre>"); b0._ByDelimiter(); b0.NonTerminal("RawText"); b0._Split(); b0.Name("text"); b0._As(); b0.LiteralTerminal_(); b0.RegExp("</pre>"); b0.Category("DELIMITER"); b0.Literal("</pre>"); b0._LiteralTerminal(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("SpaceBlock"); b0.Repeat_(); b0.Size(1); b0.Unbounded(); b1.Resolver(); b0.Concatenate_(2); b0.LiteralTerminal_(); b0.RegExp("\\n+ "); b0.Category("DELIMITER"); b0.Literal("\n "); b0._LiteralTerminal(); b0.Production_(); b0.NonTerminal("SpaceLine"); b0.Choose_(2); b0.Concatenate_(1); b0.NonTerminal("InlineText"); b0._Concatenate(); b0.Production_(); b0.NonTerminal("EmptyLine"); b0.Empty_(); b0.Literal(""); b0._Empty(); b1.Resolver(); b0._Production(); b0._Choose(); b1.Resolver(); b0._Production(); b0._Concatenate(); b0._Repeat(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("Template"); b0.Concatenate_(4); b0.LiteralTerminal_(); b0.RegExp("\\Q{{\\E"); b0.Category("DELIMITER"); b0.Literal("{{"); b0._LiteralTerminal(); b0.As_(); b0.NonTerminal("ArticleTitle"); b0.Name("title"); b0._As(); b0.Split_(); b0.ByDelimiter_(); b0.RegExp("}}"); b0._ByDelimiter(); b0.Concatenate_(4); b0.LiteralTerminal_(); b0.RegExp("\\Q|\\E"); b0.Category("DELIMITER"); b0.Literal("|"); b0._LiteralTerminal(); b0.Split_(); b0.ByDelimiter_(); b0.RegExp("\\|"); b0._ByDelimiter(); b0.As_(); b0.NonTerminal("Text"); b0.Name("heading"); b0._As(); b0._Split(); b0.LiteralTerminal_(); b0.RegExp("\\Q|\\E"); b0.Category("DELIMITER"); b0.Literal("|"); b0._LiteralTerminal(); b0.As_(); b0.NonTerminal("Blocks"); b0.Name("body"); b0._As(); b0._Concatenate(); b0._Split(); b0.LiteralTerminal_(); b0.RegExp("}}"); b0.Category("DELIMITER"); b0.Literal("}}"); b0._LiteralTerminal(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("List"); b0.Repeat_(); b0.Size(1); b0.Unbounded(); b0.When_(); b0.LiteralTerminal_(); b0.RegExp("\\n[:#*;]"); b0.Category("DELIMITER"); b0.Literal(""); b0._LiteralTerminal(); b0.Concatenate_(2); b0.LiteralTerminal_(); b0.RegExp("\\n"); b0.Category("DELIMITER"); b0.Literal(""); b0._LiteralTerminal(); b0.NewLine(); b0._Concatenate(); b0._When(); b0.NonTerminal("ListItem"); b0._Repeat(); b1.Resolver(); b0._Production(); b0.NonTerminal("Table"); b0.NonTerminal("Link"); b0._Choose(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("Paragraph"); b0.Repeat_(); b0.Size(1); b0.Unbounded(); b0.When_(); b0.And_(); b0.LiteralTerminal_(); b0.RegExp("\\n[^\\n]"); b0.Category("DELIMITER"); b0.Literal(""); b0._LiteralTerminal(); b0.And_(); b0.Not_(); b0.LiteralTerminal_(); b0.RegExp("\\n----"); b0.Category("DELIMITER"); b0.Literal(""); b0._LiteralTerminal(); b0._Not(); b0.And_(); b0.Not_(); b0.LiteralTerminal_(); b0.RegExp("\\n<nowiki>"); b0.Category("DELIMITER"); b0.Literal(""); b0._LiteralTerminal(); b0._Not(); b0.Not_(); b0.LiteralTerminal_(); b0.RegExp("\\n "); b0.Category("DELIMITER"); b0.Literal(""); b0._LiteralTerminal(); b0._Not(); b0._And(); b0._And(); b0._And(); b0.NonTerminal("NL"); b0._When(); b0.NonTerminal("InlineText"); b0._Repeat(); b1.Resolver(); b0._Production(); b0._Choose(); b0.NewLine(); b0.NewLine(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Optional_(); b0.When_(); b0.Not_(); b0.LiteralTerminal_(); b0.RegExp("\\n+ "); b0.Category("DELIMITER"); b0.Literal(""); b0._LiteralTerminal(); b0._Not(); b0.NonTerminal("WS"); b0._When(); b0._Optional(); b0._Concatenate(); b0._Repeat(); b1.Resolver(); b0._Production(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("ListItemOrItemBody"); b0.Choose_(2); b0.Production_(); b0.NonTerminal("ListItem"); b0.Choose_(3); b0.Production_(); b0.NonTerminal("IndentItem"); b0.Concatenate_(2); b0.LiteralTerminal_(); b0.RegExp(":"); b0.Category("DELIMITER"); b0.Literal(":"); b0._LiteralTerminal(); b0.As_(); b0.NonTerminal("ListItemOrItemBody"); b0.Name("item"); b0._As(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("EnumeratedItem"); b0.Concatenate_(2); b0.LiteralTerminal_(); b0.RegExp("#"); b0.Category("DELIMITER"); b0.Literal("#"); b0._LiteralTerminal(); b0.As_(); b0.NonTerminal("ListItemOrItemBody"); b0.Name("item"); b0._As(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("BulletItem"); b0.Concatenate_(2); b0.LiteralTerminal_(); b0.RegExp("\\Q*\\E"); b0.Category("DELIMITER"); b0.Literal("*"); b0._LiteralTerminal(); b0.As_(); b0.NonTerminal("ListItemOrItemBody"); b0.Name("item"); b0._As(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0._Choose(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("ItemBody"); b0.Choose_(2); b0.Production_(); b0.NonTerminal("DefinedTerm"); b0.Concatenate_(3); b0.LiteralTerminal_(); b0.RegExp(";"); b0.Category("DELIMITER"); b0.Literal(";"); b0._LiteralTerminal(); b0.NonTerminal("Text"); b0.Optional_(); b0.Production_(); b0.NonTerminal("Definition"); b0.Concatenate_(2); b0.LiteralTerminal_(); b0.RegExp(":"); b0.Category("DELIMITER"); b0.Literal(":"); b0._LiteralTerminal(); b0.NonTerminal("InlineText"); b0._Concatenate(); b1.Resolver(); b0._Production(); b0._Optional(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Concatenate_(2); b0.NonTerminal("WS"); b0.NonTerminal("InlineText"); b0._Concatenate(); b0._Choose(); b1.Resolver(); b0._Production(); b0._Choose(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("Heading"); b0.Choose_(6); b0.Production_(); b0.NonTerminal("Heading6"); b0.Concatenate_(3); b0.LiteralTerminal_(); b0.RegExp("======"); b0.Category("DELIMITER"); b0.Literal("======"); b0._LiteralTerminal(); b0.DataTerminal_(); b0.RegExp("[^=]+"); b0.Category("LITERAL"); b0.Format("%s"); b0._DataTerminal(); b0.LiteralTerminal_(); b0.RegExp("======"); b0.Category("DELIMITER"); b0.Literal("======"); b0._LiteralTerminal(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("Heading5"); b0.Concatenate_(3); b0.LiteralTerminal_(); b0.RegExp("====="); b0.Category("DELIMITER"); b0.Literal("====="); b0._LiteralTerminal(); b0.DataTerminal_(); b0.RegExp("[^=]+"); b0.Category("LITERAL"); b0.Format("%s"); b0._DataTerminal(); b0.LiteralTerminal_(); b0.RegExp("====="); b0.Category("DELIMITER"); b0.Literal("====="); b0._LiteralTerminal(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("Heading4"); b0.Concatenate_(3); b0.LiteralTerminal_(); b0.RegExp("===="); b0.Category("DELIMITER"); b0.Literal("===="); b0._LiteralTerminal(); b0.DataTerminal_(); b0.RegExp("[^=]+"); b0.Category("LITERAL"); b0.Format("%s"); b0._DataTerminal(); b0.LiteralTerminal_(); b0.RegExp("===="); b0.Category("DELIMITER"); b0.Literal("===="); b0._LiteralTerminal(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("Heading3"); b0.Concatenate_(3); b0.LiteralTerminal_(); b0.RegExp("==="); b0.Category("DELIMITER"); b0.Literal("==="); b0._LiteralTerminal(); b0.DataTerminal_(); b0.RegExp("[^=]+"); b0.Category("LITERAL"); b0.Format("%s"); b0._DataTerminal(); b0.LiteralTerminal_(); b0.RegExp("==="); b0.Category("DELIMITER"); b0.Literal("==="); b0._LiteralTerminal(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("Heading2"); b0.Concatenate_(3); b0.LiteralTerminal_(); b0.RegExp("=="); b0.Category("DELIMITER"); b0.Literal("=="); b0._LiteralTerminal(); b0.DataTerminal_(); b0.RegExp("[^=]+"); b0.Category("LITERAL"); b0.Format("%s"); b0._DataTerminal(); b0.LiteralTerminal_(); b0.RegExp("=="); b0.Category("DELIMITER"); b0.Literal("=="); b0._LiteralTerminal(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("Heading1"); b0.Concatenate_(3); b0.LiteralTerminal_(); b0.RegExp("="); b0.Category("DELIMITER"); b0.Literal("="); b0._LiteralTerminal(); b0.DataTerminal_(); b0.RegExp("[^=]+"); b0.Category("LITERAL"); b0.Format("%s"); b0._DataTerminal(); b0.LiteralTerminal_(); b0.RegExp("="); b0.Category("DELIMITER"); b0.Literal("="); b0._LiteralTerminal(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0._Choose(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("Table"); b0.Concatenate_(8); b0.LiteralTerminal_(); b0.RegExp("\\Q{|\\E"); b0.Category("DELIMITER"); b0.Literal("{|"); b0._LiteralTerminal(); b0.Optional_(); b0.Concatenate_(2); b0.LiteralTerminal_(); b0.RegExp(" *"); b0.Category("DELIMITER"); b0.Literal(" "); b0._LiteralTerminal(); b0.NonTerminal("Attributes"); b0._Concatenate(); b0._Optional(); b0.LiteralTerminal_(); b0.RegExp(" *"); b0.Category("DELIMITER"); b0.Literal(""); b0._LiteralTerminal(); b0.NonTerminal("NL"); b0.Optional_(); b0.As_(); b0.NonTerminal("TableCaption"); b0.Name("caption"); b0._As(); b0._Optional(); b0.As_(); b0.Production_(); b0.NonTerminal("TableRows"); b0.Repeat_(); b0.Size(1); b0.Unbounded(); b1.Resolver(); b0.Production_(); b0.NonTerminal("TableRow"); b0.Concatenate_(5); b0.LiteralTerminal_(); b0.RegExp("(\\Q|-\\E)?"); b0.Category("DELIMITER"); b0.Literal("|-"); b0._LiteralTerminal(); b0.Optional_(); b0.Concatenate_(2); b0.LiteralTerminal_(); b0.RegExp(" +"); b0.Category("DELIMITER"); b0.Literal(" "); b0._LiteralTerminal(); b0.NonTerminal("Attributes"); b0._Concatenate(); b0._Optional(); b0.LiteralTerminal_(); b0.RegExp(" *\\n?"); b0.Category("DELIMITER"); b0.Literal("\n"); b0._LiteralTerminal(); b0.As_(); b0.Production_(); b0.NonTerminal("TableColumns"); b0.Repeat_(); b0.Size(1); b0.Unbounded(); b0.When_(); b0.And_(); b0.LiteralTerminal_(); b0.RegExp("[\\n\\|!]"); b0.Category("DELIMITER"); b0.Literal(""); b0._LiteralTerminal(); b0.And_(); b0.Not_(); b0.LiteralTerminal_(); b0.RegExp("\\n\\Q|}\\E"); b0.Category("DELIMITER"); b0.Literal(""); b0._LiteralTerminal(); b0._Not(); b0.Not_(); b0.LiteralTerminal_(); b0.RegExp("\\n\\Q|-\\E"); b0.Category("DELIMITER"); b0.Literal(""); b0._LiteralTerminal(); b0._Not(); b0._And(); b0._And(); b0.LiteralTerminal_(); b0.RegExp("[\\n\\|!]"); b0.Category("DELIMITER"); b0.Literal("\n"); b0._LiteralTerminal(); b0._When(); b0.Choose_(2); b0.NonTerminal("TableData"); b0.NonTerminal("TableHeader"); b0._Choose(); b0._Repeat(); b1.Resolver(); b0._Production(); b0.Name("columns"); b0._As(); b0.NonTerminal("NL"); b0._Concatenate(); b1.Resolver(); b0._Production(); b0._Repeat(); b1.Resolver(); b0._Production(); b0.Name("rows"); b0._As(); b0.LiteralTerminal_(); b0.RegExp("\\Q|}\\E"); b0.Category("DELIMITER"); b0.Literal("|}"); b0._LiteralTerminal(); b0.NonTerminal("NL"); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("TableCaption"); b0.Concatenate_(4); b0.LiteralTerminal_(); b0.RegExp("\\|\\+[ ]*"); b0.Category("DELIMITER"); b0.Literal("|+"); b0._LiteralTerminal(); b0.Optional_(); b0.As_(); b0.When_(); b0.LiteralTerminal_(); b0.RegExp("[^\\n\\|]+\\|"); b0.Category("DELIMITER"); b0.Literal(""); b0._LiteralTerminal(); b0.Concatenate_(2); b0.NonTerminal("Attributes"); b0.LiteralTerminal_(); b0.RegExp("[ ]*\\|[ ]*"); b0.Category("DELIMITER"); b0.Literal("|"); b0._LiteralTerminal(); b0._Concatenate(); b0._When(); b0.Name("attributes"); b0._As(); b0._Optional(); b0.As_(); b0.NonTerminal("InlineText"); b0.Name("caption"); b0._As(); b0.NonTerminal("NL"); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("TableData"); b0.Concatenate_(3); b0.LiteralTerminal_(); b0.RegExp("\\|[ ]*"); b0.Category("DELIMITER"); b0.Literal("|"); b0._LiteralTerminal(); b0.Optional_(); b0.As_(); b0.When_(); b0.And_(); b0.LiteralTerminal_(); b0.RegExp("[^\\n\\|]+\\|"); b0.Category("DELIMITER"); b0.Literal(""); b0._LiteralTerminal(); b0.Not_(); b0.LiteralTerminal_(); b0.RegExp("[^\\n\\|]+\\|\\|"); b0.Category("DELIMITER"); b0.Literal(""); b0._LiteralTerminal(); b0._Not(); b0._And(); b0.Concatenate_(2); b0.NonTerminal("Attributes"); b0.LiteralTerminal_(); b0.RegExp("[ ]*\\|[ ]*"); b0.Category("DELIMITER"); b0.Literal("|"); b0._LiteralTerminal(); b0._Concatenate(); b0._When(); b0.Name("attributes"); b0._As(); b0._Optional(); b0.As_(); b0.Production_(); b0.NonTerminal("TableInlineData"); b0.Choose_(2); b0.NonTerminal("Pre"); b0.NonTerminal("InlineText"); b0._Choose(); b1.Resolver(); b0._Production(); b0.Name("data"); b0._As(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("TableHeader"); b0.Concatenate_(3); b0.LiteralTerminal_(); b0.RegExp("![ ]*"); b0.Category("DELIMITER"); b0.Literal("!"); b0._LiteralTerminal(); b0.Optional_(); b0.As_(); b0.When_(); b0.And_(); b0.LiteralTerminal_(); b0.RegExp("[^\\n\\|]+\\|"); b0.Category("DELIMITER"); b0.Literal(""); b0._LiteralTerminal(); b0.Not_(); b0.LiteralTerminal_(); b0.RegExp("[^\\n\\|]+\\|\\|"); b0.Category("DELIMITER"); b0.Literal(""); b0._LiteralTerminal(); b0._Not(); b0._And(); b0.Concatenate_(2); b0.NonTerminal("Attributes"); b0.LiteralTerminal_(); b0.RegExp("[ ]*\\|[ ]*"); b0.Category("DELIMITER"); b0.Literal("|"); b0._LiteralTerminal(); b0._Concatenate(); b0._When(); b0.Name("attributes"); b0._As(); b0._Optional(); b0.As_(); b0.NonTerminal("InlineText"); b0.Name("header"); b0._As(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("Attributes"); b0.Repeat_(); b0.Size(0); b0.Unbounded(); b0.When_(); b0.LiteralTerminal_(); b0.RegExp("[ ]+\\w"); b0.Category("DELIMITER"); b0.Literal(""); b0._LiteralTerminal(); b0.LiteralTerminal_(); b0.RegExp("[ ]+"); b0.Category("DELIMITER"); b0.Literal(" "); b0._LiteralTerminal(); b0._When(); b0.Production_(); b0.NonTerminal("Attribute"); b0.Choose_(2); b0.Production_(); b0.NonTerminal("CSSStyle"); b0.Concatenate_(4); b0.LiteralTerminal_(); b0.RegExp("style[ ]*=[ ]*"); b0.Category("DELIMITER"); b0.Literal("style="); b0._LiteralTerminal(); b0.LiteralTerminal_(); b0.RegExp("\""); b0.Category("DELIMITER"); b0.Literal("\""); b0._LiteralTerminal(); b0.Repeat_(); b0.Size(1); b0.Unbounded(); b1.Resolver(); b0.Production_(); b0.NonTerminal("CSSAttribute"); b0.Concatenate_(4); b0.As_(); b0.DataTerminal_(); b0.RegExp("[\\w\\-]+"); b0.Category("LITERAL"); b0.Format("%s"); b0._DataTerminal(); b0.Name("name"); b0._As(); b0.LiteralTerminal_(); b0.RegExp("[ ]*:[ ]*"); b0.Category("DELIMITER"); b0.Literal(":"); b0._LiteralTerminal(); b0.As_(); b0.DataTerminal_(); b0.RegExp("[^;\"]+"); b0.Category("LITERAL"); b0.Format("%s"); b0._DataTerminal(); b0.Name("value"); b0._As(); b0.LiteralTerminal_(); b0.RegExp("[ ]*;?[ ]*"); b0.Category("DELIMITER"); b0.Literal(";"); b0._LiteralTerminal(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0._Repeat(); b0.LiteralTerminal_(); b0.RegExp("\""); b0.Category("DELIMITER"); b0.Literal("\""); b0._LiteralTerminal(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("HtmlAttribute"); b0.Concatenate_(5); b0.As_(); b0.DataTerminal_(); b0.RegExp("\\w+"); b0.Category("LITERAL"); b0.Format("%s"); b0._DataTerminal(); b0.Name("name"); b0._As(); b0.LiteralTerminal_(); b0.RegExp("[ ]*=[ ]*"); b0.Category("DELIMITER"); b0.Literal("="); b0._LiteralTerminal(); b0.Empty_(); b0.Literal("\""); b0._Empty(); b0.As_(); b0.DataTerminal_(); b0.RegExp("(?:\"([^\"]*)\")|(\\S+)"); b0.Category("LITERAL"); b0.Format("%s"); b0._DataTerminal(); b0.Name("value"); b0._As(); b0.Empty_(); b0.Literal("\""); b0._Empty(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0._Choose(); b1.Resolver(); b0._Production(); b0._Repeat(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("InlineText"); b0.Repeat_(); b0.Size(1); b0.Unbounded(); b1.Resolver(); b0.Production_(); b0.NonTerminal("InlineElement"); b0.Choose_(3); b0.NonTerminal("Nowiki"); b0.Production_(); b0.NonTerminal("Link"); b0.Choose_(3); b0.Production_(); b0.NonTerminal("FileLink"); b0.Concatenate_(3); b0.LiteralTerminal_(); b0.RegExp("\\Q[[\\E"); b0.Category("DELIMITER"); b0.Literal("[["); b0._LiteralTerminal(); b0.Split_(); b0.ByDelimiter_(); b0.RegExp("]]"); b0._ByDelimiter(); b0.Concatenate_(4); b0.LiteralTerminal_(); b0.RegExp("(?i)File|Image|Media"); b0.Category("DELIMITER"); b0.Literal("File"); b0._LiteralTerminal(); b0.LiteralTerminal_(); b0.RegExp(":"); b0.Category("DELIMITER"); b0.Literal(":"); b0._LiteralTerminal(); b0.As_(); b0.DataTerminal_(); b0.RegExp("[ \\w\\.]+"); b0.Category("LITERAL"); b0.Format("%s"); b0._DataTerminal(); b0.Name("filename"); b0._As(); b0.As_(); b0.Production_(); b0.NonTerminal("FileLinkOptions"); b0.Repeat_(); b0.Size(0); b0.Unbounded(); b1.Resolver(); b0.Concatenate_(2); b0.LiteralTerminal_(); b0.RegExp("\\Q|\\E"); b0.Category("DELIMITER"); b0.Literal("|"); b0._LiteralTerminal(); b0.NonTerminal("FileLinkOption"); b0._Concatenate(); b0._Repeat(); b1.Resolver(); b0._Production(); b0.Name("options"); b0._As(); b0._Concatenate(); b0._Split(); b0.LiteralTerminal_(); b0.RegExp("]]"); b0.Category("DELIMITER"); b0.Literal("]]"); b0._LiteralTerminal(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("InternalLink"); b0.Concatenate_(3); b0.LiteralTerminal_(); b0.RegExp("\\Q[[\\E"); b0.Category("DELIMITER"); b0.Literal("[["); b0._LiteralTerminal(); b0.Split_(); b0.ByDelimiter_(); b0.RegExp("]]"); b0._ByDelimiter(); b0.Concatenate_(2); b0.Production_(); b0.NonTerminal("ArticleLink"); b0.Concatenate_(2); b0.As_(); b0.NonTerminal("ArticleTitle"); b0.Name("title"); b0._As(); b0.Optional_(); b0.As_(); b0.Concatenate_(2); b0.LiteralTerminal_(); b0.RegExp("#"); b0.Category("DELIMITER"); b0.Literal("#"); b0._LiteralTerminal(); b0.NonTerminal("ArticleSection"); b0._Concatenate(); b0.Name("section"); b0._As(); b0._Optional(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Optional_(); b0.As_(); b0.Concatenate_(2); b0.LiteralTerminal_(); b0.RegExp("\\Q|\\E"); b0.Category("DELIMITER"); b0.Literal("|"); b0._LiteralTerminal(); b0.NonTerminal("Text"); b0._Concatenate(); b0.Name("description"); b0._As(); b0._Optional(); b0._Concatenate(); b0._Split(); b0.LiteralTerminal_(); b0.RegExp("]]"); b0.Category("DELIMITER"); b0.Literal("]]"); b0._LiteralTerminal(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("ExternalLink"); b0.Concatenate_(3); b0.LiteralTerminal_(); b0.RegExp("\\Q[\\E"); b0.Category("DELIMITER"); b0.Literal("["); b0._LiteralTerminal(); b0.Split_(); b0.ByDelimiter_(); b0.RegExp("]"); b0._ByDelimiter(); b0.Concatenate_(2); b0.NonTerminal("Url"); b0.Optional_(); b0.As_(); b0.Concatenate_(2); b0.LiteralTerminal_(); b0.RegExp(" "); b0.Category("DELIMITER"); b0.Literal(" "); b0._LiteralTerminal(); b0.NonTerminal("Text"); b0._Concatenate(); b0.Name("description"); b0._As(); b0._Optional(); b0._Concatenate(); b0._Split(); b0.LiteralTerminal_(); b0.RegExp("]"); b0.Category("DELIMITER"); b0.Literal("]"); b0._LiteralTerminal(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0._Choose(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("TextWithFormatting"); b0.Choose_(2); b0.Production_(); b0.NonTerminal("Formatting"); b0.Choose_(5); b0.Production_(); b0.NonTerminal("Teletype"); b0.Concatenate_(3); b0.LiteralTerminal_(); b0.RegExp("<tt>"); b0.Category("DELIMITER"); b0.Literal("<tt>"); b0._LiteralTerminal(); b0.As_(); b0.NonTerminal("TextWithFormatting"); b0.Name("text"); b0._As(); b0.LiteralTerminal_(); b0.RegExp("</tt>"); b0.Category("DELIMITER"); b0.Literal("</tt>"); b0._LiteralTerminal(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("Deleted"); b0.Concatenate_(3); b0.LiteralTerminal_(); b0.RegExp("<del>"); b0.Category("DELIMITER"); b0.Literal("<del>"); b0._LiteralTerminal(); b0.As_(); b0.NonTerminal("TextWithFormatting"); b0.Name("text"); b0._As(); b0.LiteralTerminal_(); b0.RegExp("</del>"); b0.Category("DELIMITER"); b0.Literal("</del>"); b0._LiteralTerminal(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("LineBreak"); b0.LiteralTerminal_(); b0.RegExp("<br */>"); b0.Category("DELIMITER"); b0.Literal("<br />"); b0._LiteralTerminal(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("Bold"); b0.Concatenate_(3); b0.LiteralTerminal_(); b0.RegExp("'''"); b0.Category("DELIMITER"); b0.Literal("'''"); b0._LiteralTerminal(); b0.As_(); b0.NonTerminal("TextWithFormatting"); b0.Name("text"); b0._As(); b0.LiteralTerminal_(); b0.RegExp("'''"); b0.Category("DELIMITER"); b0.Literal("'''"); b0._LiteralTerminal(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("Italics"); b0.Concatenate_(3); b0.LiteralTerminal_(); b0.RegExp("''"); b0.Category("DELIMITER"); b0.Literal("''"); b0._LiteralTerminal(); b0.As_(); b0.NonTerminal("TextWithFormatting"); b0.Name("text"); b0._As(); b0.LiteralTerminal_(); b0.RegExp("''"); b0.Category("DELIMITER"); b0.Literal("''"); b0._LiteralTerminal(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0._Choose(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("Text"); b0.DataTerminal_(); b0.RegExp("(([^\\n\\[<'|]*('[^\\n\\[<'|])?(\\|[^\\n\\[<'|])?)+)"); b0.Category("LITERAL"); b0.Format("%s"); b0._DataTerminal(); b1.Resolver(); b0._Production(); b0._Choose(); b1.Resolver(); b0._Production(); b0._Choose(); b1.Resolver(); b0._Production(); b0._Repeat(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("FileLinkOption"); b0.Choose_(7); b0.Production_(); b0.NonTerminal("Format"); b0.Choose_(4); b0.As_(); b0.LiteralTerminal_(); b0.RegExp("border"); b0.Category("DELIMITER"); b0.Literal("border"); b0._LiteralTerminal(); b0.Name("border"); b0._As(); b0.As_(); b0.LiteralTerminal_(); b0.RegExp("frameless"); b0.Category("DELIMITER"); b0.Literal("frameless"); b0._LiteralTerminal(); b0.Name("frameless"); b0._As(); b0.As_(); b0.LiteralTerminal_(); b0.RegExp("frame"); b0.Category("DELIMITER"); b0.Literal("frame"); b0._LiteralTerminal(); b0.Name("frame"); b0._As(); b0.As_(); b0.LiteralTerminal_(); b0.RegExp("thumbnail|thumb"); b0.Category("DELIMITER"); b0.Literal("thumb"); b0._LiteralTerminal(); b0.Name("thumb"); b0._As(); b0._Choose(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("Resizing"); b0.Choose_(2); b0.Production_(); b0.NonTerminal("UpRight"); b0.LiteralTerminal_(); b0.RegExp("upright"); b0.Category("DELIMITER"); b0.Literal("upright"); b0._LiteralTerminal(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("Dimension"); b0.When_(); b0.LiteralTerminal_(); b0.RegExp("x?\\d+px"); b0.Category("DELIMITER"); b0.Literal(""); b0._LiteralTerminal(); b0.Concatenate_(2); b0.Optional_(); b0.As_(); b0.Concatenate_(2); b0.NonTerminal("IntData"); b0.LiteralTerminal_(); b0.RegExp("px"); b0.Category("DELIMITER"); b0.Literal("px"); b0._LiteralTerminal(); b0._Concatenate(); b0.Name("width"); b0._As(); b0._Optional(); b0.Optional_(); b0.As_(); b0.Concatenate_(3); b0.LiteralTerminal_(); b0.RegExp("x"); b0.Category("DELIMITER"); b0.Literal("x"); b0._LiteralTerminal(); b0.NonTerminal("IntData"); b0.LiteralTerminal_(); b0.RegExp("px"); b0.Category("DELIMITER"); b0.Literal("px"); b0._LiteralTerminal(); b0._Concatenate(); b0.Name("height"); b0._As(); b0._Optional(); b0._Concatenate(); b0._When(); b1.Resolver(); b0._Production(); b0._Choose(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("HorizontalAlignment"); b0.Choose_(4); b0.As_(); b0.LiteralTerminal_(); b0.RegExp("left"); b0.Category("DELIMITER"); b0.Literal("left"); b0._LiteralTerminal(); b0.Name("left"); b0._As(); b0.As_(); b0.LiteralTerminal_(); b0.RegExp("right"); b0.Category("DELIMITER"); b0.Literal("right"); b0._LiteralTerminal(); b0.Name("right"); b0._As(); b0.As_(); b0.LiteralTerminal_(); b0.RegExp("center"); b0.Category("DELIMITER"); b0.Literal("center"); b0._LiteralTerminal(); b0.Name("center"); b0._As(); b0.As_(); b0.LiteralTerminal_(); b0.RegExp("none"); b0.Category("DELIMITER"); b0.Literal("none"); b0._LiteralTerminal(); b0.Name("none"); b0._As(); b0._Choose(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("VerticalAlignment"); b0.Choose_(8); b0.As_(); b0.LiteralTerminal_(); b0.RegExp("baseline"); b0.Category("DELIMITER"); b0.Literal("baseline"); b0._LiteralTerminal(); b0.Name("baseline"); b0._As(); b0.As_(); b0.LiteralTerminal_(); b0.RegExp("sub"); b0.Category("DELIMITER"); b0.Literal("sub"); b0._LiteralTerminal(); b0.Name("sub"); b0._As(); b0.As_(); b0.LiteralTerminal_(); b0.RegExp("super"); b0.Category("DELIMITER"); b0.Literal("super"); b0._LiteralTerminal(); b0.Name("super"); b0._As(); b0.As_(); b0.LiteralTerminal_(); b0.RegExp("top"); b0.Category("DELIMITER"); b0.Literal("top"); b0._LiteralTerminal(); b0.Name("top"); b0._As(); b0.As_(); b0.LiteralTerminal_(); b0.RegExp("text-top"); b0.Category("DELIMITER"); b0.Literal("text-top"); b0._LiteralTerminal(); b0.Name("textTop"); b0._As(); b0.As_(); b0.LiteralTerminal_(); b0.RegExp("middle"); b0.Category("DELIMITER"); b0.Literal("middle"); b0._LiteralTerminal(); b0.Name("middle"); b0._As(); b0.As_(); b0.LiteralTerminal_(); b0.RegExp("bottom"); b0.Category("DELIMITER"); b0.Literal("bottom"); b0._LiteralTerminal(); b0.Name("bottom"); b0._As(); b0.As_(); b0.LiteralTerminal_(); b0.RegExp("text-bottom"); b0.Category("DELIMITER"); b0.Literal("text-bottom"); b0._LiteralTerminal(); b0.Name("textBottom"); b0._As(); b0._Choose(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("TargetLink"); b0.Concatenate_(3); b0.LiteralTerminal_(); b0.RegExp("link"); b0.Category("DELIMITER"); b0.Literal("link"); b0._LiteralTerminal(); b0.LiteralTerminal_(); b0.RegExp("="); b0.Category("DELIMITER"); b0.Literal("="); b0._LiteralTerminal(); b0.Optional_(); b0.As_(); b0.NonTerminal("Text"); b0.Name("target"); b0._As(); b0._Optional(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("Alt"); b0.Concatenate_(3); b0.LiteralTerminal_(); b0.RegExp("alt"); b0.Category("DELIMITER"); b0.Literal("alt"); b0._LiteralTerminal(); b0.LiteralTerminal_(); b0.RegExp("="); b0.Category("DELIMITER"); b0.Literal("="); b0._LiteralTerminal(); b0.As_(); b0.NonTerminal("Text"); b0.Name("text"); b0._As(); b0._Concatenate(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("Caption"); b0.NonTerminal("Text"); b1.Resolver(); b0._Production(); b0._Choose(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("ArticleTitle"); b0.DataTerminal_(); b0.RegExp("[ %!\"$&'\\(\\)*,\\\\+\\-\\./:;=?@^`~\\w\\x80-\\xff]+"); b0.Category("LITERAL"); b0.Format("%s"); b0._DataTerminal(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("ArticleSection"); b0.DataTerminal_(); b0.RegExp("[ %!\"$&'\\(\\)*,\\\\+\\-\\./:;=?@^`~\\w\\x80-\\xff#]+"); b0.Category("LITERAL"); b0.Format("%s"); b0._DataTerminal(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("Url"); b0.DataTerminal_(); b0.RegExp("[\\w/?;:@&=\\.$+\\-!*'\\(\\),%~#{}]+"); b0.Category("LITERAL"); b0.Format("%s"); b0._DataTerminal(); b1.Resolver(); b0._Production(); b0.Production_(); b0.NonTerminal("IntData"); b0.DataTerminal_(); b0.RegExp("\\d+"); b0.Category("DELIMITER"); b0.Format("%d"); b0._DataTerminal(); b0.DataType("INT"); b0._Production(); b0._Productions(); b0.URI("whole:org.whole.lang.mediawiki:MediaWikiGrammar"); b0.Namespace("org.whole.lang.mediawiki"); b1.Resolver(); b1.Resolver(); b1.Resolver(); b1.Resolver(); b0._Grammar(); } }