Sha256: 5b2000dacf6c806223751929c4d07d9dc2fecb74fa56129f4f2700d4cbb3cae4

Contents?: true

Size: 791 Bytes

Versions: 2

Compression:

Stored size: 791 Bytes

Contents

class Fancy Package {
  class Dependency {
    """
    Package Dependency.
    Represents a Dependency to another Package with a given version.
    """

    read_slots: ['name, 'version]

    def initialize: @name version: @version ('latest) {
    }
  }

  class RubyDependency {
    """
    Same as @Fancy::Package::Dependency@, just for rubygem packages.
    """

    read_slots: ['gem_name, 'version]

    def initialize: @gem_name version: @version ('latest) {
    }

    def install {
      """
      Installs the RubyDependency (a RubyGem) via rbx -S gem on the system.
      """

      match @version {
        case 'latest ->
          System do: "rbx gem install #{@gem_name}"
        case _ ->
          System do: "rbx gem install -v=#{@version} #{@gem_name}"
      }
    }
  }
}

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
fancy-0.7.0 lib/package/dependency.fy
fancy-0.6.0 lib/package/dependency.fy