private void InsertDocumentation(SDMember sdMember, SDDocumentation documentation, int navigationLevel) { if (documentation != null) { if (documentation.Summary != null) _wordTemplater.AppendMarkdown(documentation.Summary.ToMarkdown(), "MemberBody"); InsertDocumentationPart(_wordStrings.Remarks, documentation.Remarks); InsertDocumentationPart(_wordStrings.Returns, documentation.Returns); InsertParamDocumentationPart(_wordStrings.Params, documentation.Params, sdMember); InsertParamDocumentationPart(_wordStrings.TypeParams, documentation.TypeParams, sdMember); InsertParamDocumentationPart(_wordStrings.Exceptions, documentation.Exceptions, sdMember); InsertDocumentationPart(_wordStrings.Example, documentation.Example); } }
private SDDocumentation ParseDocumentation(IEnumerable<XmlDocumentationElement> docElements) { var sdDocumentation = new SDDocumentation(); foreach (var child in docElements) { switch (child.Name.ToLower()) { case "typeparam": var typeparamKey = child.GetAttribute("name") ?? "typeparam"; if (!sdDocumentation.TypeParams.ContainsKey(typeparamKey)) sdDocumentation.TypeParams.Add(typeparamKey, ParseContentTokens(child)); break; case "param": var paramKey = child.GetAttribute("name") ?? "param"; if (!sdDocumentation.Params.ContainsKey(paramKey)) sdDocumentation.Params.Add(paramKey, ParseContentTokens(child)); break; case "exception": var exKey = child.GetAttribute("cref") ?? "exception"; if (!sdDocumentation.Exceptions.ContainsKey(exKey)) sdDocumentation.Exceptions.Add(exKey, ParseContentTokens(child)); break; case "summary": sdDocumentation.Summary = ParseContentTokens(child); break; case "remarks": sdDocumentation.Remarks = ParseContentTokens(child); break; case "example": sdDocumentation.Example = ParseContentTokens(child); break; case "returns": AddResultsSection(sdDocumentation.Returns, child); break; case "seealso": sdDocumentation.SeeAlsos.Add(GetSeeRef(child)); break; } } return sdDocumentation; }
private SDDocumentation ParseDocumentation(IEnumerable<XElement> docElements, bool multilang = false) { var sdDocumentation = new SDDocumentation(); foreach (var child in docElements) { switch (child.Name.LocalName.ToLower()) { case "typeparam": var typeparamKey = child.Attribute("name")?.Value ?? "typeparam"; if (!sdDocumentation.TypeParams.ContainsKey(typeparamKey)) sdDocumentation.TypeParams.Add(typeparamKey, ParseContentTokens(child, multilang)); break; case "param": var paramKey = child.Attribute("name")?.Value ?? "param"; if (!sdDocumentation.Params.ContainsKey(paramKey)) sdDocumentation.Params.Add(paramKey, ParseContentTokens(child, multilang)); break; case "exception": var exKey = child.Attribute("cref")?.Value ?? "exception"; if (!sdDocumentation.Exceptions.ContainsKey(exKey)) sdDocumentation.Exceptions.Add(exKey, ParseContentTokens(child, multilang)); break; case "summary": sdDocumentation.Summary = ParseContentTokens(child, multilang); break; case "remarks": sdDocumentation.Remarks = ParseContentTokens(child, multilang); break; case "example": sdDocumentation.Example = ParseContentTokens(child, multilang); break; case "returns": AddResultsSection(sdDocumentation.Returns, child, multilang); break; case "seealso": var seeToken = new SDSeeToken(child.ToString()); _seeTokens.Add(seeToken); sdDocumentation.SeeAlsos.Add(seeToken); break; } } return sdDocumentation; }