Repository: dotnet/aspnetcore
File: src/OpenApi/gen/XmlComments/XmlComment.cs (C#)

Code before:
        {
            return;
        }

        var attributeName = DocumentationCommentXmlNames.CrefAttributeName;

        var nodes = node.XPathSelectElements($"//{elementName}[@{attributeName}]").ToArray();
        foreach (var item in nodes)
        {
            var cref = item.Attribute(attributeName).Value;
            if (string.IsNullOrEmpty(cref))
            {
                continue;
            }

            var symbol = DocumentationCommentId.GetFirstSymbolForDeclarationId(cref, compilation);
            if (symbol is not null)
            {
                var type = symbol.ToDisplayString(SymbolDisplayFormat.MinimallyQualifiedFormat);
                item.ReplaceWith(new XText(type));
            }
        }
    }

    /// <summary>
    /// Resolves the links in the XML documentation into type names.
    /// </summary>
    /// <param name="node">The target node to process crefs in.</param>
    /// <param name="elementName">The node type to process crefs for, can be `see` or `seealso`.</param>
    private static void ResolveLangKeyword(XNode node, string elementName)
    {
        if (node == null || string.IsNullOrEmpty(elementName))
        {
            return;
        }

        var attributeName = DocumentationCommentXmlNames.LangwordAttributeName;

        var nodes = node.XPathSelectElements($"//{elementName}[@{attributeName}]").ToArray();
        foreach (var item in nodes)
        {
            var langword = item.Attribute(attributeName).Value;
            if (string.IsNullOrEmpty(langword))
            {
                continue;
            }

            item.ReplaceWith(new XText($"`{langword}`"));
        }
    }


Review comment (suggestion):
```suggestion
    /// Resolves the links in the XML documentation into language keywords.
```

Code after:
        {
            return;
        }

        var attributeName = DocumentationCommentXmlNames.CrefAttributeName;

        var nodes = node.XPathSelectElements($"//{elementName}[@{attributeName}]").ToArray();
        foreach (var item in nodes)
        {
            var cref = item.Attribute(attributeName).Value;
            if (string.IsNullOrEmpty(cref))
            {
                continue;
            }

            var symbol = DocumentationCommentId.GetFirstSymbolForDeclarationId(cref, compilation);
            if (symbol is not null)
            {
                var type = symbol.ToDisplayString(SymbolDisplayFormat.MinimallyQualifiedFormat);
                item.ReplaceWith(new XText(type));
            }
        }
    }

    /// <summary>
    /// Resolves the links in the XML documentation into language keywords.
    /// </summary>
    /// <param name="node">The target node to process crefs in.</param>
    /// <param name="elementName">The node type to process langwords for, can be `see` or `seealso`.</param>
    private static void ResolveLangKeyword(XNode node, string elementName)
    {
        if (node == null || string.IsNullOrEmpty(elementName))
        {
            return;
        }

        var attributeName = DocumentationCommentXmlNames.LangwordAttributeName;

        var nodes = node.XPathSelectElements($"//{elementName}[@{attributeName}]").ToArray();
        foreach (var item in nodes)
        {
            var langword = item.Attribute(attributeName).Value;
            if (string.IsNullOrEmpty(langword))
            {
                continue;
            }

            item.ReplaceWith(new XText($"`{langword}`"));
        }
    }