class Yoda::Model::CompletionItem
Attributes
description[R]
@return [Descriptions::Base]
kind[R]
@return [Symbol]
prefix[R]
@return [String]
range[R]
@return [Parsing::Range]
Public Class Methods
new(description:, range:, kind: nil, prefix: nil)
click to toggle source
@param description [Descriptions::Base] @param range [Parsing::Range] @param kind [Symbol, nil] @param prefix [String, nil]
# File lib/yoda/model/completion_item.rb, line 20 def initialize(description:, range:, kind: nil, prefix: nil) fail ArgumentError, desctiption unless description.is_a?(Descriptions::Base) fail ArgumentError, range unless range.is_a?(Parsing::Range) fail ArgumentError, kind if !kind.nil? && !available_kinds.include?(kind) @description = description @range = range @kind = kind @prefix = prefix || '' end
Public Instance Methods
available_kinds()
click to toggle source
@return [Symbol]
# File lib/yoda/model/completion_item.rb, line 36 def available_kinds %i(method class module constant) end
edit_text()
click to toggle source
@return [String]
# File lib/yoda/model/completion_item.rb, line 31 def edit_text prefix + description.sort_text end
language_server_kind()
click to toggle source
# File lib/yoda/model/completion_item.rb, line 40 def language_server_kind case kind when :constant LanguageServer::Protocol::Constant::CompletionItemKind::VALUE when :method LanguageServer::Protocol::Constant::CompletionItemKind::METHOD when :class LanguageServer::Protocol::Constant::CompletionItemKind::CLASS when :module LanguageServer::Protocol::Constant::CompletionItemKind::MODULE else nil end end