/// <summary> /// Converts the /// </summary> /// <param name="assembly">The assembly associated with the member being documented.</param> /// <param name="file">The xml comment file to read the member comments.</param> /// <param name="crefPathToMember">The CRef path to the Member.</param> /// <returns>A string containing the documentation.</returns> public static string Convert(AssemblyDef assembly, ICommentSource file, CRefPath crefPathToMember) { StringBuilder text = new StringBuilder(); XmlCodeComment comment = file.GetComment(crefPathToMember); if (comment != XmlCodeComment.Empty) { SummaryXmlCodeElement summary = (SummaryXmlCodeElement)comment.Elements.Find(o => o is SummaryXmlCodeElement); if (summary != null) { foreach (XmlCodeElement current in summary.Elements) { PlainTextSummaryConverter.ConvertElement(assembly, current, text); } } } return(text.ToString()); }
/// <summary> /// Renders the XML for the namespace to the specified <paramref name="writer"/>. /// </summary> /// <param name="writer">The writer.</param> public override void Render(System.Xml.XmlWriter writer) { writer.WriteStartElement("namespace"); writer.WriteAttributeString("id", AssociatedEntry.Key.ToString()); writer.WriteAttributeString("subId", AssociatedEntry.SubKey); WriteCref(AssociatedEntry, writer); writer.WriteStartElement("name"); writer.WriteAttributeString("safename", Exporter.CreateSafeName(_member.Key)); writer.WriteString($"{_member.Key} Namespace"); writer.WriteEndElement(); foreach (Entry current in AssociatedEntry.Children) { writer.WriteStartElement("parent"); writer.WriteAttributeString("name", current.Name); writer.WriteAttributeString("key", current.Key.ToString()); writer.WriteAttributeString("type", ReflectionHelper.GetType((TypeDef)current.Item)); writer.WriteAttributeString("visibility", ReflectionHelper.GetVisibility(current.Item)); WriteCref(current, writer); // write the summary text for the current member XmlCodeComment comment = _xmlComments.GetComment(new CRefPath((TypeDef)current.Item)); if (comment != null && comment.Elements != null) { SummaryXmlCodeElement summary = comment.Elements.Find( p => p is SummaryXmlCodeElement ) as SummaryXmlCodeElement; if (summary != null) { Serialize(summary, writer); } } writer.WriteEndElement(); } writer.WriteEndElement(); }