static <ENTITY> CombinedPredicate<ENTITY> or(Predicate<ENTITY> first, Predicate<? super ENTITY> second) {
        @SuppressWarnings("unchecked")
        final Predicate<ENTITY> secondCasted = (Predicate<ENTITY>) second;
        return new AbstractCombinedPredicate.OrCombinedBasePredicateImpl<>(
            Arrays.asList(first, secondCasted)
        );
    }
Creates and returns a new CombinedPredicate that is the logical OR
combination of the given predicates.

@param <ENTITY> entity type
@param first the first predicate used in the OR operation
@param second the first predicate used in the OR operation
@return a new CombinedPredicate that is the logical OR combination of the
given predicates
runtime-parent/runtime-field/src/main/java/com/speedment/runtime/field/predicate/CombinedPredicate.java