class Gem::RequestSet::GemDependencyAPI

def pin_gem_source(name, type = :default, source = nil)

def pin_gem_source(name, type = :default, source = nil)
  source_description =
    case type
    when :default then "(default)"
    when :path    then "path: #{source}"
    when :git     then "git: #{source}"
    when :source  then "source: #{source}"
    else               "(unknown)"
    end
  raise ArgumentError,
    "duplicate source #{source_description} for gem #{name}" if
      @gem_sources.fetch(name, source) != source
  @gem_sources[name] = source
end