| Interface | Description |
|---|---|
| AsGenericMonad | |
| Comprehender<T> |
Interface for defining how Comprehensions should work for a type
Cyclops For Comprehensions will supply either a JDK 8 Predicate or Function
for filter / map / flatMap
The comprehender should wrap these in a suitable type and make the call to the
underlying Monadic Type (T) the Comprehender implementation supports.
|
| Decomposable |
trait / interface for Value Objects / Case Classes / Algebraic Data Types
unapply uses Reflection by default, but clients can override it if neccessary
|
| Gettable<T> | |
| Mappable |
Interface that represents an Object that can be converted to a map
|
| MonadicConverter<T> | |
| Monoid<T> |
An interoperability trait for Monoids
Also inteded for use with Java 8 Streams (reduce method)
Practically the method signature to reduce matches the Monoid interface
Monoids could regrarded as immutable equivalents to JDK Collectors for Immutable Reduction
|
| Printable | |
| Streamable<T> | |
| TupleWrapper | |
| Unwrapable |
| Class | Description |
|---|---|
| AsDecomposable | |
| AsDecomposable.CoercedDecomposable | |
| AsFunctor | |
| AsGenericMonoid | |
| AsGenericMonoid.WrappedMonoid<A> | |
| AsMappable |
Don't break encapsulation of classes for testing purposes
Coerce Objects to Map form in testing, to test their values.
|
| AsMappable.CoercedMappable | |
| AsStreamable | |
| AsStreamable.CoercedStreamable<T> | |
| AsSupplier | |
| AsSupplier.CoercedSupplier<T> | |
| InvokeDynamic | |
| Reducers | |
| ReflectionCache |