lib/validation/condition.rb
def ALL(condition, *conditions)
      conditions = [condition, *conditions]
      unless conditions.all?{|c|conditionable? c}
        raise TypeError, 'wrong object for condition'
      end

      ->list{
        enum = (
          (list.respond_to?(:each_value) && list.each_value) or
          (list.respond_to?(:all?) && list) or
          (list.respond_to?(:each) && list.each) or
          return false
        )

        conditions.all?{|cond|
          enum.all?{|v|
            _valid? cond, v
          }
        }
      }
    end
def ALL(condition, *conditions)
      conditions = [condition, *conditions]
      unless conditions.all?{|c|conditionable? c}
        raise TypeError, 'wrong object for condition'
      end

      ->list{
        enum = (
          (list.respond_to?(:each_value) && list.each_value) or
          (list.respond_to?(:all?) && list) or
          (list.respond_to?(:each) && list.each) or
          return false
        )

        conditions.all?{|cond|
          enum.all?{|v|
            _valid? cond, v
          }
        }
      }
    end
def ALL ( condition , * conditions ) conditions = [ condition , conditions ] unless conditions . all? { | c | conditionable? c } raise TypeError , 'wrong object for condition' end -> list { enum = ( ( list . respond_to? ( :each_value ) && list . each_value ) or ( list . respond_to? ( :all? ) && list ) or ( list . respond_to? ( :each ) && list . each ) or return false ) conditions . all? { | cond | enum . all? { | v | _valid? cond , v } } } end
A condition builder.
 @param condition [Proc, Method, #===]
 @param conditions [Proc, Method, #===]
 @return [lambda]
   this lambda return true
   if all included objects match all conditions
A condition builder .