# File lib/bundler/index.rb, line 64 def <<(spec) arr = @specs[spec.name] arr.delete_if do |s| same_version?(s.version, spec.version) && s.platform == spec.platform end arr << spec spec end
# File lib/bundler/index.rb, line 93 def ==(o) all? do |s| s2 = o[s].first and (s.dependencies & s2.dependencies).empty? end end
# File lib/bundler/index.rb, line 75 def each(&blk) @specs.values.each do |specs| specs.each(&blk) end end
# File lib/bundler/index.rb, line 29 def empty? each { return false } true end
# File lib/bundler/index.rb, line 19 def initialize_copy(o) super @cache = {} @specs = Hash.new { |h,k| h[k] = [] } o.specs.each do |name, array| @specs[name] = array.dup end end
# File lib/bundler/index.rb, line 34 def search(query) case query when Gem::Specification, RemoteSpecification, LazySpecification then search_by_spec(query) when String then @specs[query] else search_by_dependency(query) end end
# File lib/bundler/index.rb, line 42 def search_for_all_platforms(dependency, base = []) specs = @specs[dependency.name] + base wants_prerelease = dependency.requirement.prerelease? only_prerelease = specs.all? {|spec| spec.version.prerelease? } found = specs.select { |spec| dependency.matches_spec?(spec) } unless wants_prerelease || only_prerelease found.reject! { |spec| spec.version.prerelease? } end found.sort_by {|s| [s.version, s.platform.to_s == 'ruby' ? "\00"" : s.platform.to_s] } end
# File lib/bundler/index.rb, line 56 def sources @specs.values.map do |specs| specs.map{|s| s.source.class } end.flatten.uniq end
# File lib/bundler/index.rb, line 81 def use(other, override_dupes = false) return unless other other.each do |s| if (dupes = search_by_spec(s)) && dupes.any? next unless override_dupes @specs[s.name] -= dupes end @specs[s.name] << s end self end
Generated with the Darkfish Rdoc Generator 2.