123456789_123456789_123456789_123456789_123456789_

Class: Bundler::Source::Metadata

Relationships & Source Files
Super Chains via Extension / Inclusion / Inheritance
Class Chain:
Instance Chain:
Inherits: Bundler::Source
Defined in: lib/bundler/source/metadata.rb

Instance Attribute Summary

Instance Method Summary

Instance Method Details

#==(other) Also known as: #eql?

[ GitHub ]

  
# File 'lib/bundler/source/metadata.rb', line 49

def ==(other)
  self.class == other.class
end

#eql?(other)

Alias for #==.

[ GitHub ]

  
# File 'lib/bundler/source/metadata.rb', line 52

alias_method :eql?, :==

#hash

[ GitHub ]

  
# File 'lib/bundler/source/metadata.rb', line 54

def hash
  self.class.hash
end

#install(spec, _opts = {})

[ GitHub ]

  
# File 'lib/bundler/source/metadata.rb', line 40

def install(spec, _opts = {})
  print_using_message "Using #{version_message(spec)}"
  nil
end

#options

[ GitHub ]

  
# File 'lib/bundler/source/metadata.rb', line 36

def options
  {}
end

#specs

[ GitHub ]

  
# File 'lib/bundler/source/metadata.rb', line 6

def specs
  @specs ||= Index.build do |idx|
    idx << Gem::Specification.new("Ruby\0", Bundler::RubyVersion.system.gem_version)
    idx << Gem::Specification.new("RubyGems\0", Gem::VERSION) do |s|
      s.required_rubygems_version = Gem::Requirement.default
    end

    if local_spec = Gem.loaded_specs["bundler"]
      raise CorruptBundlerInstallError.new(local_spec) if local_spec.version.to_s != Bundler::VERSION

      idx << local_spec
    else
      idx << Gem::Specification.new do |s|
        s.name     = "bundler"
        s.version  = VERSION
        s.license  = "MIT"
        s.platform = Gem::Platform::RUBY
        s.authors  = ["bundler team"]
        s.bindir   = "exe"
        s.homepage = "https://bundler.io"
        s.summary  = "The best way to manage your application's dependencies"
        s.executables = %w[bundle bundler]
        s.loaded_from = SharedHelpers.gemspec_path
      end
    end

    idx.each {|s| s.source = self }
  end
end

#to_s

[ GitHub ]

  
# File 'lib/bundler/source/metadata.rb', line 45

def to_s
  "the local ruby installation"
end

#version_message(spec)

[ GitHub ]

  
# File 'lib/bundler/source/metadata.rb', line 58

def version_message(spec)
  "#{spec.name} #{spec.version}"
end