class Solargraph::Source::Chain

def define api_map, name_pin, locals

Returns:
  • (Array) -

Parameters:
  • locals (Array) --
  • name_pin (Pin::Base) --
  • api_map (ApiMap) --
def define api_map, name_pin, locals
  rebind_block name_pin, api_map, locals
  return [] if undefined?
  working_pin = name_pin
  links[0..-2].each do |link|
    pins = link.resolve(api_map, working_pin, locals)
    # Locals are only used when resolving the first link

    locals = []
    type = infer_first_defined(pins, working_pin, api_map)
    return [] if type.undefined?
    working_pin = Pin::ProxyType.anonymous(type)
  end
  links.last.last_context = working_pin
  links.last.resolve(api_map, working_pin, locals)
end