base

Full standard library replacement for OCaml
IN THIS PACKAGE
type ('perm, 'record, 'field) t_with_perm

'record is the type of the record. 'field is the type of the values stored in the record field with name name. 'perm is a way of restricting the operations that can be used.

type ('record, 'field) t = ( [ `Read | `Set_and_create ], 'record, 'field ) t_with_perm

A record field with no restrictions.

type ('record, 'field) readonly_t = ( [ `Read ], 'record, 'field ) t_with_perm

A record that can only be read, because it belongs to a private type.

val name : ( _, _, _ ) t_with_perm -> string
val get : ( _, 'r, 'a ) t_with_perm -> 'r -> 'a
val fset : ( [> `Set_and_create ], 'r, 'a ) t_with_perm -> 'r -> 'a -> 'r
val setter : ( [> `Set_and_create ], 'r, 'a ) t_with_perm -> ( 'r -> 'a -> unit ) option
val map : ( [> `Set_and_create ], 'r, 'a ) t_with_perm -> 'r -> f:( 'a -> 'a ) -> 'r
val updater : ( [> `Set_and_create ], 'r, 'a ) t_with_perm -> ( 'r -> f:( 'a -> 'a ) -> unit ) option
type ('perm, 'record, 'result) user = {
f : 'field. ( 'perm, 'record, 'field ) t_with_perm -> 'result;
}