|
' Licensed to the .NET Foundation under one or more agreements.
' The .NET Foundation licenses this file to you under the MIT license.
' See the LICENSE file in the project root for more information.
Imports Microsoft.CodeAnalysis.LanguageService
Imports Microsoft.CodeAnalysis.VisualBasic.Syntax
Namespace Microsoft.CodeAnalysis.VisualBasic.LanguageService
Friend Class VisualBasicDocumentationCommentService
Inherits AbstractDocumentationCommentService(Of
DocumentationCommentTriviaSyntax,
XmlNodeSyntax,
XmlNodeSyntax,
CrefReferenceSyntax,
XmlElementSyntax,
XmlTextSyntax,
XmlEmptyElementSyntax,
XmlCrefAttributeSyntax,
XmlNameAttributeSyntax,
XmlAttributeSyntax)
Public Shared ReadOnly Instance As New VisualBasicDocumentationCommentService()
Private Sub New()
MyBase.New(VisualBasicSyntaxFacts.Instance)
End Sub
Protected Overrides Function GetIdentifier(xmlName As XmlNameAttributeSyntax) As SyntaxToken
Return xmlName.Reference.Identifier
End Function
Protected Overrides Function GetCref(xmlCref As XmlCrefAttributeSyntax) As CrefReferenceSyntax
Return xmlCref.Reference
End Function
Protected Overrides Function GetAttributes(xmlEmpty As XmlEmptyElementSyntax) As SyntaxList(Of XmlNodeSyntax)
Return xmlEmpty.Attributes
End Function
Protected Overrides Function GetTextTokens(xmlText As XmlTextSyntax) As SyntaxTokenList
Return xmlText.TextTokens
End Function
Protected Overrides Function GetTextTokens(xmlTextAttribute As XmlAttributeSyntax) As SyntaxTokenList
Dim value = TryCast(xmlTextAttribute.Value, XmlStringSyntax)
Return If(value Is Nothing, Nothing, value.TextTokens)
End Function
Protected Overrides Function GetName(xmlElement As XmlElementSyntax) As SyntaxNode
Return xmlElement.StartTag.Name
End Function
End Class
End Namespace
|