public static void ensureAndLog(
    @NotNull Class<?> loggingClass,
    @NotNull Supplier<Object> lazyMessage,
    @NotNull BooleanSupplier statementSupplier
  ) {
    if (!statementSupplier.getAsBoolean()) {
      Logger.getInstance(loggingClass).error(new IllegalPostconditionException(lazyMessage.get().toString()));
    }
  }
public static void ensureAndLog(
    @NotNull Class<?> loggingClass,
    @NotNull Supplier<Object> lazyMessage,
    @NotNull BooleanSupplier statementSupplier
  )