public void DumpXml(XmlWriter writer) { writer.WriteStartElement("abc"); writer.WriteAttributeString("version", Version.ToString()); if (!string.IsNullOrEmpty(Name)) { writer.WriteAttributeString("name", Name); } //constant pool if (AbcDumpService.DumpConstPool) { writer.WriteStartElement("constants"); IntPool.DumpXml(writer); UIntPool.DumpXml(writer); DoublePool.DumpXml(writer); StringPool.DumpXml(writer); Namespaces.DumpXml(writer); NamespaceSets.DumpXml(writer); Multinames.DumpXml(writer); writer.WriteEndElement(); } Methods.DumpXml(writer); //NOTE: metadata will be dumped with traits. //_metadata.DumpXml(writer); Instances.DumpXml(writer); //NOTE: classes are dumped with instances //_classes.DumpXml(writer); Scripts.DumpXml(writer); //NOTE: bodies are dumped with methods //_methodBodies.Dump(writer); writer.WriteEndElement(); }