Module net.luis.utils
Interface ThrowableFunction<T,R,X extends Throwable>
- Type Parameters:
T- The type of the argumentR- The return typeX- The exception that can be thrown
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
Functional interface that takes an argument and returns a value.
The
The class is equivalent to
The
FunctionalInterface method is apply(Object).The class is equivalent to
Function, but the functional method can throw a checked exception.-
Method Summary
Modifier and TypeMethodDescriptiondefault <S> @NotNull ThrowableFunction<T, S, X> andThen(@NotNull ThrowableFunction<? super R, ? extends S, X> after) Returns a composed function that first applies this function to its input,
and then applies theafterfunction to the result.Applies the argument to the function and returns the result.static <T,R> @NotNull Function <T, R> caught(@NotNull ThrowableFunction<T, R, ? extends Throwable> function) Converts a throwable function into a function that throws a runtime exception when an exception is thrown.
-
Method Details
-
caught
@NotNull static <T,R> @NotNull Function<T,R> caught(@NotNull @NotNull ThrowableFunction<T, R, ? extends Throwable> function) Converts a throwable function into a function that throws a runtime exception when an exception is thrown.- Type Parameters:
T- The argument typeR- The return type- Parameters:
function- The throwable function- Returns:
- A caught function
- Throws:
NullPointerException- If the throwable function is null
-
apply
Applies the argument to the function and returns the result.- Parameters:
t- The argument- Returns:
- The result
- Throws:
X- The exception that can be thrown
-
andThen
@NotNull default <S> @NotNull ThrowableFunction<T,S, andThenX> (@NotNull @NotNull ThrowableFunction<? super R, ? extends S, X> after) Returns a composed function that first applies this function to its input,
and then applies theafterfunction to the result.- Type Parameters:
S- The type of the output of theafterfunction, and of the composed function- Parameters:
after- The function to apply after this function is applied- Returns:
- The composed throwable function
- Throws:
NullPointerException- If the after function is null
-