module Fields: sig .. end
val names : string list
val max_inter_cycle_timeout : ([< `Read | `Set_and_create ], Raw_scheduler.t,
        Import.Max_inter_cycle_timeout.t)
       Fieldslib.Field.t_with_perm
val core_scheduler : ([< `Read | `Set_and_create ], Raw_scheduler.t, Import.Core_scheduler.t)
       Fieldslib.Field.t_with_perm
val next_tsc_calibration : ([< `Read | `Set_and_create ], Raw_scheduler.t,
        Core.Std.Time_stamp_counter.t)
       Fieldslib.Field.t_with_perm
val busy_poll_thread_is_running : ([< `Read | `Set_and_create ], Raw_scheduler.t, bool)
       Fieldslib.Field.t_with_perm
val busy_pollers : ([< `Read | `Set_and_create ], Raw_scheduler.t, Busy_pollers.t)
       Fieldslib.Field.t_with_perm
val handle_thread_pool_stuck : ([< `Read | `Set_and_create ], Raw_scheduler.t, Core.Std.Time.Span.t -> unit)
       Fieldslib.Field.t_with_perm
val thread_pool : ([< `Read | `Set_and_create ], Raw_scheduler.t, Thread_pool.t)
       Fieldslib.Field.t_with_perm
val signal_manager : ([< `Read | `Set_and_create ], Raw_scheduler.t, Raw_signal_manager.t)
       Fieldslib.Field.t_with_perm
val interruptor : ([< `Read | `Set_and_create ], Raw_scheduler.t, Interruptor.t)
       Fieldslib.Field.t_with_perm
val scheduler_thread_id : ([< `Read | `Set_and_create ], Raw_scheduler.t, int)
       Fieldslib.Field.t_with_perm
val timerfd : ([< `Read | `Set_and_create ], Raw_scheduler.t,
        Core.Std.Linux_ext.Timerfd.t option)
       Fieldslib.Field.t_with_perm
val fd_by_descr : ([< `Read | `Set_and_create ], Raw_scheduler.t, Fd_by_descr.t)
       Fieldslib.Field.t_with_perm
val file_descr_watcher : ([< `Read | `Set_and_create ], Raw_scheduler.t,
        Raw_scheduler.File_descr_watcher.t)
       Fieldslib.Field.t_with_perm
val fds_whose_watching_has_changed : ([< `Read | `Set_and_create ], Raw_scheduler.t, Raw_scheduler.Fd.t list)
       Fieldslib.Field.t_with_perm
val have_called_go : ([< `Read | `Set_and_create ], Raw_scheduler.t, bool)
       Fieldslib.Field.t_with_perm
val is_running : ([< `Read | `Set_and_create ], Raw_scheduler.t, bool)
       Fieldslib.Field.t_with_perm
val mutex : ([< `Read | `Set_and_create ], Raw_scheduler.t, Core.Std.Nano_mutex.t)
       Fieldslib.Field.t_with_perm
val make_creator : mutex:(([< `Read | `Set_and_create ], Raw_scheduler.t, Core.Std.Nano_mutex.t)
              Fieldslib.Field.t_with_perm ->
              'a -> ('b -> Core.Std.Nano_mutex.t) * 'c) ->
       is_running:(([< `Read | `Set_and_create ], Raw_scheduler.t, bool)
                   Fieldslib.Field.t_with_perm -> 'c -> ('b -> bool) * 'd) ->
       have_called_go:(([< `Read | `Set_and_create ], Raw_scheduler.t, bool)
                       Fieldslib.Field.t_with_perm -> 'd -> ('b -> bool) * 'e) ->
       fds_whose_watching_has_changed:(([< `Read | `Set_and_create ],
                                        Raw_scheduler.t, Raw_scheduler.Fd.t list)
                                       Fieldslib.Field.t_with_perm ->
                                       'e -> ('b -> Raw_scheduler.Fd.t list) * 'f) ->
       file_descr_watcher:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                            Raw_scheduler.File_descr_watcher.t)
                           Fieldslib.Field.t_with_perm ->
                           'f -> ('b -> Raw_scheduler.File_descr_watcher.t) * 'g) ->
       fd_by_descr:(([< `Read | `Set_and_create ], Raw_scheduler.t, Fd_by_descr.t)
                    Fieldslib.Field.t_with_perm -> 'g -> ('b -> Fd_by_descr.t) * 'h) ->
       timerfd:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                 Core.Std.Linux_ext.Timerfd.t option)
                Fieldslib.Field.t_with_perm ->
                'h -> ('b -> Core.Std.Linux_ext.Timerfd.t option) * 'i) ->
       scheduler_thread_id:(([< `Read | `Set_and_create ], Raw_scheduler.t, int)
                            Fieldslib.Field.t_with_perm -> 'i -> ('b -> int) * 'j) ->
       interruptor:(([< `Read | `Set_and_create ], Raw_scheduler.t, Interruptor.t)
                    Fieldslib.Field.t_with_perm -> 'j -> ('b -> Interruptor.t) * 'k) ->
       signal_manager:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                        Raw_signal_manager.t)
                       Fieldslib.Field.t_with_perm ->
                       'k -> ('b -> Raw_signal_manager.t) * 'l) ->
       thread_pool:(([< `Read | `Set_and_create ], Raw_scheduler.t, Thread_pool.t)
                    Fieldslib.Field.t_with_perm -> 'l -> ('b -> Thread_pool.t) * 'm) ->
       handle_thread_pool_stuck:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                                  Core.Std.Time.Span.t -> unit)
                                 Fieldslib.Field.t_with_perm ->
                                 'm -> ('b -> Core.Std.Time.Span.t -> unit) * 'n) ->
       busy_pollers:(([< `Read | `Set_and_create ], Raw_scheduler.t, Busy_pollers.t)
                     Fieldslib.Field.t_with_perm ->
                     'n -> ('b -> Busy_pollers.t) * 'o) ->
       busy_poll_thread_is_running:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                                     bool)
                                    Fieldslib.Field.t_with_perm ->
                                    'o -> ('b -> bool) * 'p) ->
       next_tsc_calibration:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                              Core.Std.Time_stamp_counter.t)
                             Fieldslib.Field.t_with_perm ->
                             'p -> ('b -> Core.Std.Time_stamp_counter.t) * 'q) ->
       core_scheduler:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                        Import.Core_scheduler.t)
                       Fieldslib.Field.t_with_perm ->
                       'q -> ('b -> Import.Core_scheduler.t) * 'r) ->
       max_inter_cycle_timeout:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                                 Import.Max_inter_cycle_timeout.t)
                                Fieldslib.Field.t_with_perm ->
                                'r -> ('b -> Import.Max_inter_cycle_timeout.t) * 's) ->
       'a -> ('b -> Raw_scheduler.t) * 's
val create : mutex:Core.Std.Nano_mutex.t ->
       is_running:bool ->
       have_called_go:bool ->
       fds_whose_watching_has_changed:Raw_scheduler.Fd.t list ->
       file_descr_watcher:Raw_scheduler.File_descr_watcher.t ->
       fd_by_descr:Fd_by_descr.t ->
       timerfd:Core.Std.Linux_ext.Timerfd.t option ->
       scheduler_thread_id:int ->
       interruptor:Interruptor.t ->
       signal_manager:Raw_signal_manager.t ->
       thread_pool:Thread_pool.t ->
       handle_thread_pool_stuck:(Core.Std.Time.Span.t -> unit) ->
       busy_pollers:Busy_pollers.t ->
       busy_poll_thread_is_running:bool ->
       next_tsc_calibration:Core.Std.Time_stamp_counter.t ->
       core_scheduler:Import.Core_scheduler.t ->
       max_inter_cycle_timeout:Import.Max_inter_cycle_timeout.t -> Raw_scheduler.t
val map : mutex:(([< `Read | `Set_and_create ], Raw_scheduler.t, Core.Std.Nano_mutex.t)
              Fieldslib.Field.t_with_perm -> Core.Std.Nano_mutex.t) ->
       is_running:(([< `Read | `Set_and_create ], Raw_scheduler.t, bool)
                   Fieldslib.Field.t_with_perm -> bool) ->
       have_called_go:(([< `Read | `Set_and_create ], Raw_scheduler.t, bool)
                       Fieldslib.Field.t_with_perm -> bool) ->
       fds_whose_watching_has_changed:(([< `Read | `Set_and_create ],
                                        Raw_scheduler.t, Raw_scheduler.Fd.t list)
                                       Fieldslib.Field.t_with_perm ->
                                       Raw_scheduler.Fd.t list) ->
       file_descr_watcher:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                            Raw_scheduler.File_descr_watcher.t)
                           Fieldslib.Field.t_with_perm ->
                           Raw_scheduler.File_descr_watcher.t) ->
       fd_by_descr:(([< `Read | `Set_and_create ], Raw_scheduler.t, Fd_by_descr.t)
                    Fieldslib.Field.t_with_perm -> Fd_by_descr.t) ->
       timerfd:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                 Core.Std.Linux_ext.Timerfd.t option)
                Fieldslib.Field.t_with_perm -> Core.Std.Linux_ext.Timerfd.t option) ->
       scheduler_thread_id:(([< `Read | `Set_and_create ], Raw_scheduler.t, int)
                            Fieldslib.Field.t_with_perm -> int) ->
       interruptor:(([< `Read | `Set_and_create ], Raw_scheduler.t, Interruptor.t)
                    Fieldslib.Field.t_with_perm -> Interruptor.t) ->
       signal_manager:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                        Raw_signal_manager.t)
                       Fieldslib.Field.t_with_perm -> Raw_signal_manager.t) ->
       thread_pool:(([< `Read | `Set_and_create ], Raw_scheduler.t, Thread_pool.t)
                    Fieldslib.Field.t_with_perm -> Thread_pool.t) ->
       handle_thread_pool_stuck:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                                  Core.Std.Time.Span.t -> unit)
                                 Fieldslib.Field.t_with_perm ->
                                 Core.Std.Time.Span.t -> unit) ->
       busy_pollers:(([< `Read | `Set_and_create ], Raw_scheduler.t, Busy_pollers.t)
                     Fieldslib.Field.t_with_perm -> Busy_pollers.t) ->
       busy_poll_thread_is_running:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                                     bool)
                                    Fieldslib.Field.t_with_perm -> bool) ->
       next_tsc_calibration:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                              Core.Std.Time_stamp_counter.t)
                             Fieldslib.Field.t_with_perm ->
                             Core.Std.Time_stamp_counter.t) ->
       core_scheduler:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                        Import.Core_scheduler.t)
                       Fieldslib.Field.t_with_perm -> Import.Core_scheduler.t) ->
       max_inter_cycle_timeout:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                                 Import.Max_inter_cycle_timeout.t)
                                Fieldslib.Field.t_with_perm ->
                                Import.Max_inter_cycle_timeout.t) ->
       Raw_scheduler.t
val iter : mutex:(([< `Read | `Set_and_create ], Raw_scheduler.t, Core.Std.Nano_mutex.t)
              Fieldslib.Field.t_with_perm -> 'a) ->
       is_running:(([< `Read | `Set_and_create ], Raw_scheduler.t, bool)
                   Fieldslib.Field.t_with_perm -> 'b) ->
       have_called_go:(([< `Read | `Set_and_create ], Raw_scheduler.t, bool)
                       Fieldslib.Field.t_with_perm -> 'c) ->
       fds_whose_watching_has_changed:(([< `Read | `Set_and_create ],
                                        Raw_scheduler.t, Raw_scheduler.Fd.t list)
                                       Fieldslib.Field.t_with_perm -> 'd) ->
       file_descr_watcher:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                            Raw_scheduler.File_descr_watcher.t)
                           Fieldslib.Field.t_with_perm -> 'e) ->
       fd_by_descr:(([< `Read | `Set_and_create ], Raw_scheduler.t, Fd_by_descr.t)
                    Fieldslib.Field.t_with_perm -> 'f) ->
       timerfd:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                 Core.Std.Linux_ext.Timerfd.t option)
                Fieldslib.Field.t_with_perm -> 'g) ->
       scheduler_thread_id:(([< `Read | `Set_and_create ], Raw_scheduler.t, int)
                            Fieldslib.Field.t_with_perm -> 'h) ->
       interruptor:(([< `Read | `Set_and_create ], Raw_scheduler.t, Interruptor.t)
                    Fieldslib.Field.t_with_perm -> 'i) ->
       signal_manager:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                        Raw_signal_manager.t)
                       Fieldslib.Field.t_with_perm -> 'j) ->
       thread_pool:(([< `Read | `Set_and_create ], Raw_scheduler.t, Thread_pool.t)
                    Fieldslib.Field.t_with_perm -> 'k) ->
       handle_thread_pool_stuck:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                                  Core.Std.Time.Span.t -> unit)
                                 Fieldslib.Field.t_with_perm -> 'l) ->
       busy_pollers:(([< `Read | `Set_and_create ], Raw_scheduler.t, Busy_pollers.t)
                     Fieldslib.Field.t_with_perm -> 'm) ->
       busy_poll_thread_is_running:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                                     bool)
                                    Fieldslib.Field.t_with_perm -> 'n) ->
       next_tsc_calibration:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                              Core.Std.Time_stamp_counter.t)
                             Fieldslib.Field.t_with_perm -> 'o) ->
       core_scheduler:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                        Import.Core_scheduler.t)
                       Fieldslib.Field.t_with_perm -> 'p) ->
       max_inter_cycle_timeout:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                                 Import.Max_inter_cycle_timeout.t)
                                Fieldslib.Field.t_with_perm -> 'q) ->
       'q
val fold : init:'a ->
       mutex:('a ->
              ([< `Read | `Set_and_create ], Raw_scheduler.t, Core.Std.Nano_mutex.t)
              Fieldslib.Field.t_with_perm -> 'b) ->
       is_running:('b ->
                   ([< `Read | `Set_and_create ], Raw_scheduler.t, bool)
                   Fieldslib.Field.t_with_perm -> 'c) ->
       have_called_go:('c ->
                       ([< `Read | `Set_and_create ], Raw_scheduler.t, bool)
                       Fieldslib.Field.t_with_perm -> 'd) ->
       fds_whose_watching_has_changed:('d ->
                                       ([< `Read | `Set_and_create ],
                                        Raw_scheduler.t, Raw_scheduler.Fd.t list)
                                       Fieldslib.Field.t_with_perm -> 'e) ->
       file_descr_watcher:('e ->
                           ([< `Read | `Set_and_create ], Raw_scheduler.t,
                            Raw_scheduler.File_descr_watcher.t)
                           Fieldslib.Field.t_with_perm -> 'f) ->
       fd_by_descr:('f ->
                    ([< `Read | `Set_and_create ], Raw_scheduler.t, Fd_by_descr.t)
                    Fieldslib.Field.t_with_perm -> 'g) ->
       timerfd:('g ->
                ([< `Read | `Set_and_create ], Raw_scheduler.t,
                 Core.Std.Linux_ext.Timerfd.t option)
                Fieldslib.Field.t_with_perm -> 'h) ->
       scheduler_thread_id:('h ->
                            ([< `Read | `Set_and_create ], Raw_scheduler.t, int)
                            Fieldslib.Field.t_with_perm -> 'i) ->
       interruptor:('i ->
                    ([< `Read | `Set_and_create ], Raw_scheduler.t, Interruptor.t)
                    Fieldslib.Field.t_with_perm -> 'j) ->
       signal_manager:('j ->
                       ([< `Read | `Set_and_create ], Raw_scheduler.t,
                        Raw_signal_manager.t)
                       Fieldslib.Field.t_with_perm -> 'k) ->
       thread_pool:('k ->
                    ([< `Read | `Set_and_create ], Raw_scheduler.t, Thread_pool.t)
                    Fieldslib.Field.t_with_perm -> 'l) ->
       handle_thread_pool_stuck:('l ->
                                 ([< `Read | `Set_and_create ], Raw_scheduler.t,
                                  Core.Std.Time.Span.t -> unit)
                                 Fieldslib.Field.t_with_perm -> 'm) ->
       busy_pollers:('m ->
                     ([< `Read | `Set_and_create ], Raw_scheduler.t, Busy_pollers.t)
                     Fieldslib.Field.t_with_perm -> 'n) ->
       busy_poll_thread_is_running:('n ->
                                    ([< `Read | `Set_and_create ], Raw_scheduler.t,
                                     bool)
                                    Fieldslib.Field.t_with_perm -> 'o) ->
       next_tsc_calibration:('o ->
                             ([< `Read | `Set_and_create ], Raw_scheduler.t,
                              Core.Std.Time_stamp_counter.t)
                             Fieldslib.Field.t_with_perm -> 'p) ->
       core_scheduler:('p ->
                       ([< `Read | `Set_and_create ], Raw_scheduler.t,
                        Import.Core_scheduler.t)
                       Fieldslib.Field.t_with_perm -> 'q) ->
       max_inter_cycle_timeout:('q ->
                                ([< `Read | `Set_and_create ], Raw_scheduler.t,
                                 Import.Max_inter_cycle_timeout.t)
                                Fieldslib.Field.t_with_perm -> 'r) ->
       'r
val map_poly : ([< `Read | `Set_and_create ], Raw_scheduler.t, 'a) Fieldslib.Field.user ->
       'a list
val for_all : mutex:(([< `Read | `Set_and_create ], Raw_scheduler.t, Core.Std.Nano_mutex.t)
              Fieldslib.Field.t_with_perm -> bool) ->
       is_running:(([< `Read | `Set_and_create ], Raw_scheduler.t, bool)
                   Fieldslib.Field.t_with_perm -> bool) ->
       have_called_go:(([< `Read | `Set_and_create ], Raw_scheduler.t, bool)
                       Fieldslib.Field.t_with_perm -> bool) ->
       fds_whose_watching_has_changed:(([< `Read | `Set_and_create ],
                                        Raw_scheduler.t, Raw_scheduler.Fd.t list)
                                       Fieldslib.Field.t_with_perm -> bool) ->
       file_descr_watcher:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                            Raw_scheduler.File_descr_watcher.t)
                           Fieldslib.Field.t_with_perm -> bool) ->
       fd_by_descr:(([< `Read | `Set_and_create ], Raw_scheduler.t, Fd_by_descr.t)
                    Fieldslib.Field.t_with_perm -> bool) ->
       timerfd:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                 Core.Std.Linux_ext.Timerfd.t option)
                Fieldslib.Field.t_with_perm -> bool) ->
       scheduler_thread_id:(([< `Read | `Set_and_create ], Raw_scheduler.t, int)
                            Fieldslib.Field.t_with_perm -> bool) ->
       interruptor:(([< `Read | `Set_and_create ], Raw_scheduler.t, Interruptor.t)
                    Fieldslib.Field.t_with_perm -> bool) ->
       signal_manager:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                        Raw_signal_manager.t)
                       Fieldslib.Field.t_with_perm -> bool) ->
       thread_pool:(([< `Read | `Set_and_create ], Raw_scheduler.t, Thread_pool.t)
                    Fieldslib.Field.t_with_perm -> bool) ->
       handle_thread_pool_stuck:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                                  Core.Std.Time.Span.t -> unit)
                                 Fieldslib.Field.t_with_perm -> bool) ->
       busy_pollers:(([< `Read | `Set_and_create ], Raw_scheduler.t, Busy_pollers.t)
                     Fieldslib.Field.t_with_perm -> bool) ->
       busy_poll_thread_is_running:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                                     bool)
                                    Fieldslib.Field.t_with_perm -> bool) ->
       next_tsc_calibration:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                              Core.Std.Time_stamp_counter.t)
                             Fieldslib.Field.t_with_perm -> bool) ->
       core_scheduler:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                        Import.Core_scheduler.t)
                       Fieldslib.Field.t_with_perm -> bool) ->
       max_inter_cycle_timeout:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                                 Import.Max_inter_cycle_timeout.t)
                                Fieldslib.Field.t_with_perm -> bool) ->
       bool
val exists : mutex:(([< `Read | `Set_and_create ], Raw_scheduler.t, Core.Std.Nano_mutex.t)
              Fieldslib.Field.t_with_perm -> bool) ->
       is_running:(([< `Read | `Set_and_create ], Raw_scheduler.t, bool)
                   Fieldslib.Field.t_with_perm -> bool) ->
       have_called_go:(([< `Read | `Set_and_create ], Raw_scheduler.t, bool)
                       Fieldslib.Field.t_with_perm -> bool) ->
       fds_whose_watching_has_changed:(([< `Read | `Set_and_create ],
                                        Raw_scheduler.t, Raw_scheduler.Fd.t list)
                                       Fieldslib.Field.t_with_perm -> bool) ->
       file_descr_watcher:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                            Raw_scheduler.File_descr_watcher.t)
                           Fieldslib.Field.t_with_perm -> bool) ->
       fd_by_descr:(([< `Read | `Set_and_create ], Raw_scheduler.t, Fd_by_descr.t)
                    Fieldslib.Field.t_with_perm -> bool) ->
       timerfd:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                 Core.Std.Linux_ext.Timerfd.t option)
                Fieldslib.Field.t_with_perm -> bool) ->
       scheduler_thread_id:(([< `Read | `Set_and_create ], Raw_scheduler.t, int)
                            Fieldslib.Field.t_with_perm -> bool) ->
       interruptor:(([< `Read | `Set_and_create ], Raw_scheduler.t, Interruptor.t)
                    Fieldslib.Field.t_with_perm -> bool) ->
       signal_manager:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                        Raw_signal_manager.t)
                       Fieldslib.Field.t_with_perm -> bool) ->
       thread_pool:(([< `Read | `Set_and_create ], Raw_scheduler.t, Thread_pool.t)
                    Fieldslib.Field.t_with_perm -> bool) ->
       handle_thread_pool_stuck:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                                  Core.Std.Time.Span.t -> unit)
                                 Fieldslib.Field.t_with_perm -> bool) ->
       busy_pollers:(([< `Read | `Set_and_create ], Raw_scheduler.t, Busy_pollers.t)
                     Fieldslib.Field.t_with_perm -> bool) ->
       busy_poll_thread_is_running:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                                     bool)
                                    Fieldslib.Field.t_with_perm -> bool) ->
       next_tsc_calibration:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                              Core.Std.Time_stamp_counter.t)
                             Fieldslib.Field.t_with_perm -> bool) ->
       core_scheduler:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                        Import.Core_scheduler.t)
                       Fieldslib.Field.t_with_perm -> bool) ->
       max_inter_cycle_timeout:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                                 Import.Max_inter_cycle_timeout.t)
                                Fieldslib.Field.t_with_perm -> bool) ->
       bool
val to_list : mutex:(([< `Read | `Set_and_create ], Raw_scheduler.t, Core.Std.Nano_mutex.t)
              Fieldslib.Field.t_with_perm -> 'a) ->
       is_running:(([< `Read | `Set_and_create ], Raw_scheduler.t, bool)
                   Fieldslib.Field.t_with_perm -> 'a) ->
       have_called_go:(([< `Read | `Set_and_create ], Raw_scheduler.t, bool)
                       Fieldslib.Field.t_with_perm -> 'a) ->
       fds_whose_watching_has_changed:(([< `Read | `Set_and_create ],
                                        Raw_scheduler.t, Raw_scheduler.Fd.t list)
                                       Fieldslib.Field.t_with_perm -> 'a) ->
       file_descr_watcher:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                            Raw_scheduler.File_descr_watcher.t)
                           Fieldslib.Field.t_with_perm -> 'a) ->
       fd_by_descr:(([< `Read | `Set_and_create ], Raw_scheduler.t, Fd_by_descr.t)
                    Fieldslib.Field.t_with_perm -> 'a) ->
       timerfd:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                 Core.Std.Linux_ext.Timerfd.t option)
                Fieldslib.Field.t_with_perm -> 'a) ->
       scheduler_thread_id:(([< `Read | `Set_and_create ], Raw_scheduler.t, int)
                            Fieldslib.Field.t_with_perm -> 'a) ->
       interruptor:(([< `Read | `Set_and_create ], Raw_scheduler.t, Interruptor.t)
                    Fieldslib.Field.t_with_perm -> 'a) ->
       signal_manager:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                        Raw_signal_manager.t)
                       Fieldslib.Field.t_with_perm -> 'a) ->
       thread_pool:(([< `Read | `Set_and_create ], Raw_scheduler.t, Thread_pool.t)
                    Fieldslib.Field.t_with_perm -> 'a) ->
       handle_thread_pool_stuck:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                                  Core.Std.Time.Span.t -> unit)
                                 Fieldslib.Field.t_with_perm -> 'a) ->
       busy_pollers:(([< `Read | `Set_and_create ], Raw_scheduler.t, Busy_pollers.t)
                     Fieldslib.Field.t_with_perm -> 'a) ->
       busy_poll_thread_is_running:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                                     bool)
                                    Fieldslib.Field.t_with_perm -> 'a) ->
       next_tsc_calibration:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                              Core.Std.Time_stamp_counter.t)
                             Fieldslib.Field.t_with_perm -> 'a) ->
       core_scheduler:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                        Import.Core_scheduler.t)
                       Fieldslib.Field.t_with_perm -> 'a) ->
       max_inter_cycle_timeout:(([< `Read | `Set_and_create ], Raw_scheduler.t,
                                 Import.Max_inter_cycle_timeout.t)
                                Fieldslib.Field.t_with_perm -> 'a) ->
       'a list
module Direct: sig .. end