@FunctionalInterface
@Generated(value="uk.kludje.annotation.processor.UncheckedFunctionalInterfaceProcessor")
public interface UDoubleBinaryOperator
extends java.util.function.DoubleBinaryOperator
double $applyAsDouble(double arg0, double arg1) throws Throwable
USING A LAMBDA; INVOKE double applyAsDouble(double arg0, double arg1)
.
A functional interface for handling checked exceptions. See parent type for interface intent.
double applyAsDouble(double arg0, double arg1)
invokes double $applyAsDouble(double arg0, double arg1)
and throws anything thrown by double $applyAsDouble(double arg0, double arg1)
.
General example using java.lang.Runnable
that reduces 11 lines to a single line.
Call someMethodThatThrowsException
in throwsNothing
:
public void someMethodThatThrowsException() throws IOException { // I/O functionality } public void throwsNothing(Runnable r) { r.run(); }
Before:
public void yourMethod() throws IOException { try { throwsNothing(() -> { try { someMethodThatThrowsException(); } catch (IOException e) { throw new SomeWrapperException(e); } }); } catch(SomeWrapperException w) { throw (IOException) w.getCause(); } }
After:
public void yourMethod() throws IOException { throwsNothing((URunnable) this::someMethodThatThrowsException); }
Method public static UDoubleBinaryOperator asUDoubleBinaryOperator(UDoubleBinaryOperator t)
provides a convenience method for manufacturing types as an alternative to casting.
Modifier and Type | Method and Description |
---|---|
double |
$applyAsDouble(double arg0,
double arg1) |
default double |
applyAsDouble(double arg0,
double arg1) |
static UDoubleBinaryOperator |
asUDoubleBinaryOperator(UDoubleBinaryOperator t) |
default double applyAsDouble(double arg0, double arg1)
applyAsDouble
in interface java.util.function.DoubleBinaryOperator
double $applyAsDouble(double arg0, double arg1) throws java.lang.Throwable
java.lang.Throwable
static UDoubleBinaryOperator asUDoubleBinaryOperator(UDoubleBinaryOperator t)