Sha256: 65f2b16d24ec070fa5b24d5e82b79a53926fa4973f9dd91ed7d0d510e780f177

Contents?: true

Size: 1.04 KB

Versions: 2

Compression:

Stored size: 1.04 KB

Contents

# frozen_string_literal: true

module Bundler
  module Alive
    #
    # Represents Result of Status
    #
    class StatusResult
      attr_reader :collection, :error_messages, :rate_limit_exceeded

      #
      # Creates a new StatusResult instance
      #
      # @param [StatusCollection|nil] :collection
      # @param [Array|nil] :error_messages
      # @param [Boolean|nil] :rate_limit_exceeded
      #
      # @return [StatusResult]
      #
      def initialize(collection: nil, error_messages: nil, rate_limit_exceeded: nil)
        @collection = collection
        @error_messages = error_messages
        @rate_limit_exceeded = rate_limit_exceeded
      end

      #
      # Merge `StatusResult`, then returns new one
      #
      # @param [StatusResult] result
      #
      # @return [StatusResult]
      #
      def merge(result)
        self.class.new(collection: result.collection,
                       error_messages: result.error_messages,
                       rate_limit_exceeded: result.rate_limit_exceeded)
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
bundler-alive-0.1.4 lib/bundler/alive/status_result.rb
bundler-alive-0.1.3 lib/bundler/alive/status_result.rb