class Interpreter[F[_], M[_]] extends AnyRef
Provides a range of natural transformations that can be derived from the natural transformation of a term
of an algebra into the desired Monad
- F
The type of the
Functorthat represents the algebra to be interpreted- M
The
Monadinto which to translate theFreeAlgebra
Linear Supertypes
Ordering
- Alphabetic
- By Inheritance
Inherited
- Interpreter
- AnyRef
- Any
- Hide All
- Show All
Visibility
- Public
- All
Instance Constructors
Type Members
- type Program[A] = Free[F, A]
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
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- def interpret: ~>[Program, M]
- def interpretT[T[_[_], _]](implicit arg0: Hoist[T]): ~>[[β$0$]T[[A]Free[F, A], β$0$], [β$1$]T[M, β$1$]]
- def interpretT2[T1[_[_], _], T2[_[_], _]](implicit arg0: Hoist[T1], arg1: Hoist[T2]): ~>[[β$4$]T1[[β$2$]T2[[A]Free[F, A], β$2$], β$4$], [β$5$]T1[[β$3$]T2[M, β$3$], β$5$]]
- def interpretT3[T1[_[_], _], T2[_[_], _], T3[_[_], _]](implicit arg0: Hoist[T1], arg1: Hoist[T2], arg2: Hoist[T3]): ~>[[β$12$]T1[[β$13$]T2[[β$9$]T3[[A]Free[F, A], β$9$], β$13$], β$12$], [β$14$]T1[[β$15$]T2[[β$11$]T3[M, β$11$], β$15$], β$14$]]
- val interpretTerm: ~>[F, M]
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
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 runLog[A](p: Process[Program, A])(implicit catchable: Catchable[M]): M[slamdata.Predef.Vector[A]]
- def runLogT[T[_[_], _], A](p: Process[[β$21$]T[[A]Free[F, A], β$21$], A])(implicit arg0: Hoist[T], catchable: Catchable[[β$22$]T[M, β$22$]]): T[M, slamdata.Predef.Vector[A]]
- def runLogT2[T1[_[_], _], T2[_[_], _], A](p: Process[[β$25$]T1[[β$24$]T2[[A]Free[F, A], β$24$], β$25$], A])(implicit arg0: Hoist[T1], arg1: Hoist[T2], catchable: Catchable[[β$27$]T1[[β$26$]T2[M, β$26$], β$27$]]): T1[[β$28$]T2[M, β$28$], slamdata.Predef.Vector[A]]
- def runLogT3[T1[_[_], _], T2[_[_], _], T3[_[_], _], A](p: Process[[β$33$]T1[[β$34$]T2[[β$32$]T3[[A]Free[F, A], β$32$], β$34$], β$33$], A])(implicit arg0: Hoist[T1], arg1: Hoist[T2], arg2: Hoist[T3], catchable: Catchable[[β$37$]T1[[β$38$]T2[[β$36$]T3[M, β$36$], β$38$], β$37$]]): T1[[β$40$]T2[[β$39$]T3[M, β$39$], β$40$], slamdata.Predef.Vector[A]]
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )