R
- return type of the function@FunctionalInterface public interface CheckedFunction0<R> extends Serializable
Modifier and Type | Field and Description |
---|---|
static long |
serialVersionUID
The serial version uid.
|
Modifier and Type | Method and Description |
---|---|
default <V> CheckedFunction0<V> |
andThen(CheckedFunction1<? super R,? extends V> after)
Returns a composed function that first applies this CheckedFunction0 to the given argument and then applies
CheckedFunction1
after to the result. |
R |
apply()
Applies this function to no arguments and returns the result.
|
default int |
arity()
Returns the number of function arguments.
|
static <R> CheckedFunction0<R> |
constant(R value)
Returns a function that always returns the constant
value that you give in parameter.
|
default CheckedFunction0<R> |
curried()
Returns a curried version of this function.
|
default boolean |
isMemoized()
Checks if this function is memoizing (= caching) computed values.
|
static <R> Function0<Option<R>> |
lift(CheckedFunction0<? extends R> partialFunction)
Lifts the given
partialFunction into a total function that returns an Option result. |
static <R> Function0<Try<R>> |
liftTry(CheckedFunction0<? extends R> partialFunction)
Lifts the given
partialFunction into a total function that returns an Try result. |
default CheckedFunction0<R> |
memoized()
Returns a memoizing version of this function, which computes the return value for given arguments only one time.
|
static <R> CheckedFunction0<R> |
narrow(CheckedFunction0<? extends R> f)
Narrows the given
CheckedFunction0<? extends R> to CheckedFunction0<R> |
static <R> CheckedFunction0<R> |
of(CheckedFunction0<R> methodReference)
|
default Function0<R> |
recover(Function<? super Throwable,? extends Supplier<? extends R>> recover)
Return a composed function that first applies this CheckedFunction0 to the given arguments and in case of throwable
try to get value from
recover function with same arguments and throwable information. |
default CheckedFunction0<R> |
reversed()
Returns a reversed version of this function.
|
default CheckedFunction1<Tuple0,R> |
tupled()
Returns a tupled version of this function.
|
default Function0<R> |
unchecked()
Returns an unchecked function that will sneaky throw if an exceptions occurs when applying the function.
|
static final long serialVersionUID
static <R> CheckedFunction0<R> constant(R value)
R
- the result typevalue
- the value to be returnedstatic <R> CheckedFunction0<R> of(CheckedFunction0<R> methodReference)
CheckedFunction0
based on
Examples (w.l.o.g. referring to Function1):
// using a lambda expression
Function1<Integer, Integer> add1 = Function1.of(i -> i + 1);
// using a method reference (, e.g. Integer method(Integer i) { return i + 1; })
Function1<Integer, Integer> add2 = Function1.of(this::method);
// using a lambda reference
Function1<Integer, Integer> add3 = Function1.of(add1::apply);
Caution: Reflection loses type information of lambda references.
// type of a lambda expression
Type<?, ?> type1 = add1.getType(); // (Integer) -> Integer
// type of a method reference
Type<?, ?> type2 = add2.getType(); // (Integer) -> Integer
// type of a lambda reference
Type<?, ?> type3 = add3.getType(); // (Object) -> Object
R
- return typemethodReference
- (typically) a method reference, e.g. Type::method
CheckedFunction0
static <R> Function0<Option<R>> lift(CheckedFunction0<? extends R> partialFunction)
partialFunction
into a total function that returns an Option
result.R
- return typepartialFunction
- a function that is not defined for all values of the domain (e.g. by throwing)partialFunction
and returns Some(result)
if the function is defined for the given arguments, and None
otherwise.static <R> Function0<Try<R>> liftTry(CheckedFunction0<? extends R> partialFunction)
partialFunction
into a total function that returns an Try
result.R
- return typepartialFunction
- a function that is not defined for all values of the domain (e.g. by throwing)partialFunction
and returns Success(result)
if the function is defined for the given arguments, and Failure(throwable)
otherwise.static <R> CheckedFunction0<R> narrow(CheckedFunction0<? extends R> f)
CheckedFunction0<? extends R>
to CheckedFunction0<R>
R
- return typef
- A CheckedFunction0
f
instance as narrowed type CheckedFunction0<R>
R apply() throws Throwable
Throwable
- if something goes wrong applying this function to the given argumentsdefault int arity()
default CheckedFunction0<R> curried()
default CheckedFunction1<Tuple0,R> tupled()
default CheckedFunction0<R> reversed()
default CheckedFunction0<R> memoized()
Please note that memoizing functions do not permit null
as single argument or return value.
default boolean isMemoized()
default Function0<R> recover(Function<? super Throwable,? extends Supplier<? extends R>> recover)
recover
function with same arguments and throwable information.recover
- the function applied in case of throwableNullPointerException
- if recover is nulldefault Function0<R> unchecked()
Throwable
.default <V> CheckedFunction0<V> andThen(CheckedFunction1<? super R,? extends V> after)
after
to the result.V
- return type of afterafter
- the function applied after thisNullPointerException
- if after is nullCopyright © 2021. All Rights Reserved.