package async_kernel

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
val iter : t -> check_access: (([< `Read | `Set_and_create ], t, (unit -> unit) option) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) option -> 'a) -> job_pool: (([< `Read | `Set_and_create ], t, (Execution_context.t, Obj.t -> unit, Obj.t) Core_kernel.Pool.Slots.t3 Core_kernel.Pool.t) Fieldslib.Field.t_with_perm -> t -> (Execution_context.t, Obj.t -> unit, Obj.t) Core_kernel.Pool.Slots.t3 Core_kernel.Pool.t -> 'b) -> normal_priority_jobs: (([< `Read | `Set_and_create ], t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> t -> Async_kernel__.Types.Job_queue.t -> 'c) -> low_priority_jobs: (([< `Read | `Set_and_create ], t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> t -> Async_kernel__.Types.Job_queue.t -> 'd) -> very_low_priority_workers: (([< `Read | `Set_and_create ], t, Very_low_priority_worker.t Core_kernel.Deque.t) Fieldslib.Field.t_with_perm -> t -> Very_low_priority_worker.t Core_kernel.Deque.t -> 'e) -> main_execution_context: (([< `Read | `Set_and_create ], t, Execution_context.t) Fieldslib.Field.t_with_perm -> t -> Execution_context.t -> 'f) -> current_execution_context: (([< `Read | `Set_and_create ], t, Execution_context.t) Fieldslib.Field.t_with_perm -> t -> Execution_context.t -> 'g) -> uncaught_exn: (([< `Read | `Set_and_create ], t, (Core_kernel.Exn.t * Core_kernel.Sexp.t) option) Fieldslib.Field.t_with_perm -> t -> (Core_kernel.Exn.t * Core_kernel.Sexp.t) option -> 'h) -> cycle_count: (([< `Read | `Set_and_create ], t, int) Fieldslib.Field.t_with_perm -> t -> int -> 'i) -> cycle_start: (([< `Read | `Set_and_create ], t, Core_kernel.Int63.t) Fieldslib.Field.t_with_perm -> t -> Core_kernel.Int63.t -> 'j) -> in_cycle: (([< `Read | `Set_and_create ], t, bool) Fieldslib.Field.t_with_perm -> t -> bool -> 'k) -> run_every_cycle_start: (([< `Read | `Set_and_create ], t, (unit -> unit) list) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) list -> 'l) -> last_cycle_time: (([< `Read | `Set_and_create ], t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> t -> Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t -> 'm) -> last_cycle_num_jobs: (([< `Read | `Set_and_create ], t, int) Fieldslib.Field.t_with_perm -> t -> int -> 'n) -> total_cycle_time: (([< `Read | `Set_and_create ], t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> t -> Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t -> 'o) -> time_source: (([< `Read | `Set_and_create ], t, Core_kernel.read_write Synchronous_time_source.T1.t) Fieldslib.Field.t_with_perm -> t -> Core_kernel.read_write Synchronous_time_source.T1.t -> 'p) -> external_jobs: (([< `Read | `Set_and_create ], t, Async_kernel__.Types.External_job.t Thread_safe_queue.t) Fieldslib.Field.t_with_perm -> t -> Async_kernel__.Types.External_job.t Thread_safe_queue.t -> 'q) -> thread_safe_external_job_hook: (([< `Read | `Set_and_create ], t, unit -> unit) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) -> 'r) -> job_queued_hook: (([< `Read | `Set_and_create ], t, (Priority.t -> unit) option) Fieldslib.Field.t_with_perm -> t -> (Priority.t -> unit) option -> 's) -> event_added_hook: (([< `Read | `Set_and_create ], t, (Core_kernel.Int63.t -> unit) option) Fieldslib.Field.t_with_perm -> t -> (Core_kernel.Int63.t -> unit) option -> 't) -> yield: (([< `Read | `Set_and_create ], t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque) Fieldslib.Field.t_with_perm -> t -> (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque -> 'u) -> yield_until_no_jobs_remain: (([< `Read | `Set_and_create ], t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque) Fieldslib.Field.t_with_perm -> t -> (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque -> 'v) -> check_invariants: (([< `Read | `Set_and_create ], t, bool) Fieldslib.Field.t_with_perm -> t -> bool -> 'w) -> max_num_jobs_per_priority_per_cycle: (([< `Read | `Set_and_create ], t, Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t) Fieldslib.Field.t_with_perm -> t -> Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t -> 'x) -> record_backtraces: (([< `Read | `Set_and_create ], t, bool) Fieldslib.Field.t_with_perm -> t -> bool -> 'y) -> on_start_of_cycle: (([< `Read | `Set_and_create ], t, unit -> unit) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) -> 'z) -> on_end_of_cycle: (([< `Read | `Set_and_create ], t, unit -> unit) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) -> 'a1) -> 'a1
val fold : t -> init:'a -> check_access: ('a -> ([< `Read | `Set_and_create ], t, (unit -> unit) option) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) option -> 'b) -> job_pool: ('b -> ([< `Read | `Set_and_create ], t, (Execution_context.t, Obj.t -> unit, Obj.t) Core_kernel.Pool.Slots.t3 Core_kernel.Pool.t) Fieldslib.Field.t_with_perm -> t -> (Execution_context.t, Obj.t -> unit, Obj.t) Core_kernel.Pool.Slots.t3 Core_kernel.Pool.t -> 'c) -> normal_priority_jobs: ('c -> ([< `Read | `Set_and_create ], t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> t -> Async_kernel__.Types.Job_queue.t -> 'd) -> low_priority_jobs: ('d -> ([< `Read | `Set_and_create ], t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> t -> Async_kernel__.Types.Job_queue.t -> 'e) -> very_low_priority_workers: ('e -> ([< `Read | `Set_and_create ], t, Very_low_priority_worker.t Core_kernel.Deque.t) Fieldslib.Field.t_with_perm -> t -> Very_low_priority_worker.t Core_kernel.Deque.t -> 'f) -> main_execution_context: ('f -> ([< `Read | `Set_and_create ], t, Execution_context.t) Fieldslib.Field.t_with_perm -> t -> Execution_context.t -> 'g) -> current_execution_context: ('g -> ([< `Read | `Set_and_create ], t, Execution_context.t) Fieldslib.Field.t_with_perm -> t -> Execution_context.t -> 'h) -> uncaught_exn: ('h -> ([< `Read | `Set_and_create ], t, (Core_kernel.Exn.t * Core_kernel.Sexp.t) option) Fieldslib.Field.t_with_perm -> t -> (Core_kernel.Exn.t * Core_kernel.Sexp.t) option -> 'i) -> cycle_count: ('i -> ([< `Read | `Set_and_create ], t, int) Fieldslib.Field.t_with_perm -> t -> int -> 'j) -> cycle_start: ('j -> ([< `Read | `Set_and_create ], t, Core_kernel.Int63.t) Fieldslib.Field.t_with_perm -> t -> Core_kernel.Int63.t -> 'k) -> in_cycle: ('k -> ([< `Read | `Set_and_create ], t, bool) Fieldslib.Field.t_with_perm -> t -> bool -> 'l) -> run_every_cycle_start: ('l -> ([< `Read | `Set_and_create ], t, (unit -> unit) list) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) list -> 'm) -> last_cycle_time: ('m -> ([< `Read | `Set_and_create ], t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> t -> Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t -> 'n) -> last_cycle_num_jobs: ('n -> ([< `Read | `Set_and_create ], t, int) Fieldslib.Field.t_with_perm -> t -> int -> 'o) -> total_cycle_time: ('o -> ([< `Read | `Set_and_create ], t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> t -> Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t -> 'p) -> time_source: ('p -> ([< `Read | `Set_and_create ], t, Core_kernel.read_write Synchronous_time_source.T1.t) Fieldslib.Field.t_with_perm -> t -> Core_kernel.read_write Synchronous_time_source.T1.t -> 'q) -> external_jobs: ('q -> ([< `Read | `Set_and_create ], t, Async_kernel__.Types.External_job.t Thread_safe_queue.t) Fieldslib.Field.t_with_perm -> t -> Async_kernel__.Types.External_job.t Thread_safe_queue.t -> 'r) -> thread_safe_external_job_hook: ('r -> ([< `Read | `Set_and_create ], t, unit -> unit) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) -> 's) -> job_queued_hook: ('s -> ([< `Read | `Set_and_create ], t, (Priority.t -> unit) option) Fieldslib.Field.t_with_perm -> t -> (Priority.t -> unit) option -> 't) -> event_added_hook: ('t -> ([< `Read | `Set_and_create ], t, (Core_kernel.Int63.t -> unit) option) Fieldslib.Field.t_with_perm -> t -> (Core_kernel.Int63.t -> unit) option -> 'u) -> yield: ('u -> ([< `Read | `Set_and_create ], t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque) Fieldslib.Field.t_with_perm -> t -> (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque -> 'v) -> yield_until_no_jobs_remain: ('v -> ([< `Read | `Set_and_create ], t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque) Fieldslib.Field.t_with_perm -> t -> (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque -> 'w) -> check_invariants: ('w -> ([< `Read | `Set_and_create ], t, bool) Fieldslib.Field.t_with_perm -> t -> bool -> 'x) -> max_num_jobs_per_priority_per_cycle: ('x -> ([< `Read | `Set_and_create ], t, Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t) Fieldslib.Field.t_with_perm -> t -> Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t -> 'y) -> record_backtraces: ('y -> ([< `Read | `Set_and_create ], t, bool) Fieldslib.Field.t_with_perm -> t -> bool -> 'z) -> on_start_of_cycle: ('z -> ([< `Read | `Set_and_create ], t, unit -> unit) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) -> 'a1) -> on_end_of_cycle: ('a1 -> ([< `Read | `Set_and_create ], t, unit -> unit) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) -> 'b1) -> 'b1
val for_all : t -> check_access: (([< `Read | `Set_and_create ], t, (unit -> unit) option) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) option -> bool) -> job_pool: (([< `Read | `Set_and_create ], t, (Execution_context.t, Obj.t -> unit, Obj.t) Core_kernel.Pool.Slots.t3 Core_kernel.Pool.t) Fieldslib.Field.t_with_perm -> t -> (Execution_context.t, Obj.t -> unit, Obj.t) Core_kernel.Pool.Slots.t3 Core_kernel.Pool.t -> bool) -> normal_priority_jobs: (([< `Read | `Set_and_create ], t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> t -> Async_kernel__.Types.Job_queue.t -> bool) -> low_priority_jobs: (([< `Read | `Set_and_create ], t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> t -> Async_kernel__.Types.Job_queue.t -> bool) -> very_low_priority_workers: (([< `Read | `Set_and_create ], t, Very_low_priority_worker.t Core_kernel.Deque.t) Fieldslib.Field.t_with_perm -> t -> Very_low_priority_worker.t Core_kernel.Deque.t -> bool) -> main_execution_context: (([< `Read | `Set_and_create ], t, Execution_context.t) Fieldslib.Field.t_with_perm -> t -> Execution_context.t -> bool) -> current_execution_context: (([< `Read | `Set_and_create ], t, Execution_context.t) Fieldslib.Field.t_with_perm -> t -> Execution_context.t -> bool) -> uncaught_exn: (([< `Read | `Set_and_create ], t, (Core_kernel.Exn.t * Core_kernel.Sexp.t) option) Fieldslib.Field.t_with_perm -> t -> (Core_kernel.Exn.t * Core_kernel.Sexp.t) option -> bool) -> cycle_count: (([< `Read | `Set_and_create ], t, int) Fieldslib.Field.t_with_perm -> t -> int -> bool) -> cycle_start: (([< `Read | `Set_and_create ], t, Core_kernel.Int63.t) Fieldslib.Field.t_with_perm -> t -> Core_kernel.Int63.t -> bool) -> in_cycle: (([< `Read | `Set_and_create ], t, bool) Fieldslib.Field.t_with_perm -> t -> bool -> bool) -> run_every_cycle_start: (([< `Read | `Set_and_create ], t, (unit -> unit) list) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) list -> bool) -> last_cycle_time: (([< `Read | `Set_and_create ], t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> t -> Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t -> bool) -> last_cycle_num_jobs: (([< `Read | `Set_and_create ], t, int) Fieldslib.Field.t_with_perm -> t -> int -> bool) -> total_cycle_time: (([< `Read | `Set_and_create ], t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> t -> Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t -> bool) -> time_source: (([< `Read | `Set_and_create ], t, Core_kernel.read_write Synchronous_time_source.T1.t) Fieldslib.Field.t_with_perm -> t -> Core_kernel.read_write Synchronous_time_source.T1.t -> bool) -> external_jobs: (([< `Read | `Set_and_create ], t, Async_kernel__.Types.External_job.t Thread_safe_queue.t) Fieldslib.Field.t_with_perm -> t -> Async_kernel__.Types.External_job.t Thread_safe_queue.t -> bool) -> thread_safe_external_job_hook: (([< `Read | `Set_and_create ], t, unit -> unit) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) -> bool) -> job_queued_hook: (([< `Read | `Set_and_create ], t, (Priority.t -> unit) option) Fieldslib.Field.t_with_perm -> t -> (Priority.t -> unit) option -> bool) -> event_added_hook: (([< `Read | `Set_and_create ], t, (Core_kernel.Int63.t -> unit) option) Fieldslib.Field.t_with_perm -> t -> (Core_kernel.Int63.t -> unit) option -> bool) -> yield: (([< `Read | `Set_and_create ], t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque) Fieldslib.Field.t_with_perm -> t -> (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque -> bool) -> yield_until_no_jobs_remain: (([< `Read | `Set_and_create ], t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque) Fieldslib.Field.t_with_perm -> t -> (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque -> bool) -> check_invariants: (([< `Read | `Set_and_create ], t, bool) Fieldslib.Field.t_with_perm -> t -> bool -> bool) -> max_num_jobs_per_priority_per_cycle: (([< `Read | `Set_and_create ], t, Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t) Fieldslib.Field.t_with_perm -> t -> Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t -> bool) -> record_backtraces: (([< `Read | `Set_and_create ], t, bool) Fieldslib.Field.t_with_perm -> t -> bool -> bool) -> on_start_of_cycle: (([< `Read | `Set_and_create ], t, unit -> unit) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) -> bool) -> on_end_of_cycle: (([< `Read | `Set_and_create ], t, unit -> unit) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) -> bool) -> bool
val exists : t -> check_access: (([< `Read | `Set_and_create ], t, (unit -> unit) option) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) option -> bool) -> job_pool: (([< `Read | `Set_and_create ], t, (Execution_context.t, Obj.t -> unit, Obj.t) Core_kernel.Pool.Slots.t3 Core_kernel.Pool.t) Fieldslib.Field.t_with_perm -> t -> (Execution_context.t, Obj.t -> unit, Obj.t) Core_kernel.Pool.Slots.t3 Core_kernel.Pool.t -> bool) -> normal_priority_jobs: (([< `Read | `Set_and_create ], t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> t -> Async_kernel__.Types.Job_queue.t -> bool) -> low_priority_jobs: (([< `Read | `Set_and_create ], t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> t -> Async_kernel__.Types.Job_queue.t -> bool) -> very_low_priority_workers: (([< `Read | `Set_and_create ], t, Very_low_priority_worker.t Core_kernel.Deque.t) Fieldslib.Field.t_with_perm -> t -> Very_low_priority_worker.t Core_kernel.Deque.t -> bool) -> main_execution_context: (([< `Read | `Set_and_create ], t, Execution_context.t) Fieldslib.Field.t_with_perm -> t -> Execution_context.t -> bool) -> current_execution_context: (([< `Read | `Set_and_create ], t, Execution_context.t) Fieldslib.Field.t_with_perm -> t -> Execution_context.t -> bool) -> uncaught_exn: (([< `Read | `Set_and_create ], t, (Core_kernel.Exn.t * Core_kernel.Sexp.t) option) Fieldslib.Field.t_with_perm -> t -> (Core_kernel.Exn.t * Core_kernel.Sexp.t) option -> bool) -> cycle_count: (([< `Read | `Set_and_create ], t, int) Fieldslib.Field.t_with_perm -> t -> int -> bool) -> cycle_start: (([< `Read | `Set_and_create ], t, Core_kernel.Int63.t) Fieldslib.Field.t_with_perm -> t -> Core_kernel.Int63.t -> bool) -> in_cycle: (([< `Read | `Set_and_create ], t, bool) Fieldslib.Field.t_with_perm -> t -> bool -> bool) -> run_every_cycle_start: (([< `Read | `Set_and_create ], t, (unit -> unit) list) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) list -> bool) -> last_cycle_time: (([< `Read | `Set_and_create ], t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> t -> Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t -> bool) -> last_cycle_num_jobs: (([< `Read | `Set_and_create ], t, int) Fieldslib.Field.t_with_perm -> t -> int -> bool) -> total_cycle_time: (([< `Read | `Set_and_create ], t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> t -> Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t -> bool) -> time_source: (([< `Read | `Set_and_create ], t, Core_kernel.read_write Synchronous_time_source.T1.t) Fieldslib.Field.t_with_perm -> t -> Core_kernel.read_write Synchronous_time_source.T1.t -> bool) -> external_jobs: (([< `Read | `Set_and_create ], t, Async_kernel__.Types.External_job.t Thread_safe_queue.t) Fieldslib.Field.t_with_perm -> t -> Async_kernel__.Types.External_job.t Thread_safe_queue.t -> bool) -> thread_safe_external_job_hook: (([< `Read | `Set_and_create ], t, unit -> unit) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) -> bool) -> job_queued_hook: (([< `Read | `Set_and_create ], t, (Priority.t -> unit) option) Fieldslib.Field.t_with_perm -> t -> (Priority.t -> unit) option -> bool) -> event_added_hook: (([< `Read | `Set_and_create ], t, (Core_kernel.Int63.t -> unit) option) Fieldslib.Field.t_with_perm -> t -> (Core_kernel.Int63.t -> unit) option -> bool) -> yield: (([< `Read | `Set_and_create ], t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque) Fieldslib.Field.t_with_perm -> t -> (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque -> bool) -> yield_until_no_jobs_remain: (([< `Read | `Set_and_create ], t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque) Fieldslib.Field.t_with_perm -> t -> (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque -> bool) -> check_invariants: (([< `Read | `Set_and_create ], t, bool) Fieldslib.Field.t_with_perm -> t -> bool -> bool) -> max_num_jobs_per_priority_per_cycle: (([< `Read | `Set_and_create ], t, Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t) Fieldslib.Field.t_with_perm -> t -> Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t -> bool) -> record_backtraces: (([< `Read | `Set_and_create ], t, bool) Fieldslib.Field.t_with_perm -> t -> bool -> bool) -> on_start_of_cycle: (([< `Read | `Set_and_create ], t, unit -> unit) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) -> bool) -> on_end_of_cycle: (([< `Read | `Set_and_create ], t, unit -> unit) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) -> bool) -> bool
val to_list : t -> check_access: (([< `Read | `Set_and_create ], t, (unit -> unit) option) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) option -> 'a) -> job_pool: (([< `Read | `Set_and_create ], t, (Execution_context.t, Obj.t -> unit, Obj.t) Core_kernel.Pool.Slots.t3 Core_kernel.Pool.t) Fieldslib.Field.t_with_perm -> t -> (Execution_context.t, Obj.t -> unit, Obj.t) Core_kernel.Pool.Slots.t3 Core_kernel.Pool.t -> 'a) -> normal_priority_jobs: (([< `Read | `Set_and_create ], t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> t -> Async_kernel__.Types.Job_queue.t -> 'a) -> low_priority_jobs: (([< `Read | `Set_and_create ], t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> t -> Async_kernel__.Types.Job_queue.t -> 'a) -> very_low_priority_workers: (([< `Read | `Set_and_create ], t, Very_low_priority_worker.t Core_kernel.Deque.t) Fieldslib.Field.t_with_perm -> t -> Very_low_priority_worker.t Core_kernel.Deque.t -> 'a) -> main_execution_context: (([< `Read | `Set_and_create ], t, Execution_context.t) Fieldslib.Field.t_with_perm -> t -> Execution_context.t -> 'a) -> current_execution_context: (([< `Read | `Set_and_create ], t, Execution_context.t) Fieldslib.Field.t_with_perm -> t -> Execution_context.t -> 'a) -> uncaught_exn: (([< `Read | `Set_and_create ], t, (Core_kernel.Exn.t * Core_kernel.Sexp.t) option) Fieldslib.Field.t_with_perm -> t -> (Core_kernel.Exn.t * Core_kernel.Sexp.t) option -> 'a) -> cycle_count: (([< `Read | `Set_and_create ], t, int) Fieldslib.Field.t_with_perm -> t -> int -> 'a) -> cycle_start: (([< `Read | `Set_and_create ], t, Core_kernel.Int63.t) Fieldslib.Field.t_with_perm -> t -> Core_kernel.Int63.t -> 'a) -> in_cycle: (([< `Read | `Set_and_create ], t, bool) Fieldslib.Field.t_with_perm -> t -> bool -> 'a) -> run_every_cycle_start: (([< `Read | `Set_and_create ], t, (unit -> unit) list) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) list -> 'a) -> last_cycle_time: (([< `Read | `Set_and_create ], t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> t -> Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t -> 'a) -> last_cycle_num_jobs: (([< `Read | `Set_and_create ], t, int) Fieldslib.Field.t_with_perm -> t -> int -> 'a) -> total_cycle_time: (([< `Read | `Set_and_create ], t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> t -> Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t -> 'a) -> time_source: (([< `Read | `Set_and_create ], t, Core_kernel.read_write Synchronous_time_source.T1.t) Fieldslib.Field.t_with_perm -> t -> Core_kernel.read_write Synchronous_time_source.T1.t -> 'a) -> external_jobs: (([< `Read | `Set_and_create ], t, Async_kernel__.Types.External_job.t Thread_safe_queue.t) Fieldslib.Field.t_with_perm -> t -> Async_kernel__.Types.External_job.t Thread_safe_queue.t -> 'a) -> thread_safe_external_job_hook: (([< `Read | `Set_and_create ], t, unit -> unit) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) -> 'a) -> job_queued_hook: (([< `Read | `Set_and_create ], t, (Priority.t -> unit) option) Fieldslib.Field.t_with_perm -> t -> (Priority.t -> unit) option -> 'a) -> event_added_hook: (([< `Read | `Set_and_create ], t, (Core_kernel.Int63.t -> unit) option) Fieldslib.Field.t_with_perm -> t -> (Core_kernel.Int63.t -> unit) option -> 'a) -> yield: (([< `Read | `Set_and_create ], t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque) Fieldslib.Field.t_with_perm -> t -> (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque -> 'a) -> yield_until_no_jobs_remain: (([< `Read | `Set_and_create ], t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque) Fieldslib.Field.t_with_perm -> t -> (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque -> 'a) -> check_invariants: (([< `Read | `Set_and_create ], t, bool) Fieldslib.Field.t_with_perm -> t -> bool -> 'a) -> max_num_jobs_per_priority_per_cycle: (([< `Read | `Set_and_create ], t, Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t) Fieldslib.Field.t_with_perm -> t -> Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t -> 'a) -> record_backtraces: (([< `Read | `Set_and_create ], t, bool) Fieldslib.Field.t_with_perm -> t -> bool -> 'a) -> on_start_of_cycle: (([< `Read | `Set_and_create ], t, unit -> unit) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) -> 'a) -> on_end_of_cycle: (([< `Read | `Set_and_create ], t, unit -> unit) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) -> 'a) -> 'a list
val map : t -> check_access: (([< `Read | `Set_and_create ], t, (unit -> unit) option) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) option -> (unit -> unit) option) -> job_pool: (([< `Read | `Set_and_create ], t, (Execution_context.t, Obj.t -> unit, Obj.t) Core_kernel.Pool.Slots.t3 Core_kernel.Pool.t) Fieldslib.Field.t_with_perm -> t -> (Execution_context.t, Obj.t -> unit, Obj.t) Core_kernel.Pool.Slots.t3 Core_kernel.Pool.t -> (Execution_context.t, Obj.t -> unit, Obj.t) Core_kernel.Pool.Slots.t3 Core_kernel.Pool.t) -> normal_priority_jobs: (([< `Read | `Set_and_create ], t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> t -> Async_kernel__.Types.Job_queue.t -> Async_kernel__.Types.Job_queue.t) -> low_priority_jobs: (([< `Read | `Set_and_create ], t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> t -> Async_kernel__.Types.Job_queue.t -> Async_kernel__.Types.Job_queue.t) -> very_low_priority_workers: (([< `Read | `Set_and_create ], t, Very_low_priority_worker.t Core_kernel.Deque.t) Fieldslib.Field.t_with_perm -> t -> Very_low_priority_worker.t Core_kernel.Deque.t -> Very_low_priority_worker.t Core_kernel.Deque.t) -> main_execution_context: (([< `Read | `Set_and_create ], t, Execution_context.t) Fieldslib.Field.t_with_perm -> t -> Execution_context.t -> Execution_context.t) -> current_execution_context: (([< `Read | `Set_and_create ], t, Execution_context.t) Fieldslib.Field.t_with_perm -> t -> Execution_context.t -> Execution_context.t) -> uncaught_exn: (([< `Read | `Set_and_create ], t, (Core_kernel.Exn.t * Core_kernel.Sexp.t) option) Fieldslib.Field.t_with_perm -> t -> (Core_kernel.Exn.t * Core_kernel.Sexp.t) option -> (Core_kernel.Exn.t * Core_kernel.Sexp.t) option) -> cycle_count: (([< `Read | `Set_and_create ], t, int) Fieldslib.Field.t_with_perm -> t -> int -> int) -> cycle_start: (([< `Read | `Set_and_create ], t, Core_kernel.Int63.t) Fieldslib.Field.t_with_perm -> t -> Core_kernel.Int63.t -> Core_kernel.Int63.t) -> in_cycle: (([< `Read | `Set_and_create ], t, bool) Fieldslib.Field.t_with_perm -> t -> bool -> bool) -> run_every_cycle_start: (([< `Read | `Set_and_create ], t, (unit -> unit) list) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) list -> (unit -> unit) list) -> last_cycle_time: (([< `Read | `Set_and_create ], t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> t -> Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t -> Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) -> last_cycle_num_jobs: (([< `Read | `Set_and_create ], t, int) Fieldslib.Field.t_with_perm -> t -> int -> int) -> total_cycle_time: (([< `Read | `Set_and_create ], t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> t -> Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t -> Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) -> time_source: (([< `Read | `Set_and_create ], t, Core_kernel.read_write Synchronous_time_source.T1.t) Fieldslib.Field.t_with_perm -> t -> Core_kernel.read_write Synchronous_time_source.T1.t -> Core_kernel.read_write Synchronous_time_source.T1.t) -> external_jobs: (([< `Read | `Set_and_create ], t, Async_kernel__.Types.External_job.t Thread_safe_queue.t) Fieldslib.Field.t_with_perm -> t -> Async_kernel__.Types.External_job.t Thread_safe_queue.t -> Async_kernel__.Types.External_job.t Thread_safe_queue.t) -> thread_safe_external_job_hook: (([< `Read | `Set_and_create ], t, unit -> unit) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) -> unit -> unit) -> job_queued_hook: (([< `Read | `Set_and_create ], t, (Priority.t -> unit) option) Fieldslib.Field.t_with_perm -> t -> (Priority.t -> unit) option -> (Priority.t -> unit) option) -> event_added_hook: (([< `Read | `Set_and_create ], t, (Core_kernel.Int63.t -> unit) option) Fieldslib.Field.t_with_perm -> t -> (Core_kernel.Int63.t -> unit) option -> (Core_kernel.Int63.t -> unit) option) -> yield: (([< `Read | `Set_and_create ], t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque) Fieldslib.Field.t_with_perm -> t -> (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque -> (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque) -> yield_until_no_jobs_remain: (([< `Read | `Set_and_create ], t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque) Fieldslib.Field.t_with_perm -> t -> (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque -> (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque) -> check_invariants: (([< `Read | `Set_and_create ], t, bool) Fieldslib.Field.t_with_perm -> t -> bool -> bool) -> max_num_jobs_per_priority_per_cycle: (([< `Read | `Set_and_create ], t, Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t) Fieldslib.Field.t_with_perm -> t -> Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t -> Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t) -> record_backtraces: (([< `Read | `Set_and_create ], t, bool) Fieldslib.Field.t_with_perm -> t -> bool -> bool) -> on_start_of_cycle: (([< `Read | `Set_and_create ], t, unit -> unit) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) -> unit -> unit) -> on_end_of_cycle: (([< `Read | `Set_and_create ], t, unit -> unit) Fieldslib.Field.t_with_perm -> t -> (unit -> unit) -> unit -> unit) -> t
val set_all_mutable_fields : t -> check_access:(unit -> unit) option -> job_pool: (Execution_context.t, Obj.t -> unit, Obj.t) Core_kernel.Pool.Slots.t3 Core_kernel.Pool.t -> main_execution_context:Execution_context.t -> current_execution_context:Execution_context.t -> uncaught_exn:(Core_kernel.Exn.t * Core_kernel.Sexp.t) option -> cycle_count:int -> cycle_start:Core_kernel.Int63.t -> in_cycle:bool -> run_every_cycle_start:(unit -> unit) list -> last_cycle_time:Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t -> last_cycle_num_jobs:int -> total_cycle_time: Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t -> time_source:Core_kernel.read_write Synchronous_time_source.T1.t -> thread_safe_external_job_hook:(unit -> unit) -> job_queued_hook:(Priority.t -> unit) option -> event_added_hook:(Core_kernel.Int63.t -> unit) option -> yield: (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque -> yield_until_no_jobs_remain: (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t Core_kernel.sexp_opaque -> check_invariants:bool -> max_num_jobs_per_priority_per_cycle: Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t -> record_backtraces:bool -> on_start_of_cycle:(unit -> unit) -> on_end_of_cycle:(unit -> unit) -> unit