Sha256: 00ae1340b553bd66780b63868a6d2d3e2c59f8183dd14a792dbb4d20217409af
Contents?: true
Size: 1001 Bytes
Versions: 2
Compression:
Stored size: 1001 Bytes
Contents
module Yoda module Typing class Inferencer class LoadResolver # @return [Store::Project] attr_reader :project # @param project [Store::Project] def initialize(project) @project = project end # @param path [String] # @return [String, nil] def resolve(path) path_at_project = Services::LoadablePathResolver.new.find_loadable_path(project.project_load_paths, path) return path_at_project if path_at_project found_library = libraries.find do |gem| gem.contain_requirable_file?(path) end found_library&.find_requirable_file(path) end def libraries [ # In search priority order project.dependency.loadable_gems, project.dependency.std, project.dependency.core ].flatten.map { |lib| lib.with_project_connection(project: project) } end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
yoda-language-server-0.10.1 | lib/yoda/typing/inferencer/load_resolver.rb |
yoda-language-server-0.10.0 | lib/yoda/typing/inferencer/load_resolver.rb |