# Uses of Interface
org.apache.commons.lang3.function.FailableFunction

Packages that use FailableFunction
Package
Description
org.apache.commons.lang3.concurrent.locks
Provides support classes for multi-threaded programming.
org.apache.commons.lang3.function
Provides functional interfaces to complement those in `java.lang.function` and utilities for working with Java 8 lambdas.
org.apache.commons.lang3.stream
Provides utility classes to complement those in `java.util.stream`.

- ## Uses of FailableFunction in org.apache.commons.lang3.concurrent.locks

  Methods in org.apache.commons.lang3.concurrent.locks with parameters of type FailableFunction
  Modifier and Type
  Method
  Description
  `<T> T`
  LockingVisitors.LockVisitor.`applyReadLocked(FailableFunction<O,T,?> function)`
  Provides read (shared, non-exclusive) access to The object to protect for the purpose of computing a result object.
  `<T> T`
  LockingVisitors.LockVisitor.`applyWriteLocked(FailableFunction<O,T,?> function)`
  Provides write (exclusive) access to The object to protect for the purpose of computing a result object.
  `protected <T> T`
  LockingVisitors.LockVisitor.`lockApplyUnlock(Supplier<Lock> lockSupplier, FailableFunction<O,T,?> function)`
  This method provides the actual implementation for `LockingVisitors.LockVisitor.applyReadLocked(FailableFunction)`, and `LockingVisitors.LockVisitor.applyWriteLocked(FailableFunction)`.

- ## Uses of FailableFunction in org.apache.commons.lang3.function

  Fields in org.apache.commons.lang3.function declared as FailableFunction
  Modifier and Type
  Field
  Description
  `static final FailableFunction`
  FailableFunction.`NOP`
  NOP singleton
  Methods in org.apache.commons.lang3.function that return FailableFunction
  Modifier and Type
  Method
  Description
  `default <V> FailableFunction<T,V,E>`
  FailableFunction.`andThen(FailableFunction<? super R,? extends V,E> after)`
  Returns a composed `FailableFunction` like `Function.andThen(Function)`.
  `static <T, R> FailableFunction<T,R,Throwable>`
  MethodInvokers.`asFailableFunction(Method method)`
  Produces a `FailableFunction` for a given a supplier Method.
  `default <V> FailableFunction<V,R,E>`
  FailableFunction.`compose(FailableFunction<? super V,? extends T,E> before)`
  Returns a composed `FailableFunction` like `Function.compose(Function)`.
  `static <T, R, E extends Throwable>
  FailableFunction<T,R,E>`
  FailableFunction.`function(FailableFunction<T,R,E> function)`
  Starts a fluent chain like `function(foo::bar).andThen(...).andThen(...).apply(...);`
  `static <T, E extends Throwable>
  FailableFunction<T,T,E>`
  FailableFunction.`identity()`
  Returns a function that always returns its input argument.
  `static <T, R, E extends Throwable>
  FailableFunction<T,R,E>`
  FailableFunction.`nop()`
  Gets the NOP singleton.
  Methods in org.apache.commons.lang3.function with parameters of type FailableFunction
  Modifier and Type
  Method
  Description
  `default <V> FailableBiFunction<T,U,V,E>`
  FailableBiFunction.`andThen(FailableFunction<? super R,? extends V,E> after)`
  Returns a composed `FailableBiFunction` that like `BiFunction.andThen(Function)`.
  `default <V> FailableFunction<T,V,E>`
  FailableFunction.`andThen(FailableFunction<? super R,? extends V,E> after)`
  Returns a composed `FailableFunction` like `Function.andThen(Function)`.
  `static <T, R, E extends Throwable>
  R`
  Failable.`apply(FailableFunction<T,R,E> function, T input)`
  Applies a function and rethrows any exception as a `RuntimeException`.
  `static <T, R, E extends Throwable>
  R`
  Failable.`applyNonNull(T value, FailableFunction<? super T,? extends R,E> mapper)`
  Applies a value to a function if the value isn't `null`, otherwise the method returns `null`.
  `static <T, U, R, E1 extends Throwable, E2 extends Throwable>
  R`
  Failable.`applyNonNull(T value1, FailableFunction<? super T,? extends U,E1> mapper1, FailableFunction<? super U,? extends R,E2> mapper2)`
  Applies values to a chain of functions, where a `null` can short-circuit each step.
  `static <T, U, V, R, E1 extends Throwable, E2 extends Throwable, E3 extends Throwable>
  R`
  Failable.`applyNonNull(T value1, FailableFunction<? super T,? extends U,E1> mapper1, FailableFunction<? super U,? extends V,E2> mapper2, FailableFunction<? super V,? extends R,E3> mapper3)`
  Applies values to a chain of functions, where a `null` can short-circuit each step.
  `static <T, R> Function<T,R>`
  Failable.`asFunction(FailableFunction<T,R,?> function)`
  Converts the given `FailableFunction` into a standard `Function`.
  `default <V> FailableFunction<V,R,E>`
  FailableFunction.`compose(FailableFunction<? super V,? extends T,E> before)`
  Returns a composed `FailableFunction` like `Function.compose(Function)`.
  `static <T, R, E extends Throwable>
  FailableFunction<T,R,E>`
  FailableFunction.`function(FailableFunction<T,R,E> function)`
  Starts a fluent chain like `function(foo::bar).andThen(...).andThen(...).apply(...);`

- ## Uses of FailableFunction in org.apache.commons.lang3.stream

  Methods in org.apache.commons.lang3.stream with parameters of type FailableFunction
  Modifier and Type
  Method
  Description
  `<R> Streams.FailableStream<R>`
  Streams.FailableStream.`map(FailableFunction<T,R,?> mapper)`
  Returns a stream consisting of the results of applying the given function to the elements of this stream.