(*---------------------------------------------------------------------------*

- Copyright (c) 2002, James H. Woodyatt

+ Copyright (c) 2002-2004, James H. Woodyatt

Redistribution and use in source and binary forms, with or without

val to_buffer: char t -> Buffer.t -> unit

+(** {6 Monad Functions} *)

+(** Use [write x] to compose a continuation monad that puts [x] into the

+ sequence produced by evaluation and returns the unit value.

+val writeC: 'x -> ('x t, unit) Cf_cmonad.t

+(** Use [evalC m] to evaluate the continuation monad [m] to compute the

+ sequence it encapsulates.

+val evalC: ('x t, unit) Cf_cmonad.t -> 'x t

+(** Use [writeSC x] to compose a state-continuation monad that puts [x] into

+ the sequence produced by evaluation and returns the unit value.

+val writeSC: 'x -> ('s, 'x t, unit) Cf_scmonad.t

+(** Use [evalSC m s] to evaluate the state-continuation monad [m] with the

+ initial state [s], computing the encapsulated sequence.

+val evalSC: ('s, 'x t, unit) Cf_scmonad.t -> 's -> 'x t

+(** The module containing the [sequence] and [accumulate] functions for the

+ (** Use [sequence z] to compose a monad that binds all of the monads in the

+ sequence [z] in the order specified. Returns the unit value.

+ val sequence: ('x, unit) Cf_smonad.t t -> ('x, unit) Cf_smonad.t

+ (** Use [accumulate z] to compose a monad that binds all of the monads in

+ the sequence [z] in the order specified, accumulating all of the values

+ val accumulate: ('x, 'a) Cf_smonad.t t -> ('x, 'a list) Cf_smonad.t

+(** The module containing the [sequence] and [accumulate] functions for the

+ (** Use [sequence z] to compose a monad that binds all of the monads in the

+ sequence [z] in the order specified. Returns the unit value.

+ val sequence: ('x, unit) Cf_cmonad.t t -> ('x, unit) Cf_cmonad.t

+ (** Use [accumulate z] to compose a monad that binds all of the monads in

+ the sequence [z] in the order specified, accumulating all of the values

+ val accumulate: ('x, 'a) Cf_cmonad.t t -> ('x, 'a list) Cf_cmonad.t

+(** The module containing the [sequence] and [accumulate] functions for the

+ state-continuation monad.

+ (** Use [sequence z] to compose a monad that binds all of the monads in the

+ sequence [z] in the order specified. Returns the unit value.

+ val sequence: ('s, 'x, unit) Cf_scmonad.t t -> ('s, 'x, unit) Cf_scmonad.t

+ (** Use [accumulate z] to compose a monad that binds all of the monads in

+ the sequence [z] in the order specified, accumulating all of the values

+ ('s, 'x, 'a) Cf_scmonad.t t -> ('s, 'x, 'a list) Cf_scmonad.t

(*--- End of File [ cf_seq.mli ] ---*)