Class: Gem::DependencyResolver::IndexSpecification

Inherits:
Object
  • Object
show all
Defined in:
lib/rubygems/dependency_resolver.rb

Overview

Represents a possible Specification object returned from IndexSet. Used to delay needed to download full Specification objects when only the name and version are needed.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(set, name, version, source, plat) ⇒ IndexSpecification

Returns a new instance of IndexSpecification.



152
153
154
155
156
157
158
159
160
# File 'lib/rubygems/dependency_resolver.rb', line 152

def initialize(set, name, version, source, plat)
  @set = set
  @name = name
  @version = version
  @source = source
  @platform = plat

  @spec = nil
end

Instance Attribute Details

#nameObject (readonly)

Returns the value of attribute name



162
163
164
# File 'lib/rubygems/dependency_resolver.rb', line 162

def name
  @name
end

#sourceObject (readonly)

Returns the value of attribute source



162
163
164
# File 'lib/rubygems/dependency_resolver.rb', line 162

def source
  @source
end

#versionObject (readonly)

Returns the value of attribute version



162
163
164
# File 'lib/rubygems/dependency_resolver.rb', line 162

def version
  @version
end

Instance Method Details

#dependenciesObject



172
173
174
# File 'lib/rubygems/dependency_resolver.rb', line 172

def dependencies
  spec.dependencies
end

#full_nameObject



164
165
166
# File 'lib/rubygems/dependency_resolver.rb', line 164

def full_name
  "#{@name}-#{@version}"
end

#specObject



168
169
170
# File 'lib/rubygems/dependency_resolver.rb', line 168

def spec
  @spec ||= @set.load_spec(@name, @version, @source)
end