Sha256: 088e824b3645ce5cf50e326d27974a5574a83ad75200d7cf49c108fa182f6442

Contents?: true

Size: 532 Bytes

Versions: 1

Compression:

Stored size: 532 Bytes

Contents

# frozen_string_literal: true

module Gemsmith
  module Gems
    # Finds multiple versions of an installed gem (if any) and answers found specifications.
    class Finder
      def self.call(path, ...) = new(...).call path

      def initialize client: ::Gem::Specification, presenter: Gems::Presenter
        @client = client
        @presenter = presenter
      end

      def call(name) = client.find_all_by_name(name).map { |record| presenter.new record }

      private

      attr_reader :client, :presenter
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
gemsmith-16.0.0 lib/gemsmith/gems/finder.rb