org.specs2.control.origami

Type members

Classlikes

trait Fold[M[_], A, B]

A Fold is a "left fold" over a data structure with:

A Fold is a "left fold" over a data structure with:

  • a 'start' value
  • a 'fold' method to accumulate state
  • an 'end' method to finalize the result

Both 'start' and 'end' have an effect which allows the whole folding to take place inside a context.

Companion
object
object Fold
Companion
class
trait Folds

Typeclass instances and creation methods for folds

Typeclass instances and creation methods for folds

Companion
object
object Folds extends Folds
Companion
class

Types

type AsyncFold[A, B] = Fold[Action, A, B]

alias for a Fold with async actions

alias for a Fold with async actions

type AsyncSink[A] = Fold[Action, A, Unit]

alias for a Sink with async actions

alias for a Sink with async actions

type FoldId[A, U] = Fold[Id, A, U]

alias for a non-effectful Fold

alias for a non-effectful Fold

type FoldState[A, B] = Fold[Id, A, B] { type S = B; }

alias for a non-effectful Fold where the state type is U

alias for a non-effectful Fold where the state type is U

type Sink[M[_], A] = Fold[M, A, Unit]

alias for a Fold sinking its last value

alias for a Fold sinking its last value