code: public static <T> Predicate<T> and(Predicate<T>... predicates) {
          dbc.precondition(predicates != null, "predicates is null");
          return Logic.Unary.and(Iterations.iterable(predicates));
      }
docs: Creates a composite AND predicate from the given predicates.
  
  @param <T> the element type parameter
  @param predicates the predicates to be composed
  @return the composite predicate