class Falkor::Ruby

Constants

RELEASES

Attributes

version[R]

Public Class Methods

new(version) click to toggle source
# File lib/falkor/ruby.rb, line 32
def initialize(version)
  raise NotFound if self.class.versions[version].nil?

  @version = version
end
versions() click to toggle source
# File lib/falkor/ruby.rb, line 23
def versions
  YAML.
    load_file(Download.new(RELEASES, "ruby_releases.yml").download {}).
    select { |release| release.dig("url", "gz") }.
    map { |release| [release["version"], release.dig("url", "gz")] }.
    to_h
end

Public Instance Methods

other_versions() click to toggle source
# File lib/falkor/ruby.rb, line 38
def other_versions
  self.class.versions.keys.map do |number|
    next if number == version

    self.class.new(number)
  end.compact
end

Private Instance Methods

file_name() click to toggle source
# File lib/falkor/ruby.rb, line 56
def file_name
  "ruby-#{version}.tar.gz"
end
url() click to toggle source
# File lib/falkor/ruby.rb, line 60
def url
  self.class.versions[version]
end
yard_filepath() click to toggle source
# File lib/falkor/ruby.rb, line 64
def yard_filepath
  File.join(Dir.pwd, "tmp", File.basename(file_name, ".tar.gz") + ".falkor")
end