Class: Gem::Resolver::SpecSpecification

Inherits:
Specification show all
Defined in:
lib/rubygems/resolver/spec_specification.rb

Overview

The Resolver::SpecSpecification contains common functionality for Resolver specifications that are backed by a Gem::Specification.

Instance Attribute Summary

Attributes inherited from Specification

#set, #source, #spec

Instance Method Summary collapse

Methods inherited from Specification

#download, #fetch_development_dependencies, #install, #installable_platform?, #local?

Constructor Details

#initialize(set, spec, source = nil) ⇒ SpecSpecification

A SpecSpecification is created for a set for a Gem::Specification in spec. The source is either where the spec came from, or should be loaded from.


12
13
14
15
16
# File 'lib/rubygems/resolver/spec_specification.rb', line 12

def initialize(set, spec, source = nil)
  @set    = set
  @source = source
  @spec   = spec
end

Instance Method Details

#dependenciesObject

The dependencies of the gem for this specification


21
22
23
# File 'lib/rubygems/resolver/spec_specification.rb', line 21

def dependencies
  spec.dependencies
end

#full_nameObject

The name and version of the specification.

Unlike Gem::Specification#full_name, the platform is not included.


30
31
32
# File 'lib/rubygems/resolver/spec_specification.rb', line 30

def full_name
  "#{spec.name}-#{spec.version}"
end

#nameObject

The name of the gem for this specification


37
38
39
# File 'lib/rubygems/resolver/spec_specification.rb', line 37

def name
  spec.name
end

#platformObject

The platform this gem works on.


44
45
46
# File 'lib/rubygems/resolver/spec_specification.rb', line 44

def platform
  spec.platform
end

#versionObject

The version of the gem for this specification.


51
52
53
# File 'lib/rubygems/resolver/spec_specification.rb', line 51

def version
  spec.version
end