# class Gem::Source::Local

The local source finds gems in the current directory for fulfilling dependencies.

### Public Instance Methods

<=>(other) click to toggle source

`Local` sorts before `Gem::Source` and after `Gem::Source::Installed`

    # File lib/rubygems/source/local.rb, line 18
    def <=>(other)
      case other
      when Gem::Source::Installed,
           Gem::Source::Lock then
        -1
      when Gem::Source::Local then
        0
      when Gem::Source then
        1
      else
        nil
      end
    end

find_gem(gem_name, version = Gem::Requirement.default, prerelease = false) click to toggle source

    # File lib/rubygems/source/local.rb, line 81
    def find_gem(gem_name, version = Gem::Requirement.default, # :nodoc:
                 prerelease = false)
      load_specs :complete

      found = []

      @specs.each do |n, data|
        if n.name == gem_name
          s = data[1].spec

          if version.satisfied_by?(s.version)
            if prerelease
              found << s
            elsif !s.version.prerelease? || version.prerelease?
              found << s
            end
          end
        end
      end

      found.max_by {|s| s.version }
    end