class Gem::NameTuple
Represents a gem of namename atversion ofplatform. These wrap the data returned from the indexes.
Attributes
Public Class Methods
Source
# File lib/rubygems/name_tuple.rb, line 24defself.from_list(list)list.map {|t|new(*t) }end
Turn an array of [name, version, platform] into an array ofNameTuple objects.
Source
# File lib/rubygems/name_tuple.rb, line 9definitialize(name,version,platform =Gem::Platform::RUBY)@name =name@version =versionplatform&&=platform.to_splatform =Gem::Platform::RUBYif!platform||platform.empty?@platform =platformend
Source
# File lib/rubygems/name_tuple.rb, line 39defself.nullnewnil,Gem::Version.new(0),nilend
A nullNameTuple, ie name=nil, version=0
Source
# File lib/rubygems/name_tuple.rb, line 32defself.to_basic(list)list.map(&:to_a)end
Turn an array ofNameTuple objects back into an array of
- name, version, platform
tuples.
Public Instance Methods
Source
# File lib/rubygems/name_tuple.rb, line 90def<=>(other) [@name,@version,Gem::Platform.sort_priority(@platform)]<=> [other.name,other.version,Gem::Platform.sort_priority(other.platform)]end
Source
# File lib/rubygems/name_tuple.rb, line 101def==(other)caseotherwhenself.class@name==other.name&&@version==other.version&&@platform==other.platformwhenArrayto_a==otherelsefalseendend
Compare withother. Supports anotherNameTuple or anArray in the [name, version, platform] format.
Source
# File lib/rubygems/name_tuple.rb, line 48deffull_namecase@platformwhennil,"",Gem::Platform::RUBY"#{@name}-#{@version}"else"#{@name}-#{@version}-#{@platform}"endend
Returns the full name (name-version) of thisGem. Platform information is included if it is not the default Ruby platform. This mimics the behavior ofGem::Specification#full_name.
Source
# File lib/rubygems/name_tuple.rb, line 60defmatch_platform?Gem::Platform.match_gem?@platform,@nameend
Indicate if thisNameTuple matches the current platform.
Source
# File lib/rubygems/name_tuple.rb, line 66defprerelease?@version.prerelease?end
Indicate if thisNameTuple is for a prerelease version.
Source
# File lib/rubygems/name_tuple.rb, line 73defspec_name"#{full_name}.gemspec"end
Return the name that the gemspec file would be
Source
# File lib/rubygems/name_tuple.rb, line 80defto_a [@name,@version,@platform]end
Convert back to the [name, version, platform] tuple