Class: LSP::DocumentSymbolClientCapabilities

Inherits:
LSPBase
  • Object
show all
Defined in:
lib/lsp/lsp_protocol.rb

Overview

export interface DocumentSymbolClientCapabilities {

/**
 * Whether document symbol supports dynamic registration.
 */
dynamicRegistration?: boolean;
/**
 * Specific capabilities for the `SymbolKind`.
 */
symbolKind?: {
    /**
     * The symbol kind values the client supports. When this
     * property exists the client also guarantees that it will
     * handle values outside its set gracefully and falls back
     * to a default value when unknown.
     *
     * If this property is not present the client only supports
     * the symbol kinds from `File` to `Array` as defined in
     * the initial version of the protocol.
     */
    valueSet?: SymbolKind[];
};
/**
 * The client support hierarchical document symbols.
 */
hierarchicalDocumentSymbolSupport?: boolean;

}

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from LSPBase

#to_h, #to_json

Constructor Details

#initialize(initial_hash = nil) ⇒ DocumentSymbolClientCapabilities

Returns a new instance of DocumentSymbolClientCapabilities.



1701
1702
1703
1704
# File 'lib/lsp/lsp_protocol.rb', line 1701

def initialize(initial_hash = nil)
  super
  @optional_method_names = i[dynamicRegistration symbolKind hierarchicalDocumentSymbolSupport]
end

Instance Attribute Details

#dynamicRegistrationObject

type: boolean # type: {



1686
1687
1688
# File 'lib/lsp/lsp_protocol.rb', line 1686

def dynamicRegistration
  @dynamicRegistration
end

#hierarchicalDocumentSymbolSupportObject

/**

     * The symbol kind values the client supports. When this
     * property exists the client also guarantees that it will
     * handle values outside its set gracefully and falls back
     * to a default value when unknown.
     *
     * If this property is not present the client only supports
     * the symbol kinds from `File` to `Array` as defined in
     * the initial version of the protocol.
     */
    valueSet?: SymbolKind[];
}


1699
1700
1701
# File 'lib/lsp/lsp_protocol.rb', line 1699

def hierarchicalDocumentSymbolSupport
  @hierarchicalDocumentSymbolSupport
end

#symbolKindObject

type: boolean # type: {



1686
1687
1688
# File 'lib/lsp/lsp_protocol.rb', line 1686

def symbolKind
  @symbolKind
end

Instance Method Details

#from_h!(value) ⇒ Object



1706
1707
1708
1709
1710
1711
1712
# File 'lib/lsp/lsp_protocol.rb', line 1706

def from_h!(value)
  value = {} if value.nil?
  self.dynamicRegistration = value['dynamicRegistration'] # Unknown type
  self.symbolKind = value['symbolKind'] # Unknown type
  self.hierarchicalDocumentSymbolSupport = value['hierarchicalDocumentSymbolSupport'] # Unknown type
  self
end