Sha256: 131862c457f6dbe943725be80ba3bfa18f4098a2ac1beec59e7007f78c45bcf6
Contents?: true
Size: 879 Bytes
Versions: 25
Compression:
Stored size: 879 Bytes
Contents
unless Enumerable.method_defined? :several? module Enumerable # Checks if two or more elements meet a certain predicate. # # @example # [1, 2, 3, 4].several?(&:even?) #=> true # [1, 1, 3, 3].several?(&:even?) #=> false # # Without a block uses the identify of the elements as default predicate. # This means that nil and false elements will be ignored. # # @example # [1, false, nil].several? #=> false # [1, 2, 3].several? #=>true def several? found_count = 0 if block_given? each do |*o| if yield(*o) found_count += 1 return true if found_count > 1 end end else each do |o| if o found_count += 1 return true if found_count > 1 end end end false end end end
Version data entries
25 entries across 22 versions & 6 rubygems