class LanguageServer::Protocol::Interface::FoldingRangeClientCapabilities
Attributes
Public Class Methods
# 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, folding_range_kind: nil, folding_range: 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[:foldingRangeKind] = folding_range_kind if folding_range_kind @attributes[:foldingRange] = folding_range if folding_range @attributes.freeze end
Public Instance Methods
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 24 def dynamic_registration attributes.fetch(:dynamicRegistration) end
Specific options for the folding range.
@return [{ collapsedText?: boolean; }]
# File lib/language_server/protocol/interface/folding_range_client_capabilities.rb, line 60 def folding_range attributes.fetch(:foldingRange) end
Specific options for the folding range kind.
@return [{ valueSet?: string[]; }]
# File lib/language_server/protocol/interface/folding_range_client_capabilities.rb, line 52 def folding_range_kind attributes.fetch(:foldingRangeKind) end
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 44 def line_folding_only attributes.fetch(:lineFoldingOnly) end
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 34 def range_limit attributes.fetch(:rangeLimit) end
# File lib/language_server/protocol/interface/folding_range_client_capabilities.rb, line 66 def to_hash attributes end
# File lib/language_server/protocol/interface/folding_range_client_capabilities.rb, line 70 def to_json(*args) to_hash.to_json(*args) end