accessor

A library that makes it nicer to work with nested functional data structures
IN THIS PACKAGE
Module type Accessor . Monad . S2
type ('a, 'e) t
val map : ?how:[ `Parallel | `Sequential ] -> ( Base.unit -> 'a -> 'b, Base.unit -> 'at -> 'bt, [> Subtyping.many ] ) General.t -> 'at -> f:( 'a -> ( 'b, 'e ) t ) -> ( 'bt, 'e ) t
val mapi : ?how:[ `Parallel | `Sequential ] -> ( 'i -> 'a -> 'b, Base.unit -> 'at -> 'bt, [> Subtyping.many ] ) General.t -> 'at -> f:( 'i Index.t -> 'a -> ( 'b, 'e ) t ) -> ( 'bt, 'e ) t
val all : ( Base.unit -> ( 'a, 'e ) t -> 'a, Base.unit -> 'at -> 'bt, [> Subtyping.many ] ) General.t -> 'at -> ( 'bt, 'e ) t
val all_unit : ( Base.unit -> ( Base.unit, 'e ) t -> _, Base.unit -> 'at -> _, [> Subtyping.many_getter ] ) General.t -> 'at -> ( Base.unit, 'e ) t
val iter : ?how:[ `Parallel | `Sequential ] -> ( Base.unit -> 'a -> _, Base.unit -> 'at -> _, [> Subtyping.many_getter ] ) General.t -> 'at -> f:( 'a -> ( Base.unit, 'e ) t ) -> ( Base.unit, 'e ) t
val iteri : ?how:[ `Parallel | `Sequential ] -> ( 'i -> 'a -> _, Base.unit -> 'at -> _, [> Subtyping.many_getter ] ) General.t -> 'at -> f:( 'i Index.t -> 'a -> ( Base.unit, 'e ) t ) -> ( Base.unit, 'e ) t
val sum : ?how:[ `Parallel | `Sequential ] -> (module Base.Container.Summable with type t = 'sum) -> ( Base.unit -> 'a -> _, Base.unit -> 'at -> _, [> Subtyping.many_getter ] ) General.t -> 'at -> f:( 'a -> ( 'sum, 'e ) t ) -> ( 'sum, 'e ) t
val sumi : ?how:[ `Parallel | `Sequential ] -> (module Base.Container.Summable with type t = 'sum) -> ( 'i -> 'a -> _, Base.unit -> 'at -> _, [> Subtyping.many_getter ] ) General.t -> 'at -> f:( 'i Index.t -> 'a -> ( 'sum, 'e ) t ) -> ( 'sum, 'e ) t
val count : ?how:[ `Parallel | `Sequential ] -> ( Base.unit -> 'a -> _, Base.unit -> 'at -> _, [> Subtyping.many_getter ] ) General.t -> 'at -> f:( 'a -> ( Base.bool, 'e ) t ) -> ( Base.int, 'e ) t
val counti : ?how:[ `Parallel | `Sequential ] -> ( 'i -> 'a -> _, Base.unit -> 'at -> _, [> Subtyping.many_getter ] ) General.t -> 'at -> f:( 'i Index.t -> 'a -> ( Base.bool, 'e ) t ) -> ( Base.int, 'e ) t
val map_reduce : ?how:[ `Parallel | `Sequential ] -> ( Base.unit -> 'a -> _, Base.unit -> 'at -> _, [> Subtyping.many_getter ] ) General.t -> 'at -> empty:'b -> combine:( 'b -> 'b -> 'b ) -> f:( 'a -> ( 'b, 'e ) t ) -> ( 'b, 'e ) t
val map_reducei : ?how:[ `Parallel | `Sequential ] -> ( 'i -> 'a -> _, Base.unit -> 'at -> _, [> Subtyping.many_getter ] ) General.t -> 'at -> empty:'b -> combine:( 'b -> 'b -> 'b ) -> f:( 'i Index.t -> 'a -> ( 'b, 'e ) t ) -> ( 'b, 'e ) t
val map_reduce_nonempty : ?how:[ `Parallel | `Sequential ] -> ( Base.unit -> 'a -> _, Base.unit -> 'at -> _, [> Subtyping.nonempty_getter ] ) General.t -> 'at -> combine:( 'b -> 'b -> 'b ) -> f:( 'a -> ( 'b, 'e ) t ) -> ( 'b, 'e ) t
val map_reduce_nonemptyi : ?how:[ `Parallel | `Sequential ] -> ( 'i -> 'a -> _, Base.unit -> 'at -> _, [> Subtyping.nonempty_getter ] ) General.t -> 'at -> combine:( 'b -> 'b -> 'b ) -> f:( 'i Index.t -> 'a -> ( 'b, 'e ) t ) -> ( 'b, 'e ) t