1 using System;
  2 using System.Collections;
  3 
  4 public class RuleNames
  5 {
  6     static RuleNames() : instance(new RuleNames())
  7     {
  8     }
  9     public static RuleNames& Instance()
 10     {
 11         return *instance;
 12     }
 13     public nothrow RuleNames()
 14     {
 15         ruleNames.Add("XmlParser.Document");
 16         ruleNames.Add("XmlParser.Char");
 17         ruleNames.Add("XmlParser.S");
 18         ruleNames.Add("XmlParser.NameStartChar");
 19         ruleNames.Add("XmlParser.NameChar");
 20         ruleNames.Add("XmlParser.Name");
 21         ruleNames.Add("XmlParser.Names");
 22         ruleNames.Add("XmlParser.Nmtoken");
 23         ruleNames.Add("XmlParser.Nmtokens");
 24         ruleNames.Add("XmlParser.Prolog");
 25         ruleNames.Add("XmlParser.XMLDecl");
 26         ruleNames.Add("XmlParser.VersionInfo");
 27         ruleNames.Add("XmlParser.VersionNum");
 28         ruleNames.Add("XmlParser.VersionNumDQ");
 29         ruleNames.Add("XmlParser.VersionNumSQ");
 30         ruleNames.Add("XmlParser.VersionNumber");
 31         ruleNames.Add("XmlParser.EncodingDecl");
 32         ruleNames.Add("XmlParser.EncodingName");
 33         ruleNames.Add("XmlParser.EncNameDQ");
 34         ruleNames.Add("XmlParser.EncNameSQ");
 35         ruleNames.Add("XmlParser.EncName");
 36         ruleNames.Add("XmlParser.SDDecl");
 37         ruleNames.Add("XmlParser.DocTypeDecl");
 38         ruleNames.Add("XmlParser.ExternalID");
 39         ruleNames.Add("XmlParser.SystemLiteral");
 40         ruleNames.Add("XmlParser.PubidLiteral");
 41         ruleNames.Add("XmlParser.PubidChar");
 42         ruleNames.Add("XmlParser.IntSubset");
 43         ruleNames.Add("XmlParser.MarkupDecl");
 44         ruleNames.Add("XmlParser.DeclSep");
 45         ruleNames.Add("XmlParser.ElementDecl");
 46         ruleNames.Add("XmlParser.ContentSpec");
 47         ruleNames.Add("XmlParser.Children");
 48         ruleNames.Add("XmlParser.CP");
 49         ruleNames.Add("XmlParser.Choice");
 50         ruleNames.Add("XmlParser.Seq");
 51         ruleNames.Add("XmlParser.Mixed");
 52         ruleNames.Add("XmlParser.AttlistDecl");
 53         ruleNames.Add("XmlParser.AttDef");
 54         ruleNames.Add("XmlParser.AttType");
 55         ruleNames.Add("XmlParser.StringType");
 56         ruleNames.Add("XmlParser.TokenizedType");
 57         ruleNames.Add("XmlParser.EnumeratedType");
 58         ruleNames.Add("XmlParser.NotationType");
 59         ruleNames.Add("XmlParser.Enumeration");
 60         ruleNames.Add("XmlParser.DefaultDecl");
 61         ruleNames.Add("XmlParser.EntityDecl");
 62         ruleNames.Add("XmlParser.GEDecl");
 63         ruleNames.Add("XmlParser.PEDecl");
 64         ruleNames.Add("XmlParser.EntityDef");
 65         ruleNames.Add("XmlParser.PEDef");
 66         ruleNames.Add("XmlParser.EntityValue");
 67         ruleNames.Add("XmlParser.NDataDecl");
 68         ruleNames.Add("XmlParser.PEReference");
 69         ruleNames.Add("XmlParser.NotationDecl");
 70         ruleNames.Add("XmlParser.PublicID");
 71         ruleNames.Add("XmlParser.Element");
 72         ruleNames.Add("XmlParser.ETag");
 73         ruleNames.Add("XmlParser.Content");
 74         ruleNames.Add("XmlParser.CharDataChar");
 75         ruleNames.Add("XmlParser.CharData");
 76         ruleNames.Add("XmlParser.CDSect");
 77         ruleNames.Add("XmlParser.Attribute");
 78         ruleNames.Add("XmlParser.AttValueDQ");
 79         ruleNames.Add("XmlParser.AttValueSQ");
 80         ruleNames.Add("XmlParser.AttValue");
 81         ruleNames.Add("XmlParser.EntityRef");
 82         ruleNames.Add("XmlParser.DecCodePoint");
 83         ruleNames.Add("XmlParser.HexCodePoint");
 84         ruleNames.Add("XmlParser.CharRef");
 85         ruleNames.Add("XmlParser.Reference");
 86         ruleNames.Add("XmlParser.Misc");
 87         ruleNames.Add("XmlParser.Comment");
 88         ruleNames.Add("XmlParser.PI");
 89         ruleNames.Add("XmlParser.PITarget");
 90         ruleNames.Add("XmlParser.Xml");
 91         ruleNames.Add("XmlParser.Eq");
 92         ruleNames.Add("XmlParser.YesNo");
 93     }
 94     public nothrow List<string>* Get() const
 95     {
 96         return &ruleNames;
 97     }
 98     private static UniquePtr<RuleNames> instance;
 99     private List<string> ruleNames;
100 }
101 
102 public nothrow List<string>* GetRuleNameList()
103 {
104     return RuleNames.Instance().Get();
105 }
106