protected void AddExampleElementNode(Node[] nodes) { var exampleElementNode = new ExampleElementNode(DocCommentExterior); foreach (var node in nodes) { exampleElementNode.AddNode(node); } var tagName = "summary"; exampleElementNode.StartTag = new StartTag(tagName); exampleElementNode.EndTag = new EndTag(tagName); AddNode(exampleElementNode); }
internal ParameterDocumentationComment(XmlElementSyntax parameterElement, SyntaxNode nodeToDocument, string docCommentExterior) : base(nodeToDocument, docCommentExterior) { var paramAttr = parameterElement.StartTag.Attributes .Where(attr => attr.Name.ToString().Equals("name")) .FirstOrDefault(); var paramAttrValue = paramAttr.ChildNodes().Where(n => n.IsKind(SyntaxKind.IdentifierName)) .First(); ParamName = paramAttrValue.ToString(); var textNodes = parameterElement.ChildNodes(); ExampleElementNode elt = CreateExampleElementNodeFromCommentTextNodes(textNodes); AddNode(elt); }
internal SummaryDocumentationComment(SyntaxNode nodeToDocument, string docCommentExterior) : base(nodeToDocument, docCommentExterior) { var summaryElement = GetSummaryElement(); if (summaryElement != null) { var newNodes = SyntaxFactory.List <SyntaxNode>(); var textNodes = summaryElement.ChildNodes(); ExampleElementNode elt = CreateExampleElementNodeFromCommentTextNodes(textNodes); AddNode(elt); } else { CreateNewComment(); } }
internal override void CreateNewComment() { var literalText = CreateParameterTextString(); var textToken = new LiteralTextToken(literalText); var paramTextNode = new TextNode(""); paramTextNode.AddToken(textToken); var startTag = new StartTag("param"); var nameAttribute = new Attribute("name", ParamName); startTag.Attribute = nameAttribute; var endTag = new EndTag("param"); var exampleElementNode = new ExampleElementNode(DocCommentExterior); exampleElementNode.AddNode(paramTextNode); exampleElementNode.StartTag = startTag; exampleElementNode.EndTag = endTag; AddNode(exampleElementNode); }