A collection of protocols upon which the cats abstractions are built.
NOTE: Functions of this namespace are not intended to be used directly. It is considered internal api.
A collection of protocols upon which the cats abstractions are built. NOTE: Functions of this namespace are not intended to be used directly. It is considered internal api.
The Applicative abstraction.
The Applicative abstraction.
(-fapply app af av)
Applies the function(s) inside af's context to the value(s) inside av's context while preserving the context.
Applies the function(s) inside af's context to the value(s) inside av's context while preserving the context.
(-pure app v)
Takes any context or monadic value app
and any value v
, and puts
the value v
in the most minimal context (normally mempty
) of same type of app
Takes any context or monadic value `app` and any value `v`, and puts the value `v` in the most minimal context (normally `mempty`) of same type of `app`
A 'Functor' of two arguments.
A 'Functor' of two arguments.
(-bimap btor f g bv)
Map over both arguments at the same time.
Map over both arguments at the same time.
A marker protocol for identifying the valid context types.
A marker protocol for identifying the valid context types.
Abstraction that establishes a concrete type as a member of a context.
A great example is the Maybe monad type Just. It implements this abstraction to establish that Just is part of the Maybe monad.
Abstraction that establishes a concrete type as a member of a context. A great example is the Maybe monad type Just. It implements this abstraction to establish that Just is part of the Maybe monad.
(-get-context _)
Get the context associated with the type.
Get the context associated with the type.
A type class to extract the value from a monad context.
A type class to extract the value from a monad context.
(-extract mv)
Extract the value from monad context.
Extract the value from monad context.
Abstraction of data structures that can be folded to a summary value.
Abstraction of data structures that can be folded to a summary value.
(-foldl fctx f z xs)
Left-associative fold of a structure.
Left-associative fold of a structure.
(-foldr fctx f z xs)
Right-associative fold of a structure.
Right-associative fold of a structure.
A data type that can be mapped over without altering its context.
A data type that can be mapped over without altering its context.
(-fmap ftor f fv)
Applies function f to the value(s) inside the context of the functor fv.
Applies function f to the value(s) inside the context of the functor fv.
The Monad abstraction.
The Monad abstraction.
(-mbind m mv f)
(-mreturn m v)
A complement abstraction for Monad that supports the notion of addition.
A complement abstraction for Monad that supports the notion of addition.
(-mplus m mv mv')
An associative addition operation.
An associative addition operation.
A complement abstraction for monad that supports the notion of an identity element.
A complement abstraction for monad that supports the notion of an identity element.
(-mzero m)
The identity element for the given monadzero.
The identity element for the given monadzero.
A Semigroup which has an identity element with respect to an associative binary operation.
A Semigroup which has an identity element with respect to an associative binary operation.
(-mempty s)
The identity element for the given monoid.
The identity element for the given monoid.
An abstraction to make a type printable in a platform independent manner.
An abstraction to make a type printable in a platform independent manner.
(-repr _)
Get the repl ready representation of the object.
Get the repl ready representation of the object.
A structure with an associative binary operation.
A structure with an associative binary operation.
(-mappend s sv sv')
An associative addition operation.
An associative addition operation.
Abstraction of data structures that can be traversed from left to right performing an action on every element.
Abstraction of data structures that can be traversed from left to right performing an action on every element.
(-traverse tctx f tv)
Map each element to an Applicative, evaluate the applicatives from left to right and collect the results.
Map each element to an Applicative, evaluate the applicatives from left to right and collect the results.
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close