File: Protocol\CompletionItemKind.cs
Web Access
Project: src\src\LanguageServer\Protocol\Microsoft.CodeAnalysis.LanguageServer.Protocol.csproj (Microsoft.CodeAnalysis.LanguageServer.Protocol)
// 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.
 
namespace Roslyn.LanguageServer.Protocol
{
    /// <summary>
    /// Enum values for completion item kinds.
    /// <para>
    /// See the <see href="https://microsoft.github.io/language-server-protocol/specifications/specification-current/#completionItemKind">Language Server Protocol specification</see> for additional information.
    /// </para>
    /// </summary>
    internal enum CompletionItemKind
    {
        /// <summary>
        /// Value to use when no kind was provided.
        /// </summary>
        None = 0,
 
        // LSP Spec v3.16:
 
        /// <summary>
        /// Text.
        /// </summary>
        Text = 1,
 
        /// <summary>
        /// Method.
        /// </summary>
        Method = 2,
 
        /// <summary>
        /// Function.
        /// </summary>
        Function = 3,
 
        /// <summary>
        /// Constructor.
        /// </summary>
        Constructor = 4,
 
        /// <summary>
        /// Field.
        /// </summary>
        Field = 5,
 
        /// <summary>
        /// Variable.
        /// </summary>
        Variable = 6,
 
        /// <summary>
        /// Class.
        /// </summary>
        Class = 7,
 
        /// <summary>
        /// Interface.
        /// </summary>
        Interface = 8,
 
        /// <summary>
        /// Module.
        /// </summary>
        Module = 9,
 
        /// <summary>
        /// Property.
        /// </summary>
        Property = 10,
 
        /// <summary>
        /// Unit.
        /// </summary>
        Unit = 11,
 
        /// <summary>
        /// Value.
        /// </summary>
        Value = 12,
 
        /// <summary>
        /// Enum.
        /// </summary>
        Enum = 13,
 
        /// <summary>
        /// Keyword.
        /// </summary>
        Keyword = 14,
 
        /// <summary>
        /// Snippet.
        /// </summary>
        Snippet = 15,
 
        /// <summary>
        /// Color.
        /// </summary>
        Color = 16,
 
        /// <summary>
        /// File.
        /// </summary>
        File = 17,
 
        /// <summary>
        /// Reference.
        /// </summary>
        Reference = 18,
 
        /// <summary>
        /// Folder.
        /// </summary>
        Folder = 19,
 
        /// <summary>
        /// EnumMember.
        /// </summary>
        EnumMember = 20,
 
        /// <summary>
        /// Constant.
        /// </summary>
        Constant = 21,
 
        /// <summary>
        /// Struct.
        /// </summary>
        Struct = 22,
 
        /// <summary>
        /// Event.
        /// </summary>
        Event = 23,
 
        /// <summary>
        /// Operator.
        /// </summary>
        Operator = 24,
 
        /// <summary>
        /// TypeParameter.
        /// </summary>
        TypeParameter = 25,
 
        // Kinds custom to VS, starting with index 118115 to avoid collisions with other clients's custom kinds.
 
        /// <summary>
        /// Macro.
        /// </summary>
        /// <remarks>Specific to VS</remarks>
        Macro = 118115 + 0,
 
        /// <summary>
        /// Namespace.
        /// </summary>
        /// <remarks>Specific to VS</remarks>
        Namespace = 118115 + 1,
 
        /// <summary>
        /// Template.
        /// </summary>
        /// <remarks>Specific to VS</remarks>
        Template = 118115 + 2,
 
        /// <summary>
        /// TypeDefinition.
        /// </summary>
        /// <remarks>Specific to VS</remarks>
        TypeDefinition = 118115 + 3,
 
        /// <summary>
        /// Union.
        /// </summary>
        /// <remarks>Specific to VS</remarks>
        Union = 118115 + 4,
 
        /// <summary>
        /// Delegate.
        /// </summary>
        Delegate = 118115 + 5,
 
        /// <summary>
        /// TagHelper.
        /// </summary>
        /// <remarks>Specific to VS</remarks>
        TagHelper = 118115 + 6,
 
        /// <summary>
        /// ExtensionMethod.
        /// </summary>
        /// <remarks>Specific to VS</remarks>
        ExtensionMethod = 118115 + 7,
 
        /// <summary>
        /// Element.
        /// </summary>
        /// <remarks>Specific to VS</remarks>
        Element = 118115 + 8,
 
        /// <summary>
        /// LocalResource.
        /// </summary>
        /// <remarks>Specific to VS</remarks>
        LocalResource = 118115 + 9,
 
        /// <summary>
        /// SystemResource.
        /// </summary>
        /// <remarks>Specific to VS</remarks>
        SystemResource = 118115 + 10,
 
        /// <summary>
        /// CloseElement.
        /// </summary>
        /// <remarks>Specific to VS</remarks>
        CloseElement = 118115 + 11,
    }
}