lisa.monad.Monad#
- class lisa.monad.Monad[source]#
Bases:
object
Methods
Takes a monadic value Monad[A], a function that takes an A and returns Monad[B], and returns a Monad[B].
Takes a monadic value Monad[Monad[A]], and returns a Monad[A].
Takes a monadic value Monad[A], a function that takes an A and returns B, and returns a Monad[B].
Takes a value of type T and turns it into a “monadic value” of type Monad[T].
Methods#
- Monad.__await__()#
- abstract Monad.bind(continuation)#
Takes a monadic value Monad[A], a function that takes an A and returns Monad[B], and returns a Monad[B].
Note
It is allowed to return a
_TailCall
instance.
- Monad.map(self, f)[source]#
Takes a monadic value Monad[A], a function that takes an A and returns B, and returns a Monad[B].
- abstract classmethod Monad.pure(x)#
Inherited method, see
lisa.monad.Monad.pure()
Takes a value of type T and turns it into a “monadic value” of type Monad[T].