common functional interfaces



Functional Interface: Predicate<T>
Function Descriptor: T -> boolean
Primitive specializations: IntPredicate, LongPredicate, DoublePredicate

Functional Interface: Consumer<T>
Function Descriptor: T -> void
Primitive specializations: IntConsumer, LongConsumer, DoubleConsumer

Functional Interface: Function<T, R>
Function Descriptor: T -> R
Primitive specializations: IntFunction<R>, IntToDoubleFunction, IntToLongFunction,
LongFunction<R>, LongToDoubleFunction,
LongToIntFunction, DoubleFunction<R>, ToIntFunction<T>,
ToDoubleFunction<T>, ToLongFunction<T>

Functional Interface: Supplier<T>
Function Descriptor: () -> T
Primitive specializations: BooleanSupplier, IntSupplier, LongSupplier, DoubleSupplier

Functional Interface: UnaryOperator<T>
Function Descriptor: T -> T
Primitive specializations: IntUnaryOperator, LongUnaryOperator, DoubleUnaryOperator

Functional Interface: BinaryOperator<T>
Function Descriptor: (T, T) -> T
Primitive specializations: IntBinaryOperator, LongBinaryOperator, DoubleBinaryOperator

Functional Interface: BiConsumer<T, U>
Function Descriptor: (T, U) -> void
Primitive specializations: ObjIntConsumer<T>, ObjLongConsumer<T>, ObjDoubleConsumer<T>

Functional Interface: BiFunction<T, U, R>
Function Descriptor: (T, U) -> R
Primitive specializations: ToIntBiFunction<T, U>, ToLongBiFunction<T, U>, ToDoubleBiFunction<T, U>