T
- the type of the input to the functionR
- the type of the result of the function@FunctionalInterface public interface IFunction<T,R> extends Function<T,R>, Serializable
This is a functional interface whose functional method is
Function.apply(Object)
.
Modifier and Type | Method and Description |
---|---|
default <V> IFunction<T,V> |
andThen(Function<? super R,? extends V> after)
Returns a composed function that first applies this function to its input,
and then applies the
after function to the result. |
default <V> IFunction<V,R> |
compose(Function<? super V,? extends T> before)
Returns a composed function that first applies the
before function
to its input, and then applies this function to the result. |
static <T> IFunction<T,T> |
identity()
Returns a function that always returns its input argument.
|
@Nonnull default <V> IFunction<V,R> compose(@Nonnull Function<? super V,? extends T> before)
before
function
to its input, and then applies this function to the result. If evaluation
of either function throws an exception, it is relayed to the caller of the
composed function.compose
in interface Function<T,R>
V
- the type of input to the before
function, and to the
composed functionbefore
- the function to apply before this function is appliedbefore
function
and then applies this functionNullPointerException
- if before is nullandThen(Function)
@Nonnull default <V> IFunction<T,V> andThen(@Nonnull Function<? super R,? extends V> after)
after
function to the result. If evaluation of
either function throws an exception, it is relayed to the caller of the
composed function.andThen
in interface Function<T,R>
V
- the type of output of the after
function, and of the
composed functionafter
- the function to apply after this function is appliedafter
functionNullPointerException
- if after is nullcompose(Function)
Copyright © 2014–2019 Philip Helger. All rights reserved.