Sha256: 3b7cc98f75f9a6c14c507951829eb5500f581eecbc47cd3199ec3b59f12fa2a0

Contents?: true

Size: 726 Bytes

Versions: 4

Compression:

Stored size: 726 Bytes

Contents

# frozen_string_literal: true

module ValidateParams
  class Types
    class Array
      def self.valid?(value, of: String, reject_blank: false, **)
        val = value
        val = val.reject(&:blank?) if reject_blank

        case of.to_s
        when "Integer"
          val.all? { |item| Types::Integer.valid?(item) }
        else
          true
        end
      end

      def self.cast(raw_value, of: String, reject_blank: false, **)
        value = raw_value
        value = value.reject!(&:blank?) if reject_blank

        case of.to_s
        when "Integer"
          value.map { |item| Types::Integer.cast(item) }
        else
          value
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
validate-params-0.10.1 lib/validate_params/types/array.rb
validate-params-0.10.0 lib/validate_params/types/array.rb
validate-params-0.9.0 lib/validate_params/types/array.rb
validate-params-0.8.1 lib/validate_params/types/array.rb