class
SpecializedInterpreter[F[_], M[_]] extends Interpreter[F, M]
Instance Constructors
-
new
SpecializedInterpreter(interpretTerm: ~>[F, M])(implicit arg0: Monad[M])
Type Members
-
type
Program[A] = Free[F, A]
Value Members
-
final
def
!=(arg0: Any): Boolean
-
final
def
##(): Int
-
final
def
==(arg0: Any): Boolean
-
final
def
asInstanceOf[T0]: T0
-
def
clone(): AnyRef
-
final
def
eq(arg0: AnyRef): Boolean
-
def
equals(arg0: Any): Boolean
-
def
finalize(): Unit
-
final
def
getClass(): Class[_]
-
def
hashCode(): Int
-
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
-
final
def
ne(arg0: AnyRef): Boolean
-
final
def
notify(): Unit
-
final
def
notifyAll(): Unit
-
def
runLog[A](p: Process[Program, A])(implicit catchable: Catchable[M]): M[Predef.Vector[A]]
-
def
runLogE[E, A](p: Process[[γ$46$]EitherT[[A]Free[F, A], E, γ$46$], A])(implicit catchable: Catchable[M]): EitherT[M, E, 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, 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$], 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$], Predef.Vector[A]]
-
def
runLogWE[E, L, A](p: Process[[γ$48$]EitherT[[γ$47$]WriterT[[A]Free[F, A], L, γ$47$], E, γ$48$], A])(implicit arg0: Monoid[L], catchable: Catchable[M]): EitherT[[γ$49$]WriterT[M, L, γ$49$], E, Predef.Vector[A]]
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
-
def
toString(): String
-
final
def
wait(): Unit
-
final
def
wait(arg0: Long, arg1: Int): Unit
-
final
def
wait(arg0: Long): Unit
Inherited from AnyRef
Inherited from Any
Extends Interpreter to provide a version with better type inference for commonly used
MonadTrans
The type of the
Functor
that represents the algebra to be interpretedThe
Monad
into which to translate theFree
Algebra