package spotlib

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module Spotlib.FreemSource

Sourcemodule M1 : sig ... end
include module type of M1
Sourcetype +'a t =
  1. | Return : 'a -> 'a t
  2. | Bind : 'a t * ('a -> 'b t) -> 'b t
include Monad.T with type 'a t := 'a t
include Monad_intf.S1 with type 'a t := 'a t
Sourceval return : 'a -> 'a t
Sourceval bind : 'a t -> ('a -> 'b t) -> 'b t
include Monad_intf.EX1 with type 'a t := 'a t
Sourceval fmap : ('a -> 'b) -> 'a t -> 'b t

fmap in Haskell

Sourceval liftM : ('a -> 'b) -> 'a t -> 'b t

synonym of fmap

Sourceval fmap2 : ('a -> 'b -> 'c) -> 'a t -> 'b t -> 'c t

fmap2 in Haskell

Sourceval liftM2 : ('a -> 'b -> 'c) -> 'a t -> 'b t -> 'c t

synonym of fmap2

Sourceval void : 'a t -> unit t
Sourceval seq : 'a t list -> 'a list t

sequence in Haskell. Not tail recursive.

Sourceval seq_ : unit t list -> unit t

sequence_ in Haskell. Not tail recursive.

Sourceval mapM : ('a -> 'b t) -> 'a list -> 'b list t

Not tail recursive

Sourceval mapM_ : ('a -> unit t) -> 'a list -> unit t

Not tail recursive

Sourceval iteri : (int -> 'a -> unit t) -> 'a list -> unit t

Iteration with index starting from 0. Not tail recursive.

Sourceval for_ : int -> int -> (int -> unit t) -> unit t

for like iteration. Not tail recursive

Sourceval join : 'a t t -> 'a t
include Monad_intf.Infix1 with type 'a t := 'a t
Sourceval (>>=) : 'a t -> ('a -> 'b t) -> 'b t

synonym of bind

Sourceval (>>|) : 'a t -> ('a -> 'b) -> 'b t

synonum of fmap, with the flipped arguments

Applicative style binops

Sourceval (^<$>) : ('a -> 'b) -> 'a t -> 'b t

same as map, <$> in Haskell

Sourceval (/<*>) : ('a -> 'b) t -> 'a t -> 'b t

<*> in Haskell

Sourcemodule S : Monad_intf.S1 with type 'a t := 'a t
Sourcemodule EX : Monad_intf.EX1 with type 'a t := 'a t
Sourcemodule Infix : Monad_intf.Infix1 with type 'a t := 'a t
Sourcemodule M2 : sig ... end