From: Owen R. <exo...@us...> - 2004-07-06 05:13:31
|
Update of /cvsroot/netreflector/NetReflector/src/NetReflector In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv17404/src/NetReflector Modified Files: NetReflector.csproj NetReflectorTypeTable.cs Added Files: XmlDocumentationGenerator.cs Log Message: support for enums in netreflector --- NEW FILE: XmlDocumentationGenerator.cs --- using System; using System.IO; using System.Xml; namespace Exortech.NetReflector { public class XmlDocumentationGenerator { private NetReflectorTypeTable table; private XmlMemberDocumentationGenerator memberGenerator; public XmlDocumentationGenerator(NetReflectorTypeTable table) : this(table, new XmlMemberDocumentationGenerator()) { } public XmlDocumentationGenerator(NetReflectorTypeTable table, XmlMemberDocumentationGenerator memberGenerator) { this.table = table; this.memberGenerator = memberGenerator; } public void Write(TextWriter writer) { Write(new XmlTextWriter(writer)); } public void Write(XmlWriter writer) { foreach (IXmlTypeSerialiser typeSerialiser in table) { writer.WriteStartElement("type"); writer.WriteElementString("name", typeSerialiser.Type.Name); writer.WriteElementString("namespace", typeSerialiser.Type.Namespace); writer.WriteElementString("reflectorName", typeSerialiser.Attribute.Name); WriteIfNotNull(writer, "description", typeSerialiser.Attribute.Description); memberGenerator.Write(writer, typeSerialiser.MemberSerialisers); writer.WriteEndElement(); } } public static void WriteIfNotNull(XmlWriter writer, string elementName, string output) { if (output != null) writer.WriteElementString(elementName, output); } } public class XmlMemberDocumentationGenerator { public virtual void Write(XmlWriter writer, IXmlMemberSerialiser[] memberSerialisers) { writer.WriteStartElement("members"); foreach (IXmlMemberSerialiser memberSerialiser in memberSerialisers) { writer.WriteStartElement("member"); writer.WriteElementString("name", memberSerialiser.ReflectorMember.Name); writer.WriteElementString("reflectorName", memberSerialiser.Attribute.Name); XmlDocumentationGenerator.WriteIfNotNull(writer, "description", memberSerialiser.Attribute.Description); writer.WriteEndElement(); } writer.WriteEndElement(); } } } Index: NetReflectorTypeTable.cs =================================================================== RCS file: /cvsroot/netreflector/NetReflector/src/NetReflector/NetReflectorTypeTable.cs,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** NetReflectorTypeTable.cs 5 Nov 2003 08:29:56 -0000 1.1 --- NetReflectorTypeTable.cs 6 Jul 2004 05:13:23 -0000 1.2 *************** *** 7,11 **** namespace Exortech.NetReflector { ! public class NetReflectorTypeTable { private Hashtable reflectorTypes = new Hashtable(); --- 7,11 ---- namespace Exortech.NetReflector { ! public class NetReflectorTypeTable : IEnumerable { private Hashtable reflectorTypes = new Hashtable(); *************** *** 76,79 **** --- 76,84 ---- return table; } + + public IEnumerator GetEnumerator() + { + return reflectorTypes.Values.GetEnumerator(); + } } } Index: NetReflector.csproj =================================================================== RCS file: /cvsroot/netreflector/NetReflector/src/NetReflector/NetReflector.csproj,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** NetReflector.csproj 5 Nov 2003 08:29:56 -0000 1.3 --- NetReflector.csproj 6 Jul 2004 05:13:22 -0000 1.4 *************** *** 2,7 **** <CSHARP ProjectType = "Local" ! ProductVersion = "7.0.9466" ! SchemaVersion = "1.0" ProjectGuid = "{6F47E988-250D-4B42-9278-07F18B3704BE}" > --- 2,7 ---- <CSHARP ProjectType = "Local" ! ProductVersion = "7.10.3077" ! SchemaVersion = "2.0" ProjectGuid = "{6F47E988-250D-4B42-9278-07F18B3704BE}" > *************** *** 17,21 **** --- 17,24 ---- DelaySign = "false" OutputType = "Library" + PreBuildEvent = "" + PostBuildEvent = "" RootNamespace = "Exortech.NetReflector" + RunPostBuildEvent = "OnBuildSuccess" StartupObject = "" > *************** *** 31,34 **** --- 34,39 ---- FileAlignment = "4096" IncrementalBuild = "true" + NoStdLib = "false" + NoWarn = "" Optimize = "false" OutputPath = "bin\Debug\" *************** *** 49,52 **** --- 54,59 ---- FileAlignment = "4096" IncrementalBuild = "false" + NoStdLib = "false" + NoWarn = "" Optimize = "true" OutputPath = "bin\Release\" *************** *** 68,71 **** --- 75,83 ---- HintPath = "..\..\WINNT\Microsoft.NET\Framework\v1.0.3705\System.XML.dll" /> + <Reference + Name = "System.Data" + AssemblyName = "System.Data" + HintPath = "C:\WINNT\Microsoft.NET\Framework\v1.1.4322\System.Data.dll" + /> </References> </Build> *************** *** 93,96 **** --- 105,113 ---- /> <File + RelPath = "XmlDocumentationGenerator.cs" + SubType = "Code" + BuildAction = "Compile" + /> + <File RelPath = "attributes\IReflectorAttribute.cs" SubType = "Code" |