code: public static <T extends Comparable<T>> void comparable(T obj1, T obj2, Supplier<String> message) {
      if (areNotComparable(obj1, obj2)) {
        throw new ComparisonException(message.get());
      }
    }
docs: Asserts the two {@link Object objects} are comparable.
  
  The assertion holds if and only if the {@link Comparable Comparable objects} are equal by comparison.
  
  @param <T> {@link Comparable Comparable class type} of the {@link Object objects} in the comparison.
  @param obj1 first {@link Comparable Comparable object} in the relational comparison.
  @param obj2 second {@link Comparable Comparable object} in the relational comparison.
  @param message {@link Supplier} containing the message used in the {@link ComparisonException} thrown
  if the assertion fails.
  @throws org.cp.elements.lang.ComparisonException if the assertion fails
  and the two {@link Object objects} are not comparable.
  @see java.lang.Comparable#compareTo(Object)
  @see java.util.function.Supplier