Sha256: cce32e67685d81c91ab26dd4cf748964833a1fe305b88be4ac697232b74d41ec
Contents?: true
Size: 586 Bytes
Versions: 50
Compression:
Stored size: 586 Bytes
Contents
# frozen_string_literal: true module Hako module Schema class UnorderedArray def initialize(schema) @schema = schema end def valid?(object) object.is_a?(Array) && object.all? { |e| @schema.valid?(e) } end def same?(xs, ys) if xs.size != ys.size return false end t = xs.dup ys.each do |y| i = t.index { |x| @schema.same?(x, y) } if i t.delete_at(i) else return false end end true end end end end
Version data entries
50 entries across 50 versions & 1 rubygems