class Solargraph::Source::Chain::Call
def resolve api_map, name_pin, locals
-
locals(::Array) -- -
name_pin(Pin::Closure) -- name_pin.binder should give us the object on which 'word' will be invoked -
api_map(ApiMap) --
def resolve api_map, name_pin, locals return super_pins(api_map, name_pin) if word == 'super' return yield_pins(api_map, name_pin) if word == 'yield' found = if head? locals.select { |p| p.name == word } else [] end return inferred_pins(found, api_map, name_pin, locals) unless found.empty? pins = name_pin.binder.each_unique_type.flat_map do |context| ns = context.namespace == '' ? '' : context.namespace_type.tag api_map.get_method_stack(ns, word, scope: context.scope) end return [] if pins.empty? inferred_pins(pins, api_map, name_pin, locals) end