Sha256: b14a3a42f8a67571722d61757bcc4241f072c6a3b71896a89aeabaa0236c5e3e

Contents?: true

Size: 555 Bytes

Versions: 6

Compression:

Stored size: 555 Bytes

Contents

# frozen_string_literal: true

require 'request_handler/error'
module RequestHandler
  class OptionParser
    def initialize(params:, allowed_options_type:)
      @params = params
      @allowed_options_type = allowed_options_type
      raise InternalArgumentError, allowed_options_type: 'must be a Enum' unless enum?
    end

    private

    def enum?
      @allowed_options_type.class.equal?(Dry::Types::Enum)
    end

    def empty_param?(param)
      params.fetch(param) { nil } == ''
    end
    attr_reader :params, :allowed_options_type
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
request_handler-1.1.0 lib/request_handler/option_parser.rb
request_handler-1.0.0 lib/request_handler/option_parser.rb
request_handler-0.15.0 lib/request_handler/option_parser.rb
request_handler-0.14.0 lib/request_handler/option_parser.rb
request_handler-0.13.0 lib/request_handler/option_parser.rb
request_handler-0.12.0 lib/request_handler/option_parser.rb