package util
- Alphabetic
- By Inheritance
- util
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- trait Aggregator[B, A] extends (B, A) => B
Represents the kind of function that one passes to
foldLeft
, as a typeclass. - abstract class AggregatorK[B, F[_]] extends AnyRef
- trait Catenable[F[_]] extends PlusEmpty[F]
- trait Choose[L <: HList, C <: HList] extends (L) => C
- trait ChooseByNats[L <: HList, C <: HList, NS <: HList] extends (NS) => Choose[L, C]
- trait ChooseByPtrs[L <: HList, C <: HList, Ptrs <: HList] extends (Ptrs) => Choose[L, C]
- type ContU[M[_], A] = IndexedContsT[scalaz.Id.Id, Unit, Unit, M, A]
Continuation monad with result type
M[Unit]
. - trait DeepEqual[A1, A2, Ptr1[_], Ptr2[_]] extends AnyRef
Comparing of (potentially cyclic) object graphs for equality.
Comparing of (potentially cyclic) object graphs for equality. Features:
- abstracted over pointers;
- termination and correctness in presence of cycles;
- stack safety.
XXX: Relies on meaningful hashCode and equals for Ptr1
- trait DeepEqualK[F1[_[_]], F2[_[_]]] extends AnyRef
- type DeepShow[A, Ptr[_]] = ObjectSerializer[A, String, Ptr]
- trait DeepShowK[A[_[_]]] extends AnyRef
- type Desc[Ptr[_]] = FreeObjectOutput[String, Ptr, Unit]
- trait EqualK[F[_]] extends AnyRef
Universally quantified equality, isomorphic to
∀A. Equal[F[A]]
.Universally quantified equality, isomorphic to
∀A. Equal[F[A]]
.Note that equality on
A
is not required to compare values ofF[A]
. - sealed abstract class Exists[F[_]] extends AnyRef
- sealed abstract class Exists{(* -> *) -> *}[F[_[_]]] extends AnyRef
- trait Forall{(* -> *) -> * -> *}[F[_[_], _]] extends AnyRef
Universally quantified value:
∀ K[_], A. F[K, A]
- trait Forall{(* -> *) -> *}[F[_[_]]] extends AnyRef
Universally quantified value:
∀ K[_]. F[K]
- trait Forall{* -> *}[F[_]] extends AnyRef
Universally quantified value:
∀ A. F[A]
- final class FreeK[F[_[_], _], A] extends AnyRef
Free monad for type constructors of kind
F[_[_], _]
, whereF
's first type parameter is recursively set to FreeK[F, ?].Free monad for type constructors of kind
F[_[_], _]
, whereF
's first type parameter is recursively set to FreeK[F, ?]. If we pretend that recursive type aliases are legal, thenFreeK
is equivalent totype FreeK[F[_[_], _], A] = Free[F[FreeK[F, ?], ?], A]
This is useful for instruction sets (a.k.a. algebras, DSLs, ...) that need to refer to the type of the free program that they are embedded in.
- final case class FreeKT[F[_[_], _], M[_], A](run: FreeT[[β$3$]F[[γ$2$]FreeKT[F, M, γ$2$], β$3$], M, A]) extends Product with Serializable
- final class FreeObjectOutput[R, Ptr[_], A] extends AnyRef
- trait FunctionK{(* -> *) -> * -> *}[F[_[_], _], G[_[_], _]] extends AnyRef
Universally quantified function:
∀ K[_], A. F[K, A] => G[K, A]
- trait FunctionK{(* -> *) -> *}[F[_[_]], G[_[_]]] extends AnyRef
Universally quantified function:
∀ K[_]. F[K] => G[K]
- trait FunctorKA[F[_[_], _]] extends AnyRef
- trait HEqual[A, B] extends AnyRef
Heterogeneous equality, i.e.
Heterogeneous equality, i.e. able to compare values of two disparate types.
- trait HEqualK[F[_]] extends EqualK[F] with Equal[F[_]]
Universally quantified heterogeneous equality, isomorphic to
∀A,B. HEqual[F[A], F[B]]
.Universally quantified heterogeneous equality, isomorphic to
∀A,B. HEqual[F[A], F[B]]
.Note that (heterogeneous) equality between
A
andB
is not required to compareF[A]
toF[B]
. - final case class HHKMap[K[_[_[_]]], V[_[_[_]]]](map: Map[K[Any], V[Any]]) extends AnyVal with Product with Serializable
- final case class HKMap[K[_[_]], V[_[_]]](map: Map[K[Any], V[Any]]) extends AnyVal with Product with Serializable
- trait HListPtr[L <: HList, N <: Nat] extends At[L, N]
- trait HOrderK[F[_]] extends HEqualK[F] with Order[F[_]]
- type Index[K, V] = TransformedIndex[K, V, V]
- trait Inject[F[_], G[_]] extends ~>[F, G]
Similar to
scalaz.Inject
, except:Similar to
scalaz.Inject
, except:- not sealed, thus not restricted to injections into
scalaz.Coproduct
; - doesn't require to implement projection, so more instances are possible.
- not sealed, thus not restricted to injections into
- trait InjectInstances0 extends InjectInstances1
- trait InjectInstances1 extends InjectInstances2
- trait InjectInstances2 extends InjectInstances3
- trait InjectInstances3 extends InjectInstances4
- trait InjectInstances4 extends InjectInstances5
- trait InjectInstances5 extends AnyRef
- final case class IsEqual[Ptr1[_], Ptr2[_]] extends Product with Serializable
- final case class K2Map[K[_, _], V[_, _]](map: Map[K[_, _], V[_, _]]) extends AnyVal with Product with Serializable
- final case class K3Map[K[_, _, _], V[_, _, _]](map: Map[K[_, _, _], V[_, _, _]]) extends AnyVal with Product with Serializable
- sealed abstract class K3Pair[K[_, _, _], V[_, _, _]] extends AnyRef
- final case class KMap[K[_], V[_]](map: Map[K[_], V[_]]) extends AnyVal with Product with Serializable
- final case class KMap1_2[K[_], V[_, _, _], TC[_, _, _]](map: Map[K[_], V[_, _, _]]) extends AnyVal with Product with Serializable
KMap where values are parameterized by 2 additional type parameters, uniquely determined by a typeclass instance.
KMap where values are parameterized by 2 additional type parameters, uniquely determined by a typeclass instance. Type safety relies on
TC[A, B, C]
being functional inA
, i.e. for eachA
there are globally uniqueB
,C
such that there is an instance ofTC[A, B, C]
. - final case class KMapB[K[_ <: UB], V[_ <: UB], UB](map: Map[K[_ <: UB], V[_ <: UB]]) extends AnyVal with Product with Serializable
KMap with an upper bound on the type parameter accepted by K[_], V[_].
- final case class KPair[F[_[_]], G[_[_]], A[_]](_1: F[A], _2: G[A]) extends Product with Serializable
- sealed abstract class Lst[+A] extends AnyRef
Linked list with O(1) cons, snoc and concatenation and amortized O(1) uncons.
- trait Mapped[L <: HList, F[_]] extends Serializable
- trait MappedListBuilder[L <: HList] extends AnyRef
- final class Mediated[M[_], A, B, C] extends AnyVal
Computation of
C
with a missing link betweenA
andB
.Computation of
C
with a missing link betweenA
andB
. Encapsulates effectful computations() ~~~> A
andB ~~~> C
. By plugging inA ~~~> B
one can obtain() ~~~> C
. The purpose of this class is to prevent using just one of the two encapsulated computations: either both, or none. This is useful when the effects of the two computations are somehow paired and this pairing can't be broken. This is only safe whenM
is a lazy monad with benign effects. - trait MonadObjectOutput[F[_], R, Ptr[_]] extends MonadTell[F, R] with BindRec[F]
- trait MonadTellState[F[_], W, S] extends MonadTell[F, W] with MonadState[F, S]
- trait MonoidAggregator[B, A] extends Aggregator[B, A] with Monoid[B]
- trait MonoidK[F[_]] extends AnyRef
- trait ObjectOutput[O, R, Ptr[_]] extends AnyRef
- O
represents output. Examples:
String
,java.io.OutputStream
, ...- R
represents type of data to be written to the output. Examples:
String
, bit string, ...- Ptr
abstraction of pointers.
- trait ObjectSerializer[A, S, Ptr[_]] extends AnyRef
Serialization of (potentially cyclic) object graphs.
Serialization of (potentially cyclic) object graphs. Features:
- abstracted over pointers;
- termination and correctness in presence of cycles;
- stack safety.
- A
type of objects that this serializer can serialize.
- S
type of data this serializer writes when serializing
A
, e.g.String
, byte array, etc.- Ptr
abstraction of pointers.
- trait Pointers[L <: HList] extends AnyRef
- trait Pointers0[L <: HList, T <: HList, N <: Nat] extends AnyRef
- trait ShowK[F[_]] extends ~>[F, [α]String]
- abstract class StateInterpreter[K[_], F[_], S] extends AnyRef
- trait StratifiedAggregator[B, A] extends (B, A, Int) => B
- trait StratifiedMonoidAggregator[B, A] extends StratifiedAggregator[B, A] with Monoid[B]
- trait SummonHList[L <: HList] extends AnyRef
Used to implicitly summon an HList by implicitly summoning its elements.
- trait Transformed[L <: HList, F[_], G[_]] extends Serializable
- case class TransformedIndex[K, VIn, VOut] extends Product with Serializable
- case class TwoLevel[F[_], A](_1: F[A], _2: F[A]) extends Product with Serializable
- trait TwoLevelInstances extends TwoLevelInstances1
- trait TwoLevelInstances1 extends AnyRef
- type Uninhabited = Nothing { type T = Unit }
- trait ValuedPointers[V <: HList, PA <: HList] extends AnyRef
- type WriterState[W, S, A] = WriterStateT[W, S, scalaz.Id.Id, A]
- final case class WriterStateT[W, S, F[_], A](run: (S) => F[(W, S, A)]) extends AnyVal with Product with Serializable
- trait WriterStateTInstances extends WriterStateTInstances1
- trait WriterStateTInstances1 extends WriterStateTInstances2
- trait WriterStateTInstances2 extends AnyRef
- type ∃[F[_]] = F[_]
- type ≈>[F[_[_]], G[_[_]]] = FunctionK{(* -> *) -> *}[F, G]
- type ≈~>[F[_[_], _], G[_[_], _]] = FunctionK{(* -> *) -> * -> *}[F, G]
Value Members
- object Aggregator
- object AggregatorK
- object Choose
- object ChooseByNats
- object ChooseByPtrs
- object ContU
- object CoproductK
- object DeepEqual
- object DeepShow
- object Desc
- object EqualK
- object Exists
- object Exists{(* -> *) -> *}
- object Forall{(* -> *) -> * -> *}
- object FreeK
- object FreeKT extends Serializable
- object FreeObjectOutput
- object FunctionK{(* -> *) -> * -> *}
- object HEqual
- object HEqualK
- object HHKMap extends Serializable
- object HKMap extends Serializable
- object HListPtr extends Serializable
- object Index
- object Inject extends InjectInstances0
- object IsEqual extends Serializable
- object K2Map extends Serializable
- object K3Map extends Serializable
- object K3Pair
- object KMap extends Serializable
- object KMap1_2 extends Serializable
- object KMapB extends Serializable
- object KPair extends Serializable
- object Lst
- object Mapped extends Serializable
- object MappedListBuilder
- object Mediated
- object ObjectOutput
- object ObjectSerializer
- object Pointers
- object Pointers0
- object ShowK
- object SummonHList
- object Transformed extends Serializable
- object TransformedIndex extends Serializable
- object TwoLevel extends TwoLevelInstances with Serializable
- object ValuedPointers
- object WriterState
- object WriterStateT extends WriterStateTInstances with Serializable