object Free extends FreeInstances
- Source
- Free.scala
- Alphabetic
- By Inheritance
- Free
- FreeInstances
- FreeInstances0
- FreeInstances1
- FreeInstances2
- FreeInstances3
- FreeInstances4
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- type Sink[A, B] = Free[[β$5$](=> A) => β$5$, B]
A computation that accepts values of type
A
, eventually resulting in a value of typeB
.A computation that accepts values of type
A
, eventually resulting in a value of typeB
. Note the similarity to an scalaz.iteratee.Iteratee. - type Source[A, B] = Free[[β$4$](A, β$4$), B]
A computation that produces values of type
A
, eventually resulting in a value of typeB
. - type Trampoline[A] = Free[Function0, A]
A computation that can be stepped through, suspended, and paused
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def apply[S[_], A](s: S[Free[S, A]]): Free[S, A]
Absorb a step in
S
into the free monad forS
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def await[A]: Sink[A, A]
A sink that waits for a single value and returns it.
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- implicit def freeFoldable[F[_]](implicit arg0: Foldable[F]): Foldable[[β$17$]Free[F, β$17$]]
- Definition Classes
- FreeInstances3
- implicit def freeFoldable1[F[_]](implicit arg0: Foldable1[F]): Foldable1[[β$18$]Free[F, β$18$]]
- Definition Classes
- FreeInstances2
- implicit def freeMonad[S[_]]: Monad[[β$22$]Free[S, β$22$]] with BindRec[[β$23$]Free[S, β$23$]]
- Definition Classes
- FreeInstances
- implicit def freeMonoid[S[_], A](implicit arg0: Monoid[A]): Monoid[Free[S, A]]
- Definition Classes
- FreeInstances
- implicit def freeSemigroup[S[_], A](implicit arg0: Semigroup[A]): Semigroup[Free[S, A]]
- Definition Classes
- FreeInstances0
- implicit def freeTraverse[F[_]](implicit arg0: Traverse[F]): Traverse[[β$19$]Free[F, β$19$]]
- Definition Classes
- FreeInstances1
- implicit def freeTraverse1[F[_]](implicit arg0: Traverse1[F]): Traverse1[[β$20$]Free[F, β$20$]]
- Definition Classes
- FreeInstances0
- implicit def freeZip[S[_]](implicit Z: Zip[S]): Zip[[β$26$]Free[S, β$26$]]
- Definition Classes
- FreeInstances
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def joinF[S[_], A](value: Free[[β$0$]Free[S, β$0$], A]): Free[S, A]
Monadic join for the higher-order monad
Free
- def liftF[S[_], A](value: S[A]): Free[S, A]
Suspends a value within a functor in a single step.
Suspends a value within a functor in a single step. Monadic unit for a higher-order monad.
- def liftFU[MA](value: => MA)(implicit MA: Unapply[Functor, MA]): Free[M, A]
A version of
liftF
that infers the nested type constructor. - final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def pause: Trampoline[Unit]
A trampoline step that doesn't do anything.
- def point[S[_], A](value: A): Free[S, A]
Return the given value in the free monad.
- def produce[A](a: A): Source[A, Unit]
A source that produces the given value.
- def pure[S[_], A](value: A): Free[S, A]
Alias for
point
- def reset[A](r: Trampoline[A]): Trampoline[A]
Collapse a trampoline to a single step.
- def return_[S[_], A](value: => A)(implicit S: Applicative[S]): Free[S, A]
Suspend the given computation in a single step.
- def roll[S[_], A](value: S[Free[S, A]]): Free[S, A]
Absorb a step into the free monad.
- def suspend[S[_], A](value: => Free[S, A]): Free[S, A]
Suspend a computation in a pure step of the applicative functor
S
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- implicit val trampolineInstance: Comonad[Trampoline]
- Definition Classes
- FreeInstances4
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()