question: public static < X extends Throwable > void throwIf ( final X e , final Predicate < X > p ) { if ( p . test ( e ) ) throw ExceptionSoftener . < RuntimeException > uncheck ( e ) ; }
target:  Throw the exception as upwards if the predicate holds, otherwise do nothing