Parameter For.S

type t

the type held by the Semigroup.

Functions

val combine : t -> t -> t

combine x y Combine two values (x and y) of t into one.

val times_nel : int -> t -> t option

times_nel n x apply combine on x n times. If n is lower than 1 the function will returns None.

val reduce_nel : t Preface_core.Nonempty_list.t -> t

Reduce a Nonempty_list.t using combine.

Infix operators

module Infix : Preface_specs.Semigroup.INFIX with type t := t
val (<|>) : t -> t -> t

Infix version of CORE.combine