Module

Control.Subcategory.Functor.HasBind

Package
purescript-subcategory
Repository
matthew-hilty/purescript-subcategory

#HasBind Source

class HasBind c m  where

Members

Instances

#(>>=) Source

Operator alias for Control.Subcategory.Functor.HasBind.bind (left-associative / precedence 1)

#bind' Source

bind' :: forall v1 v0 m c. HasBind c m => ObjectOf c v0 => ObjectOf c (m v1) => Restrictable Function c => m v0 -> (v0 -> (m v1)) -> m v1

#(>>>=) Source

Operator alias for Control.Subcategory.Functor.HasBind.bind (left-associative / precedence 1)

#bindFlipped Source

bindFlipped :: forall v1 v0 m c. HasBind c m => ObjectOf c v0 => ObjectOf c (m v1) => c v0 (m v1) -> m v0 -> m v1

#(=<<) Source

Operator alias for Control.Subcategory.Functor.HasBind.bindFlipped (right-associative / precedence 1)

#composeKleisli Source

composeKleisli :: forall v2 v1 v0 m c. HasBind c m => ObjectOf c v0 => ObjectOf c v1 => ObjectOf c (m v1) => ObjectOf c (m v2) => ObjectOf c (c v0 (m v1)) => Slackable c => c v0 (m v1) -> c v1 (m v2) -> v0 -> m v2

#(>=>) Source

Operator alias for Control.Subcategory.Functor.HasBind.composeKleisli (right-associative / precedence 1)

#composeKleisliFlipped Source

composeKleisliFlipped :: forall v2 v1 v0 m c. HasBind c m => ObjectOf c v0 => ObjectOf c v1 => ObjectOf c (m v1) => ObjectOf c (m v2) => ObjectOf c (c v0 (m v1)) => Slackable c => c v1 (m v2) -> c v0 (m v1) -> v0 -> m v2

#(<=<) Source

Operator alias for Control.Subcategory.Functor.HasBind.composeKleisliFlipped (right-associative / precedence 1)

#ifM Source

ifM :: forall v m c. HasBind c m => ObjectOf c Boolean => ObjectOf c (m v) => Restrictable Function c => m Boolean -> m v -> m v -> m v

#join Source

join :: forall v m c. HasBind c m => HasIdentity c => ObjectOf c (m v) => m (m v) -> m v
Modules
Control.Subcategory.Adjoint
Control.Subcategory.Category
Control.Subcategory.Closed
Control.Subcategory.ClosedMonoidal
Control.Subcategory.ClosedSemimonoidal
Control.Subcategory.Constituency
Control.Subcategory.Endofunctor
Control.Subcategory.Endofunctor.Applicative
Control.Subcategory.Endofunctor.Apply
Control.Subcategory.Endofunctor.Bind
Control.Subcategory.Endofunctor.Discard
Control.Subcategory.Endofunctor.HasApply
Control.Subcategory.Endofunctor.HasBind
Control.Subcategory.Endofunctor.HasCompose
Control.Subcategory.Endofunctor.HasConst
Control.Subcategory.Endofunctor.HasMap
Control.Subcategory.Endofunctor.HasPoint
Control.Subcategory.Endofunctor.HasPure
Control.Subcategory.Endofunctor.HasUnpoint
Control.Subcategory.Endofunctor.Monad
Control.Subcategory.Endofunctor.Parameterized.HasConst
Control.Subcategory.Functor
Control.Subcategory.Functor.Discard
Control.Subcategory.Functor.HasApply
Control.Subcategory.Functor.HasBind
Control.Subcategory.Functor.HasConst
Control.Subcategory.Functor.HasMap
Control.Subcategory.Functor.HasPure
Control.Subcategory.Functor.Parameterized.HasConst
Control.Subcategory.HasCompose
Control.Subcategory.HasCurriedEval
Control.Subcategory.HasCurry
Control.Subcategory.HasIdentity
Control.Subcategory.HasIntroduce
Control.Subcategory.HasStart
Control.Subcategory.HasTJoin
Control.Subcategory.HasTUnit
Control.Subcategory.HasTerminate
Control.Subcategory.HasUncurriedEval
Control.Subcategory.HasUncurry
Control.Subcategory.HasUnit
Control.Subcategory.Monoidal
Control.Subcategory.Profunctor
Control.Subcategory.Profunctor.HasDimap
Control.Subcategory.Relation.Reflexive
Control.Subcategory.Relation.Symmetric
Control.Subcategory.Restrictable
Control.Subcategory.Semigroupoid
Control.Subcategory.Semimonoidal
Control.Subcategory.Slackable
Control.Subcategory.Strength