Sha256: 82838866b933bf2798e1f3d7dc2148bd1ec013a919cd4c734ecb1c979724e43e

Contents?: true

Size: 785 Bytes

Versions: 2

Compression:

Stored size: 785 Bytes

Contents

# frozen_string_literal: true

require_relative './sources/base'
require_relative './sources/git'
require_relative './sources/stdlib'
require_relative './sources/rubygems'

module RBS
  module Collection
    module Sources
      def self.from_config_entry(source_entry)
        case source_entry['type']
        when 'git', nil # git source by default
          # @type var source_entry: Git::source_entry
          Git.new(
            name: source_entry["name"],
            revision: source_entry["revision"],
            remote: source_entry["remote"],
            repo_dir: source_entry["repo_dir"]
          )
        when 'stdlib'
          Stdlib.instance
        when 'rubygems'
          Rubygems.instance
        else
          raise
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
rbs-3.0.0.dev.2 lib/rbs/collection/sources.rb
rbs-3.0.0.dev.1 lib/rbs/collection/sources.rb