# Package org.apache.commons.lang3.function

package org.apache.commons.lang3.function
Provides functional interfaces to complement those in `java.lang.function` and utilities for working with Java 8 lambdas.

Contains failable functional interfaces that address the fact that lambdas are supposed not to throw Exceptions, at least not checked Exceptions, A.K.A. instances of `Exception`. A failable functional interface declares a type of Exception that may be raised if the function fails.

Since:
  3.11

- Related Packages
  Package
  Description
  org.apache.commons.lang3
  Provides highly reusable utility methods, chiefly concerned with adding value to the `java.lang` classes.
- Class
  Description
  BooleanConsumer
  A functional interface like `IntConsumer` but for `boolean`.
  ByteConsumer
  A functional interface like `IntConsumer` but for `byte`.
  ByteSupplier
  A functional interface like `IntSupplier`, but for a byte.
  Consumers
  Provides `Consumer` instances.
  Failable
  This class provides utility functions, and classes for working with the `java.util.function` package, or more generally, with Java 8 lambdas.
  FailableBiConsumer<T, U, E extends Throwable>
  A functional interface like `BiConsumer` that declares a `Throwable`.
  FailableBiFunction<T, U, R, E extends Throwable>
  A functional interface like `BiFunction` that declares a `Throwable`.
  FailableBiPredicate<T, U, E extends Throwable>
  A functional interface like `BiPredicate` that declares a `Throwable`.
  FailableBooleanSupplier<E extends Throwable>
  A functional interface like `BooleanSupplier` that declares a `Throwable`.
  FailableByteConsumer<E extends Throwable>
  A functional interface like `ByteConsumer` that declares a `Throwable`.
  FailableByteSupplier<E extends Throwable>
  A functional interface like `IntSupplier`, but for a byte, that declares a `Throwable`.
  FailableCallable<R, E extends Throwable>
  A functional interface like `Callable` that declares a `Throwable`.
  FailableConsumer<T, E extends Throwable>
  A functional interface like `Consumer` that declares a `Throwable`.
  FailableDoubleBinaryOperator<E extends Throwable>
  A functional interface like `DoubleBinaryOperator` that declares a `Throwable`.
  FailableDoubleConsumer<E extends Throwable>
  A functional interface like `DoubleConsumer` that declares a `Throwable`.
  FailableDoubleFunction<R, E extends Throwable>
  A functional interface like `DoubleFunction` that declares a `Throwable`.
  FailableDoublePredicate<E extends Throwable>
  A functional interface like `DoublePredicate` that declares a `Throwable`.
  FailableDoubleSupplier<E extends Throwable>
  A functional interface like `DoubleSupplier` that declares a `Throwable`.
  FailableDoubleToIntFunction<E extends Throwable>
  A functional interface like `DoubleToIntFunction` that declares a `Throwable`.
  FailableDoubleToLongFunction<E extends Throwable>
  A functional interface like `DoubleToLongFunction` that declares a `Throwable`.
  FailableDoubleUnaryOperator<E extends Throwable>
  A functional interface like `DoubleUnaryOperator` that declares a `Throwable`.
  FailableFunction<T, R, E extends Throwable>
  A functional interface like `Function` that declares a `Throwable`.
  FailableIntBinaryOperator<E extends Throwable>
  A functional interface like `IntBinaryOperator` that declares a `Throwable`.
  FailableIntConsumer<E extends Throwable>
  A functional interface like `IntConsumer` that declares a `Throwable`.
  FailableIntFunction<R, E extends Throwable>
  A functional interface like `IntFunction` that declares a `Throwable`.
  FailableIntPredicate<E extends Throwable>
  A functional interface like `IntPredicate` that declares a `Throwable`.
  FailableIntSupplier<E extends Throwable>
  A functional interface like `IntSupplier` that declares a `Throwable`.
  FailableIntToDoubleFunction<E extends Throwable>
  A functional interface like `IntToDoubleFunction` that declares a `Throwable`.
  FailableIntToFloatFunction<E extends Throwable>
  A functional interface like `IntToDoubleFunction` but for `float` that declares a `Throwable`.
  FailableIntToLongFunction<E extends Throwable>
  A functional interface like `IntToLongFunction` that declares a `Throwable`.
  FailableIntUnaryOperator<E extends Throwable>
  A functional interface like `IntUnaryOperator` that declares a `Throwable`.
  FailableLongBinaryOperator<E extends Throwable>
  A functional interface like `LongBinaryOperator` that declares a `Throwable`.
  FailableLongConsumer<E extends Throwable>
  A functional interface like `LongConsumer` that declares a `Throwable`.
  FailableLongFunction<R, E extends Throwable>
  A functional interface like `LongFunction` that declares a `Throwable`.
  FailableLongPredicate<E extends Throwable>
  A functional interface like `LongPredicate` that declares a `Throwable`.
  FailableLongSupplier<E extends Throwable>
  A functional interface like `LongSupplier` that declares a `Throwable`.
  FailableLongToDoubleFunction<E extends Throwable>
  A functional interface like `LongToDoubleFunction` that declares a `Throwable`.
  FailableLongToIntFunction<E extends Throwable>
  A functional interface like `LongToIntFunction` that declares a `Throwable`.
  FailableLongUnaryOperator<E extends Throwable>
  A functional interface like `LongUnaryOperator` that declares a `Throwable`.
  FailableObjDoubleConsumer<T, E extends Throwable>
  A functional interface like `ObjDoubleConsumer` that declares a `Throwable`.
  FailableObjIntConsumer<T, E extends Throwable>
  A functional interface like `ObjIntConsumer` that declares a `Throwable`.
  FailableObjLongConsumer<T, E extends Throwable>
  A functional interface like `ObjLongConsumer` that declares a `Throwable`.
  FailablePredicate<T, E extends Throwable>
  A functional interface like `Predicate` that declares a `Throwable`.
  FailableRunnable<E extends Throwable>
  A functional interface like `Runnable` that declares a kind of `Throwable`.
  FailableShortSupplier<E extends Throwable>
  A functional interface like `IntSupplier` but for `short` that declares a `Throwable`.
  FailableSupplier<T, E extends Throwable>
  A functional interface like `Supplier` that declares a `Throwable`.
  FailableToBooleanFunction<T, E extends Throwable>
  A functional interface like a `ToBooleanFunction` that declares a `Throwable`.
  FailableToDoubleBiFunction<T, U, E extends Throwable>
  A functional interface like `ToDoubleBiFunction` that declares a `Throwable`.
  FailableToDoubleFunction<T, E extends Throwable>
  A functional interface like `ToDoubleFunction` that declares a `Throwable`.
  FailableToIntBiFunction<T, U, E extends Throwable>
  A functional interface like `ToIntBiFunction` that declares a `Throwable`.
  FailableToIntFunction<T, E extends Throwable>
  A functional interface like `ToIntFunction` that declares a `Throwable`.
  FailableToLongBiFunction<T, U, E extends Throwable>
  A functional interface like `ToLongBiFunction` that declares a `Throwable`.
  FailableToLongFunction<T, E extends Throwable>
  A functional interface like `ToLongFunction` that declares a `Throwable`.
  Functions
  Factory for `Function`.
  IntToCharFunction
  Represents a function that accepts an int-valued argument and produces a char-valued result.
  MethodInvokers
  Converts `Method` objects to lambdas.
  Predicates
  Factory for `Predicate`.
  Suppliers
  Helps use `Supplier`.
  ToBooleanBiFunction<T,U>
  A function that accepts two arguments and produces a boolean result.
  TriConsumer<T,U,V>
  Represents an operation that accepts three input arguments and returns no result.
  TriFunction<T,U,V,R>
  Represents a function that accepts three arguments and produces a result.