Package

higherkindness.droste

data

Permalink

package data

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. data
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. type :<[F[_], A] = Attr[F, A]

    Permalink
  2. abstract type Attr[F[_], A]

    Permalink

    A fix point function for types that adds an additional attribute to each node in the resulting data structure.

    A fix point function for types that adds an additional attribute to each node in the resulting data structure.

    This is a cofree comonad.

    Implemented as an obscured alias:

    type Attr[F[_], A] = (A, F[Attr[F, A]])

    The companion object can be used to translate between representations.

  3. abstract type AttrF[F[_], A, B]

    Permalink

    The pattern functor for Attr.

    The pattern functor for Attr.

    This is also the environment comonad transformer "EnvT".

    Implemented as an obscured alias:

    type AttrF[F[_], A, B] = (A, F[B])

    The companion object can be used to translate between representations.

  4. abstract type Coattr[F[_], A]

    Permalink

    A fix point function for types that allows for the replacements of nodes in the data structure with values of a different type.

    A fix point function for types that allows for the replacements of nodes in the data structure with values of a different type.

    This is the dual of Attr and a very basic free monad.

    This implementation is not lazy and is used strictly for data.

    Implemented as an obscured alias:

    type Coattr[F[_], A] = Either[A, F[Coattr[F, A]]]

    The companion object can be used to translate between representations.

  5. abstract type CoattrF[F[_], A, B]

    Permalink

    The pattern functor for Coattr.

    The pattern functor for Coattr.

    The dual of AttrF.

    Implemented as an obscured alias:

    type CoattrF[F[_], A, B] = Either[A, F[B]]

    The companion object can be used to translate between representations.

  6. trait CoattrImplicits extends AnyRef

    Permalink
  7. abstract type Fix[F[_]]

    Permalink

    A fix point function for types.

    A fix point function for types.

    Implemented as an obscured alias:

    type Fix[F[_]] = F[Fix[F]]

    The companion object can be used to translate between representations.

  8. sealed abstract class Mu[F[_]] extends Serializable

    Permalink

    Mu is the least fixed point of a functor F.

    Mu is the least fixed point of a functor F. It is a computation that can consume a inductive noninfinite structure in one go.

    In Haskell this can more aptly be expressed as: data Mu f = Mu (forall x . (f x -> x) -> x)

  9. sealed abstract class Nu[F[_]] extends Serializable

    Permalink

    Nu is the greatest fixed point of a functor F.

    Nu is the greatest fixed point of a functor F. It is a computation that can generate a coinductive infinite structure on demand.

    In Haskell this can more aptly be expressed as: data Nu g = forall s . Nu (s -> g s) s

Value Members

  1. val :<: Attr.type

    Permalink
  2. object Attr

    Permalink
  3. object AttrF

    Permalink
  4. object Coattr

    Permalink
  5. object CoattrF

    Permalink
  6. object Fix

    Permalink
  7. object Mu extends Serializable

    Permalink
  8. object Nu extends Serializable

    Permalink
  9. package list

    Permalink
  10. object prelude extends AttrImplicits with AttrFImplicits with CoattrImplicits with CoattrFImplicits

    Permalink
  11. package stream

    Permalink

Inherited from AnyRef

Inherited from Any

Ungrouped