Module: Solargraph::YardMap::Directives::OverrideDirective

Defined in:
lib/solargraph/yard_map/directives/override_directive.rb

Class Method Summary collapse

Class Method Details

.closure_at(pins, position) ⇒ Pin::Closure

Parameters:

Returns:



24
25
26
# File 'lib/solargraph/yard_map/directives/override_directive.rb', line 24

def closure_at pins, position
  pins.select { |pin| pin.is_a?(Pin::Closure) and pin.location&.range&.contain?(position) }.last
end

.process_directive(source, _pins, _source_position, comment_position, directive) ⇒ Array<Pin::Base>

Parameters:

Returns:



15
16
17
18
19
# File 'lib/solargraph/yard_map/directives/override_directive.rb', line 15

def process_directive source, _pins, _source_position, comment_position, directive
  docstring = Solargraph::Source.parse_docstring(directive.tag.text.to_s).to_docstring
  location = Location.new(source.filename, Range.new(comment_position, comment_position))
  [Pin::Reference::Override.new(location, directive.tag.name.to_s, docstring.tags, source: :yard_map)]
end