Module Test_error.Error_accumulator

type 'error contextualized_errors = {
introduction_time : Core.Time.t;
errors_by_time : 'error list Core.Time.Map.t;
}
val equal_contextualized_errors : 'error. ( 'error -> 'error -> Core_kernel__.Import.bool ) -> 'error contextualized_errors -> 'error contextualized_errors -> bool
val sexp_of_contextualized_errors : 'error. ( 'error -> Ppx_sexp_conv_lib.Sexp.t ) -> 'error contextualized_errors -> Ppx_sexp_conv_lib.Sexp.t
val compare_contextualized_errors : 'error. ( 'error -> 'error -> Core_kernel__.Import.int ) -> 'error contextualized_errors -> 'error contextualized_errors -> Core_kernel__.Import.int
type 'error t = {
from_current_context : 'error list;
contextualized_errors : 'error contextualized_errors Core.String.Map.t;
}
val equal : 'error. ( 'error -> 'error -> Core_kernel__.Import.bool ) -> 'error t -> 'error t -> bool
val sexp_of_t : 'error. ( 'error -> Ppx_sexp_conv_lib.Sexp.t ) -> 'error t -> Ppx_sexp_conv_lib.Sexp.t
val compare : 'error. ( 'error -> 'error -> Core_kernel__.Import.int ) -> 'error t -> 'error t -> Core_kernel__.Import.int
val empty_contextualized_errors : unit -> 'a contextualized_errors
val empty : 'a t
val is_empty : 'a t -> bool
val record_errors : 'a contextualized_errors Core.String.Map.t -> Core.String.Map.Key.t -> 'b list -> time_of_error:( 'c -> Core.Time.Map.Key.t ) -> 'a contextualized_errors Core.String.Map.t
val error_count : 'a t -> int
val all_errors : 'a t -> 'b Base__List.t
val contextualize' : Core.String.Map.Key.t -> 'a t -> time_of_error:( 'b -> Core.Time.Map.Key.t ) -> 'c t
val contextualize : Core.String.Map.Key.t -> internal_error t -> internal_error t
val singleton : 'a -> 'b t
val of_context_free_list : 'a list -> 'b t
val of_contextualized_list' : Core.String.Map.Key.t -> 'a list -> time_of_error:( 'a -> Core.Time.Map.Key.t ) -> 'b t
val of_contextualized_list : Core.String.Map.Key.t -> internal_error list -> internal_error t
val add : 'a t -> 'b -> 'c t
val add_to_context : 'a t -> Core.String.Map.Key.t -> 'b -> time_of_error:( 'c -> Core.Time.Map.Key.t ) -> 'd t
val map : 'a t -> f:( 'b -> 'c ) -> 'd t
val iter_contexts : 'a t -> f:( Core.String.Map.Key.t -> 'b list -> unit ) -> unit
val merge : 'a t -> 'b t -> 'c t
val combine : 'a t list -> 'b t
val partition : 'a t -> f:( 'b -> bool ) -> 'c t * 'd t