module Versionomy::Format::Rubygems::ExtraMethods

Extra methods added to version values that use the rubygems schema.

Public Instance Methods

parts() click to toggle source

Returns a list of the field values, in field order, with trailing zeroes stripped off.

This behaves the same as the Gem::Version#parts method in rubygems.

# File lib/versionomy/format_definitions/rubygems.rb, line 103
def parts
  unless defined?(@parts)
    @parts = values_array
    @parts.pop while @parts.size > 1 && @parts.last == 0
  end
  @parts
end
prerelease?() click to toggle source

Returns true if the version is a prerelease version– that is, if any of the fields is non-numeric.

This behaves the same as the Gem::Version#prerelease? method in rubygems.

# File lib/versionomy/format_definitions/rubygems.rb, line 75
def prerelease?
  values_array.any?{ |val_| val_.kind_of?(::String) }
end
release() click to toggle source

Returns the release for this version. For example, converts “1.2.0.a.1” to “1.2.0”. Non-prerelease versions return themselves.

This behaves the same as the Gem::Version#release method in rubygems.

# File lib/versionomy/format_definitions/rubygems.rb, line 87
def release
  values_ = []
  self.each_field_object do |field_, val_|
    break unless val_.kind_of?(::Integer)
    values_ << val_
  end
  Value.new(values_, self.format, self.unparse_params)
end