| Interface | Description |
|---|---|
| Fn<IN,OUT> |
Interfaces for functional programming
The main interface, Fn, is genericized by an input IN and output OUT.
|
| Fn.AndN<IN,OUT> | |
| Fn.N<IN,OUT> |
Optional additional interface if we can take an array / varargs
|
| Fn.Pdouble |
"Efficiency interface for dealing with primitive doubles
|
| Fn.Pdouble.AndN | |
| Fn.Pdouble.N |
Optional additional interface if we can take an array / varargs
|
| Fn.Pint |
"Efficiency interface for dealing with primitive ints
|
| Fn.Pint.AndN | |
| Fn.Pint.N |
Optional additional interface if we can take an array / varargs
|
| Class | Description |
|---|---|
| Fn.Base<IN,OUT> |
Base class that throws UnsupportedOperationExceptions for all methods.
|
| Fn.Pdouble.Base |
Base class that throws UnsupportedOperationExceptions for all methods.
|
| Fn.Pint.Base |
Base class that throws UnsupportedOperationExceptions for all methods.
|
| Fns |
A bunch of implementations of basic Fns
Mimics Scala's collection : min, max, sum, product
Suffixes of "pdouble" or "pint" indicate that they deal with primitives
|
| FP |
Static utilities for Functional Programming
|
Code for using and linking together functions, inspired by javascript/Scala/Groovy. Functions may have an Object version, using Objects as inputs/outputs (generified by IN, OUT) For efficiency, there are specific versions dealing with primitive doubles and ints
Typical usage:
ClassCastException.