code: function apply (data, predicates) {
      assert.array(data);
  
      if (isFunction(predicates)) {
        return data.map(function (value) {
          return predicates(value);
        });
      }
  
      assert.array(predicates);
      assert.hasLength(data, predicates.length);
  
      return data.map(function (value, index) {
        return predicates[index](value);
      });
    }
docs: Public function `apply`.
  
  Maps each value from the `data` to the corresponding predicate and returns
  the result array. If the same function is to be applied across all of the
  data, a single predicate function may be passed in.