Package fj.data
package fj.data
Common algebraic data types.
-
ClassDescription$<A,
B> The constant arrow, for attaching a new name to an existing type.Array<A>Provides an interface to arrays.Projects an array by providing only operations which do not mutate.Functions that convert between data structure types.DList<A>Difference List.Either<A,B> TheEithertype represents a value of one of two possible types (a disjoint union).Either.Left<A,B> A left projection of an either value.Either.Right<A,B> A right projection of an either value.Either3<A,B, C> Either3.Left<A,B, C> Either3.LeftProjection<A,B, C> Either3.Middle<A,B, C> Either3.MiddleProjection<A,B, C> Either3.Right<A,B, C> Either3.RightProjection<A,B, C> Enumerator<A>Abstracts over a type that may have a successor and/or predecessor value.Eval<A>Evalis an abstraction over different models of evaluation.Eval.Always<A>Represents a lazy computation that is evaluated every time when it's requested.Eval.Later<A>Represents a lazy computation that is evaluated only once.Eval.Now<A>Represents an eager computation.A helper abstraction that allows to perform recursive lazy transformations in O(1) stack space.HashMap<K,V> A mutable hash map providing O(1) lookup.HashSet<A>A mutable hash set that guarantees uniqueness of its elements providing O(1) lookup.IO<A>IO monad for processing filesIO monad for processing files, with main methodsIOFunctions.enumFileLines(File, Option, Iteratee.IterV),IOFunctions.enumFileChars(File, Option, Iteratee.IterV)andIOFunctions.enumFileCharChunks(File, Option, Iteratee.IterV)(the latter one is the fastest as char chunks read from the file are directly passed to the iteratee without indirection in between).IterableW<A>A wrapper for Iterable that equips it with some useful functions.The input to an iteratee.Iteratee.IterV<E,A> A pure iteratee computation which is either done or needs more inputFunctions that convert between types from the core Java API.A lazy (non-evaluated) immutable character string.List<A>Provides an in-memory, immutable, singly linked list.List.Buffer<A>A mutable, singly linked list.List.Cons<A>List.Nil<A>Optic factory methods for a ListRepresents a natural number (zero, one, two, etc.)NonEmptyList<A>Provides an in-memory, immutable, singly linked list with totalheadandtail.Option<A>An optional value that may be none (no value) or some (a value).Option.None<A>Option.Some<A>PriorityQueue<K,A> A priority queue implementation backed by aFingerTree.Reader<A,B> The Reader monad (also called the function monad, so equivalent to the idea of F).SafeIO<A>Seq<A>Provides an immutable finite sequence, implemented as a finger tree.Set<A>Provides an in-memory, immutable set, implemented as a red/black tree.Set.Empty<A>Set.Tree<A>State<S,A> Stream<A>A lazy (not yet evaluated), immutable, singly linked list.Stream.Cons<A>Stream.Nil<A>Tree<A>Provides a lazy, immutable, non-empty, multi-way tree (a rose tree).TreeMap<K,V> An immutable, in-memory map, backed by a red-black tree.TreeZipper<A>Provides a zipper structure for rose trees, which is a Tree supplied with a location within that tree.Validation<E,T> Isomorphic toEitherbut has renamed functions and represents failure on the left and success on the right.A failing projection of a validation.Writer<W,A> Zipper<A>Provides a pointed stream, which is a non-empty zipper-like stream structure that tracks an index (focus) position in a stream.