accessor_core

Accessors for Core types, for use with the Accessor library
IN THIS PACKAGE
val empty : ( _, unit, 'a Core.Fqueue.t, [< Accessor_core__Import.variant ] ) Accessor_base.t

Access () iff the queue is empty.

val each : ( 'i -> 'a -> 'b, 'i -> 'a Core.Fqueue.t -> 'b Core.Fqueue.t, [< Accessor_core__Import.many ] ) Accessor_base.General.t

Access each element of the queue.

val eachi : ( (int * 'i) -> 'a -> 'b, 'i -> 'a Core.Fqueue.t -> 'b Core.Fqueue.t, [< Accessor_core__Import.many ] ) Accessor_base.General.t

The indexed version of each provides a numeric index for each element.

include Accessor_base.Monad.S with type 'a t := 'a Core.Fqueue.t
val map : ?how:[ `Parallel | `Sequential ] -> ( Base.unit -> 'a -> 'b, Base.unit -> 'at -> 'bt, [> Accessor.Subtyping.many ] ) Accessor.General.t -> 'at -> f:( 'a -> 'b Core.Fqueue.t ) -> 'bt Core.Fqueue.t
val mapi : ?how:[ `Parallel | `Sequential ] -> ( 'i -> 'a -> 'b, Base.unit -> 'at -> 'bt, [> Accessor.Subtyping.many ] ) Accessor.General.t -> 'at -> f:( 'i Accessor.Index.t -> 'a -> 'b Core.Fqueue.t ) -> 'bt Core.Fqueue.t
val all : ( Base.unit -> 'a Core.Fqueue.t -> 'a, Base.unit -> 'at -> 'bt, [> Accessor.Subtyping.many ] ) Accessor.General.t -> 'at -> 'bt Core.Fqueue.t
val iter : ?how:[ `Parallel | `Sequential ] -> ( Base.unit -> 'a -> _, Base.unit -> 'at -> _, [> Accessor.Subtyping.many_getter ] ) Accessor.General.t -> 'at -> f:( 'a -> Base.unit Core.Fqueue.t ) -> Base.unit Core.Fqueue.t
val iteri : ?how:[ `Parallel | `Sequential ] -> ( 'i -> 'a -> _, Base.unit -> 'at -> _, [> Accessor.Subtyping.many_getter ] ) Accessor.General.t -> 'at -> f:( 'i Accessor.Index.t -> 'a -> Base.unit Core.Fqueue.t ) -> Base.unit Core.Fqueue.t
val sum : ?how:[ `Parallel | `Sequential ] -> (module Base.Container.Summable with type t = 'sum) -> ( Base.unit -> 'a -> _, Base.unit -> 'at -> _, [> Accessor.Subtyping.many_getter ] ) Accessor.General.t -> 'at -> f:( 'a -> 'sum Core.Fqueue.t ) -> 'sum Core.Fqueue.t
val sumi : ?how:[ `Parallel | `Sequential ] -> (module Base.Container.Summable with type t = 'sum) -> ( 'i -> 'a -> _, Base.unit -> 'at -> _, [> Accessor.Subtyping.many_getter ] ) Accessor.General.t -> 'at -> f:( 'i Accessor.Index.t -> 'a -> 'sum Core.Fqueue.t ) -> 'sum Core.Fqueue.t
val count : ?how:[ `Parallel | `Sequential ] -> ( Base.unit -> 'a -> _, Base.unit -> 'at -> _, [> Accessor.Subtyping.many_getter ] ) Accessor.General.t -> 'at -> f:( 'a -> Base.bool Core.Fqueue.t ) -> Base.int Core.Fqueue.t
val counti : ?how:[ `Parallel | `Sequential ] -> ( 'i -> 'a -> _, Base.unit -> 'at -> _, [> Accessor.Subtyping.many_getter ] ) Accessor.General.t -> 'at -> f:( 'i Accessor.Index.t -> 'a -> Base.bool Core.Fqueue.t ) -> Base.int Core.Fqueue.t
val map_reduce : ?how:[ `Parallel | `Sequential ] -> ( Base.unit -> 'a -> _, Base.unit -> 'at -> _, [> Accessor.Subtyping.many_getter ] ) Accessor.General.t -> 'at -> empty:'b -> combine:( 'b -> 'b -> 'b ) -> f:( 'a -> 'b Core.Fqueue.t ) -> 'b Core.Fqueue.t
val map_reducei : ?how:[ `Parallel | `Sequential ] -> ( 'i -> 'a -> _, Base.unit -> 'at -> _, [> Accessor.Subtyping.many_getter ] ) Accessor.General.t -> 'at -> empty:'b -> combine:( 'b -> 'b -> 'b ) -> f:( 'i Accessor.Index.t -> 'a -> 'b Core.Fqueue.t ) -> 'b Core.Fqueue.t
val map_reduce_nonempty : ?how:[ `Parallel | `Sequential ] -> ( Base.unit -> 'a -> _, Base.unit -> 'at -> _, [> Accessor.Subtyping.nonempty_getter ] ) Accessor.General.t -> 'at -> combine:( 'b -> 'b -> 'b ) -> f:( 'a -> 'b Core.Fqueue.t ) -> 'b Core.Fqueue.t
val map_reduce_nonemptyi : ?how:[ `Parallel | `Sequential ] -> ( 'i -> 'a -> _, Base.unit -> 'at -> _, [> Accessor.Subtyping.nonempty_getter ] ) Accessor.General.t -> 'at -> combine:( 'b -> 'b -> 'b ) -> f:( 'i Accessor.Index.t -> 'a -> 'b Core.Fqueue.t ) -> 'b Core.Fqueue.t