class LanguageServer::Protocol::Interface::FoldingRangeClientCapabilities

Attributes

attributes[R]

Public Class Methods

new(dynamic_registration: nil, range_limit: nil, line_folding_only: nil) click to toggle source
# File lib/language_server/protocol/interface/folding_range_client_capabilities.rb, line 5
def initialize(dynamic_registration: nil, range_limit: nil, line_folding_only: nil)
  @attributes = {}

  @attributes[:dynamicRegistration] = dynamic_registration if dynamic_registration
  @attributes[:rangeLimit] = range_limit if range_limit
  @attributes[:lineFoldingOnly] = line_folding_only if line_folding_only

  @attributes.freeze
end

Public Instance Methods

dynamic_registration() click to toggle source

Whether implementation supports dynamic registration for folding range providers. If this is set to `true` the client supports the new `FoldingRangeRegistrationOptions` return value for the corresponding server capability as well.

@return [boolean]

# File lib/language_server/protocol/interface/folding_range_client_capabilities.rb, line 22
def dynamic_registration
  attributes.fetch(:dynamicRegistration)
end
line_folding_only() click to toggle source

If set, the client signals that it only supports folding complete lines. If set, client will ignore specified `startCharacter` and `endCharacter` properties in a FoldingRange.

@return [boolean]

# File lib/language_server/protocol/interface/folding_range_client_capabilities.rb, line 42
def line_folding_only
  attributes.fetch(:lineFoldingOnly)
end
range_limit() click to toggle source

The maximum number of folding ranges that the client prefers to receive per document. The value serves as a hint, servers are free to follow the limit.

@return [number]

# File lib/language_server/protocol/interface/folding_range_client_capabilities.rb, line 32
def range_limit
  attributes.fetch(:rangeLimit)
end
to_hash() click to toggle source
# File lib/language_server/protocol/interface/folding_range_client_capabilities.rb, line 48
def to_hash
  attributes
end
to_json(*args) click to toggle source
# File lib/language_server/protocol/interface/folding_range_client_capabilities.rb, line 52
def to_json(*args)
  to_hash.to_json(*args)
end