class RubyDep::Travis::RubyVersion

Constants

REGEXP

Public Class Methods

new(travis_version_string) click to toggle source
# File lib/ruby_dep/travis/ruby_version.rb, line 31
def initialize(travis_version_string)
  ruby_version_string = version_for(travis_version_string)
  @version = Gem::Version.new(ruby_version_string)
end

Public Instance Methods

segments() click to toggle source
# File lib/ruby_dep/travis/ruby_version.rb, line 36
def segments
  @version.segments
end

Private Instance Methods

jruby_version(version) click to toggle source
# File lib/ruby_dep/travis/ruby_version.rb, line 50
def jruby_version(version)
  return '2.3.0' if version == '9.1.2.0'
  return '2.3.0' if version == '9.1.0.0'
  return '2.2.3' if version == '9.0.5.0'
  return '2.2.2' if version == '9.0.4.0'
  raise Error::Unrecognized::JRubyVersion, version
end
version_for(travis_version_string) click to toggle source
# File lib/ruby_dep/travis/ruby_version.rb, line 42
def version_for(travis_version_string)
  match = REGEXP.match(travis_version_string)
  raise Error::Unrecognized, travis_version_string unless match
  return match[:version] unless match[:engine]
  return jruby_version(match[:version]) if match[:engine] == 'jruby'
  match[:version] # if match[:engine] == 'ruby'
end