Warning: Reason support is experimental. We are looking for beta-tester and contributors.

Module type Eliom_shared_sigs.RLIST

module type RLIST = sig..end

type 'a t

The type of (shared) reactive lists

type 'a handle

Handles are used to manipulate reactive lists

type 'a signal
type 'a sv

The type of shared values

type 'a ct

Client-side version of 'a t

type 'a chandle

Client-side version of 'a handle

val create : 
  ?default:('a ct *
   'a chandle)
   option Eliom_client_value.t ->
  ?reset_default:bool ->
  'a list ->
  'a t * 'a handle

create ?default ?reset_default l produces a pair l, f, where s is a (shared) reactive list, and f is a handle for manipulating the list.

The initial value of the list is l, unless default is provided. default, if provided, is used as the client-side list (and corresponding handle). reset_default, if set to true (default: false), resets the value of default to l.

val concat : 
  'a t ->
  'a t -> 'a t
val value : 'a t -> 'a list sv
val signal : 
  ?eq:('a -> 'a -> bool) sv ->
  'a t -> 'a list signal
val singleton_s : 'a signal -> 'a t
val map : 
  ('a -> 'b) sv ->
  'a t -> 'b t
val from_signal : 
  ?eq:('a -> 'a -> bool) sv ->
  'a list signal -> 'a t
val acc_e : 
  ?init:'a t * 'a handle ->
  'a React.E.t Eliom_client_value.t -> 'a t
module Lwt : sig..end

Cooperative versions of the ReactiveData operators