monadId

libretto.lambda.util.Monad.monadId
object monadId extends Monad[[A] =>> A]

Attributes

Graph
Supertypes
trait Monad[[A] =>> A]
class Object
trait Matchable
class Any
Self type
monadId.type

Members list

Value members

Concrete methods

override def pure[A](a: A): A

Attributes

Definition Classes

Inherited fields

lazy val applicative: Applicative[[A] =>> A]

An Applicative derived from this Monad instance.

An Applicative derived from this Monad instance.

Note that it is intentional that

  • Monad is not made to extend Applicative.
  • The Applicative derived from this Monad (i.e. this field) is not given. The reason is that we often want to use a different Applicative instance by default.

Attributes

Inherited from:
Monad

Extensions

Extensions

extension [A](a: A)
override def flatMap[B](f: A => B): B

Attributes

Definition Classes

Inherited extensions

extension [A](fa: A)
def *>[B](fb: B): [A] =>> A[B]

Attributes

Inherited from:
Monad
def >>[B](fb: => B): [A] =>> A[B]

Attributes

Inherited from:
Monad
infix def map[B](f: A => B): [A] =>> A[B]

Attributes

Inherited from:
Monad
def void: [A] =>> A[Unit]

Attributes

Inherited from:
Monad
extension [A](ffa: A)
def flatten: [A] =>> A[A]

Attributes

Inherited from:
Monad