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,
}