package arrayjit

  1. Overview
  2. Docs
module Set_O : sig ... end
val map_merge : ('a, 'b, 'c) Base.Map.t -> ('a, 'b, 'c) Base.Map.t -> f:('b -> 'b -> 'b) -> ('a, 'b, 'c) Base.Map.t
val mref_add : ('a, 'b, 'c) Base.Map.t Base.ref -> key:'a -> data:'b -> or_:('b -> Base.unit) -> Base.unit
val mref_add_missing : ('a, 'b, 'c) Base.Map.t Base.ref -> 'a -> f:(unit -> 'b) -> Base.unit
type settings = {
  1. mutable debug_log_from_routines : Base.bool;
  2. mutable debug_memory_locations : Base.bool;
  3. mutable output_debug_files_in_run_directory : Base.bool;
  4. mutable with_debug : Base.bool;
  5. mutable fixed_state_for_init : Base.int Base.option;
  6. mutable print_decimals_precision : Base.int;
    (*

    When rendering arrays etc., outputs this many decimal digits.

    *)
}
val settings_of_sexp : Sexplib0.Sexp.t -> settings
val sexp_of_settings : settings -> Sexplib0.Sexp.t
val settings : settings
val accessed_global_args : Base.String.t Base.Hash_set.t
val read_cmdline_or_env_var : Base.String.t -> Base.String.t option
val config_file_args : (Base.String.t, Base.String.t) Base.Hashtbl.t
val get_global_arg : default:Base.String.t -> arg_name:Base.String.t -> Base.String.t

Retrieves arg_name argument from the command line or from an environment variable, returns default if none found.

val union_find : equal:('a -> 'a -> bool) -> ('a, 'a, 'b) Base.Map.t -> key:'a -> rank:int -> 'a * int
val union_add : equal:('a -> 'a -> bool) -> ('a, 'a, 'b) Base.Map.t -> 'a -> 'a -> ('a, 'a, 'b) Base.Map.t
val unique_keep_first : equal:('a -> 'a -> bool) -> 'a list -> 'a Base.List.t

Filters the list keeping the first occurrence of each element.

val sorted_diff : compare:('a -> 'b -> int) -> 'a Base.List.t -> 'b list -> 'a Base.List.t
val parallel_merge : (from:int -> to_:int -> 'a) -> Base.int -> Base.unit

parallel_merge merge num_devices progressively invokes the pairwise merge callback, converging on the 0th position, with from ranging from 1 to num_devices - 1, and to_ < from.

type waiter = {
  1. await : Base.unit -> Base.unit;
  2. release : Base.unit -> Base.unit;
  3. finalize : Base.unit -> Base.unit;
}
val waiter : unit -> waiter
val sexp_append : elem:Base.Sexp.t -> Base.Sexp.t -> Base.Sexp.t
val sexp_mem : elem:Base.Sexp.t -> Base.Sexp.t -> bool
val sexp_deep_mem : elem:Base.Sexp.t -> Base.Sexp.t -> Base.bool
val split_with_seps : Re.re -> string -> string Base.List.t
module Lazy : sig ... end
type requirement =
  1. | Skip
  2. | Required
  3. | Optional of {
    1. callback_if_missing : Base.unit -> Base.unit;
    }
val compare_requirement : requirement -> requirement -> Base.int
val requirement_of_sexp : Sexplib0.Sexp.t -> requirement
val sexp_of_requirement : requirement -> Sexplib0.Sexp.t
val get_debug_formatter : fname:Base.string -> Format.formatter option
exception User_error of Base.string
OCaml

Innovation. Community. Security.