Top Description Fields Methods
io.vavr

public Interface CheckedFunction0<R>

Additional top-level class in compilation unit: CheckedFunction0Module.

extends Serializable
Annotations
@FunctionalInterface
Type Parameters
<R>
return type of the function
Static Imports
io.vavr.CheckedFunction0Module.sneakyThrow

Represents a function with no arguments.
Author
Daniel Dietrich

Field Summary

Modifier and TypeField and Description
public static final long

Method Summary

Modifier and TypeMethod and Description
public default <
return type of after
V
>
CheckedFunction0<V>

Returns:

a function composed of this and after
andThen
(CheckedFunction1<? super R, ? extends V>
the function applied after this
after
)

Returns a composed function that first applies this CheckedFunction0 to the given argument and then applies CheckedFunction1 after to the result.

public R

Returns:

the result of function application
apply
()

Applies this function to no arguments and returns the result.

public default int

Returns:

an int value >= 0
arity
()

Returns the number of function arguments.

public static <
the result type
R
>
CheckedFunction0<R>

Returns:

a function always returning the given value
constant
(R
the value to be returned
value
)

Returns a function that always returns the constant value that you give in parameter.

public default CheckedFunction0<R>

Returns:

a curried function equivalent to this.
curried
()

Returns a curried version of this function.

public default boolean

Returns:

true, if this function is memoizing, false otherwise
isMemoized
()

Checks if this function is memoizing (= caching) computed values.

public static <
return type
R
>
Function0<Option<R>>

Returns:

a function that applies arguments to the given partialFunction and returns Some(result) if the function is defined for the given arguments, and None otherwise.
lift
(CheckedFunction0<? extends R>
a function that is not defined for all values of the domain (e.g. by throwing)
partialFunction
)

Lifts the given partialFunction into a total function that returns an Option result.

public static <
return type
R
>
Function0<Try<R>>

Returns:

a function that applies arguments to the given partialFunction and returns Success(result) if the function is defined for the given arguments, and Failure(throwable) otherwise.
liftTry
(CheckedFunction0<? extends R>
a function that is not defined for all values of the domain (e.g. by throwing)
partialFunction
)

Lifts the given partialFunction into a total function that returns an Try result.

public default CheckedFunction0<R>

Returns:

a memoizing function equivalent to this.
memoized
()

Returns a memoizing version of this function, which computes the return value for given arguments only one time.

public static <
return type
R
>
CheckedFunction0<R>

Returns:

the given f instance as narrowed type CheckedFunction0<R>
narrow
(CheckedFunction0<? extends R>
A CheckedFunction0
f
)

Narrows the given CheckedFunction0<?

public static <
return type
R
>
CheckedFunction0<R>

Returns:

a CheckedFunction0
of
(CheckedFunction0<R>
(typically) a method reference, e.g. Type::method
methodReference
)

Creates a CheckedFunction0 based on

public default Function0<R>

Returns:

a function composed of this and recover
recover
(Function<? super Throwable, ? extends Supplier<? extends R>>
the function applied in case of throwable
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.

public default CheckedFunction0<R>

Returns:

a reversed function equivalent to this.
reversed
()

Returns a reversed version of this function.

public default CheckedFunction1<Tuple0, R>

Returns:

a tupled function equivalent to this.
tupled
()

Returns a tupled version of this function.

public default Function0<R>

Returns:

a new Function0 that throws a Throwable.
unchecked
()

Returns an unchecked function that will sneaky throw if an exceptions occurs when applying the function.

Field Detail

serialVersionUIDback to summary
public static final long serialVersionUID

The serial version uid.

Method Detail

andThenback to summary
public 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.

Parameters
<V>
return type of after
after:CheckedFunction1<? super R, ? extends V>

the function applied after this

Returns:CheckedFunction0<V>

a function composed of this and after

Exceptions
NullPointerException:
if after is null
applyback to summary
public R apply() throws Throwable

Applies this function to no arguments and returns the result.

Returns:R

the result of function application

Exceptions
Throwable:
if something goes wrong applying this function to the given arguments
arityback to summary
public default int arity()

Returns the number of function arguments.

Returns:int

an int value >= 0

See Also
Arity
constantback to summary
public static <R> CheckedFunction0<R> constant(R value)

Returns a function that always returns the constant value that you give in parameter.

Parameters
<R>
the result type
value:R

the value to be returned

Returns:CheckedFunction0<R>

a function always returning the given value

curriedback to summary
public default CheckedFunction0<R> curried()

Returns a curried version of this function.

Returns:CheckedFunction0<R>

a curried function equivalent to this.

isMemoizedback to summary
public default boolean isMemoized()

Checks if this function is memoizing (= caching) computed values.

Returns:boolean

true, if this function is memoizing, false otherwise

liftback to summary
public static <R> Function0<Option<R>> lift(CheckedFunction0<? extends R> partialFunction)

Lifts the given partialFunction into a total function that returns an Option result.

Parameters
<R>
return type
partialFunction:CheckedFunction0<? extends R>

a function that is not defined for all values of the domain (e.g. by throwing)

Returns:Function0<Option<R>>

a function that applies arguments to the given partialFunction and returns Some(result) if the function is defined for the given arguments, and None otherwise.

Annotations
@SuppressWarnings:RedundantTypeArguments
liftTryback to summary
public static <R> Function0<Try<R>> liftTry(CheckedFunction0<? extends R> partialFunction)

Lifts the given partialFunction into a total function that returns an Try result.

Parameters
<R>
return type
partialFunction:CheckedFunction0<? extends R>

a function that is not defined for all values of the domain (e.g. by throwing)

Returns:Function0<Try<R>>

a function that applies arguments to the given partialFunction and returns Success(result) if the function is defined for the given arguments, and Failure(throwable) otherwise.

memoizedback to summary
public default CheckedFunction0<R> memoized()

Returns a memoizing version of this function, which computes the return value for given arguments only one time. On subsequent calls given the same arguments the memoized value is returned.

Please note that memoizing functions do not permit null as single argument or return value.

Returns:CheckedFunction0<R>

a memoizing function equivalent to this.

narrowback to summary
public static <R> CheckedFunction0<R> narrow(CheckedFunction0<? extends R> f)

Narrows the given CheckedFunction0<? extends R> to CheckedFunction0<R>

Parameters
<R>
return type
f:CheckedFunction0<? extends R>

A CheckedFunction0

Returns:CheckedFunction0<R>

the given f instance as narrowed type CheckedFunction0<R>

Annotations
@SuppressWarnings:unchecked
ofback to summary
public static <R> CheckedFunction0<R> of(CheckedFunction0<R> methodReference)

Creates a 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
Parameters
<R>
return type
methodReference:CheckedFunction0<R>

(typically) a method reference, e.g. Type::method

Returns:CheckedFunction0<R>

a CheckedFunction0

recoverback to summary
public 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.

Parameters
recover:Function<? super Throwable, ? extends Supplier<? extends R>>

the function applied in case of throwable

Returns:Function0<R>

a function composed of this and recover

Exceptions
NullPointerException:
if recover is null
reversedback to summary
public default CheckedFunction0<R> reversed()

Returns a reversed version of this function. This may be useful in a recursive context.

Returns:CheckedFunction0<R>

a reversed function equivalent to this.

tupledback to summary
public default CheckedFunction1<Tuple0, R> tupled()

Returns a tupled version of this function.

Returns:CheckedFunction1<Tuple0, R>

a tupled function equivalent to this.

uncheckedback to summary
public default Function0<R> unchecked()

Returns an unchecked function that will sneaky throw if an exceptions occurs when applying the function.

Returns:Function0<R>

a new Function0 that throws a Throwable.