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 collapse

Attributes inherited from Specification

#set, #source

Instance Method Summary collapse

Methods inherited from Specification

#install, #installable_platform?

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.



14
15
16
17
18
# File 'lib/rubygems/resolver/spec_specification.rb', line 14

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

Instance Attribute Details

#specObject (readonly)

:nodoc:



7
8
9
# File 'lib/rubygems/resolver/spec_specification.rb', line 7

def spec
  @spec
end

Instance Method Details

#dependenciesObject

The dependencies of the gem for this specification



23
24
25
# File 'lib/rubygems/resolver/spec_specification.rb', line 23

def dependencies
  spec.dependencies
end

#full_nameObject

The name and version of the specification.

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



32
33
34
# File 'lib/rubygems/resolver/spec_specification.rb', line 32

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

#nameObject

The name of the gem for this specification



39
40
41
# File 'lib/rubygems/resolver/spec_specification.rb', line 39

def name
  spec.name
end

#platformObject

The platform this gem works on.



46
47
48
# File 'lib/rubygems/resolver/spec_specification.rb', line 46

def platform
  spec.platform
end

#versionObject

The version of the gem for this specification.



53
54
55
# File 'lib/rubygems/resolver/spec_specification.rb', line 53

def version
  spec.version
end