Package

scalaz

typelevel

Permalink

package typelevel

Type-level data structures in Scalaz.

This package contains:

In general, including scalaz.typelevel._ should be enough.

Source
package.scala
Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. typelevel
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. sealed trait Format[T, R] extends AnyRef

    Permalink
  2. trait Formatter[Params <: HList, R] extends (Params) ⇒ R

    Permalink
  3. trait Formatters extends AnyRef

    Permalink
  4. trait Func[F[_], TC[F[_]] <: Functor[F[_]], A, B] extends AnyRef

    Permalink

    Represents a function A => F[B] where [F: TC].

    Represents a function A => F[B] where [F: TC].

    Contributed by Eugene Yokota.

  5. trait FuncFunctions extends AnyRef

    Permalink
  6. trait FuncInstances extends FuncInstances1

    Permalink
  7. trait FuncInstances1 extends FuncInstances2

    Permalink
  8. trait FuncInstances2 extends FuncInstances3

    Permalink
  9. trait FuncInstances3 extends AnyRef

    Permalink
  10. case class GenericCons[M[_], H, +T <: GenericList[M]](head: M[H], tail: T) extends GenericList[M] with Product with Serializable

    Permalink

  11. sealed trait GenericList[+M[_]] extends AnyRef

    Permalink

    A list which preserves the precise types of all elements.

    A list which preserves the precise types of all elements. It can be seen as a generalized tuple of arbitrary arity.

    This structure allows to store values of different types together and supports some basic operations like appending, folding or mapping via a scalaz.NaturalTransformation. It also serves as a replacement for scalaz.syntax.ApplicativeBuilder.

    All elements have to share a common type constructor, e.g. scala.List or scala.Option. This makes easy use with scalaz.Applicative possible. If the types of the elements are not in appropriate shape, use scalaz.Id.

    Because this trait is covariant in M, most methods have an additional type parameter N which is usually inferred to be equal to M. However, it is still possible to prepend a value of type Option[A] to a list with the type constructor Some.

    M

    The common type constructor of all elements.

    See also

    scalaz.typelevel.HList

  12. case class GenericNil[M[_]]() extends GenericList[M] with Product with Serializable

    Permalink

  13. type HCons[H, T <: HList] = GenericCons[Id.Id, H, T]

    Permalink

    Note

    :: as type and extractor is available in scalaz.syntax.typelevel.HLists

  14. case class HConsFunc[F[_], TC[F[_]] <: Functor[F[_]], A, B, +T <: HListFunc[TC, A, B]](head: Func[F, TC, A, B], tail: T) extends HListFunc[TC, A, B] with Product with Serializable

    Permalink
  15. trait HFold[M[_], U] extends AnyRef

    Permalink
  16. type HList = GenericList[Id.Id]

    Permalink

    A scalaz.typelevel.GenericList with the type constructor scalaz.Id

  17. trait HListFunc[TC[X[_]] <: Functor[X[_]], A, B] extends AnyRef

    Permalink

    Represents a function A => T#Product[B] where [L <: TCList].

    Represents a function A => T#Product[B] where [L <: TCList].

    Example:

    import scalaz._, std.AllInstances._, typelevel._, Func._
    
    val list = AppFuncU { (x: Int) => x + 1 } :: AppFuncU { (x: Int) => List(x + 5) } :: AppFunc.HNil
    list.traverse(List(1, 2, 3))
  18. type HNil = GenericNil[Id.Id]

    Permalink
  19. case class HNilFunc[TC[F[_]] <: Functor[F[_]], A, B](TC0: KTypeClass[TC]) extends HListFunc[TC, A, B] with Product with Serializable

    Permalink
  20. trait HStream[T[_ <: Nat]] extends AbstractHStream

    Permalink

    An infinite sequence of elements with different types.

  21. type KCons[M[_], H, +T <: KList[M]] = GenericCons[M, H, T]

    Permalink
  22. type KList[M[_]] = GenericList[M]

    Permalink

    Alias for scalaz.typelevel.KList

  23. type KNil[M[_]] = GenericNil[M]

    Permalink
  24. trait KTypeClass[C[_[_]]] extends AnyRef

    Permalink

    A type class abstracting over the product and compose operations of type classes over types of kind * -> *.

    A type class abstracting over the product and compose operations of type classes over types of kind * -> *.

    It serves as a replacement for the various Product* classes in scalaz.

    Multiplication of instances is done via wrappers which are unpacked automatically if the implicits of scalaz.syntax.typelevel.TypeClasses are imported.

    See also

    scalaz.typelevel.TCList

    scalaz.syntax.typelevel.TypeClasses

  25. trait NFold[U] extends AnyRef

    Permalink
  26. sealed trait Nat extends AnyRef

    Permalink
  27. trait Nats extends AnyRef

    Permalink
  28. class SimpleUnionFormat[D <: UnionTypes.Disj, R] extends UnionFormat[D, R]

    Permalink
  29. case class Succ[N <: Nat](predecessor: N) extends Nat with Product with Serializable

    Permalink
  30. sealed trait TCCons[M[_], T <: TCList] extends TCList

    Permalink
  31. sealed trait TCList extends AnyRef

    Permalink

    A structure storing a list of type constructors in the type, providing type conversions for composition and products.

    A structure storing a list of type constructors in the type, providing type conversions for composition and products.

    Note

    There are no values of this type.

    See also

    scalaz.typelevel.TypeClass

  32. sealed trait TCNil extends TCList

    Permalink
  33. trait UnionFormat[D <: UnionTypes.Disj, R] extends Format[UnionTypes.Union[D], R]

    Permalink
  34. type UpperConstrained[T[_], U] = AnyRef { type Apply[X <: U] = T[X] }

    Permalink

    Constraining a type constructor to a certain upper bound

Value Members

  1. val :^:: GenericCons.type

    Permalink
  2. object AppFunc

    Permalink
  3. object AppFuncU

    Permalink
  4. object ApplyFunc

    Permalink
  5. object ApplyFuncU

    Permalink
  6. def FNil[R](implicit arg0: Monoid[R]): Formatter[HNil, R]

    Permalink

    The empty scalaz.typelevel.Formatter.

  7. object Format

    Permalink
  8. object Formatter extends Formatters

    Permalink
  9. object Func extends FuncFunctions with FuncInstances

    Permalink
  10. object FunctorFunc

    Permalink
  11. object FunctorFuncU

    Permalink
  12. object GenericList

    Permalink
  13. object HCons extends Serializable

    Permalink
  14. object HFold

    Permalink
  15. object HListFunc

    Permalink
  16. object HLists

    Permalink
  17. lazy val HNil: HNil

    Permalink
  18. object HStream

    Permalink
  19. val KNil: _KNil.type

    Permalink
  20. object KTypeClass

    Permalink
  21. object NFold

    Permalink
  22. object Nats extends Nats

    Permalink
  23. object Typelevel extends AllSyntaxes with Nats

    Permalink
  24. object Zero extends Nat with Product with Serializable

    Permalink
  25. object _KNil extends KNil[Nothing]

    Permalink
  26. package formatters

    Permalink
  27. implicit def mkIdOps[T <: HList](list: T): IdOps[T]

    Permalink

Inherited from AnyRef

Inherited from Any

Ungrouped