class Thy::Types::Array

Public Class Methods

new(type) click to toggle source
# File lib/thy/types/array.rb, line 6
def initialize(type)
  @type = type
end

Public Instance Methods

check(values) click to toggle source
# File lib/thy/types/array.rb, line 10
def check(values)
  unless values.is_a?(::Array)
    return Result::Failure.new("Expected an array, but got #{values.inspect}")
  end

  values.each do |value|
    if @type.check(value).failure?
      return Result::Failure.new(
        "Expected an array of #{@type.inspect}, but got element: #{value.inspect}",
      )
    end
  end

  Result::Success
end