public static string GenerateFromString(string configText)
 {
     XmlParserConfig config = new XmlParserConfig(configText);
     return GenerateCore(config);
 }
 static CodeNamespace GenerateParser(XmlParserConfig config)
 {
     CodeNamespace ns = new CodeNamespace(config.Namespace);
     ns.AddImports("System", "System.Collections.Generic", "System.IO", "System.Xml", "System.Xml.Linq");
     foreach(Class @class in config.Classes)
         GenerateClass(ns, @class);
     return ns;
 }
 public static string Generate(string configFilename)
 {
     using(Stream stream = new FileStream(configFilename, FileMode.Open)) {
         XmlParserConfig config = new XmlParserConfig(stream);
         return GenerateCore(config);
     }
 }
 static string GenerateCore(XmlParserConfig config)
 {
     CodeNamespace ns = GenerateParser(config);
     return GenerateCode(ns);
 }