sig
  val names : string list
  val nivcsw : (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t
  val nvcsw : (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t
  val nsignals : (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t
  val msgrcv : (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t
  val msgsnd : (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t
  val oublock : (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t
  val inblock : (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t
  val nswap : (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t
  val majflt : (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t
  val minflt : (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t
  val isrss : (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t
  val idrss : (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t
  val ixrss : (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t
  val maxrss : (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t
  val stime : (Core_unix.Resource_usage.t, float) Fieldslib.Field.t
  val utime : (Core_unix.Resource_usage.t, float) Fieldslib.Field.t
  val fold :
    init:'acc__ ->
    utime:('acc__ ->
           (Core_unix.Resource_usage.t, float) Fieldslib.Field.t -> 'acc__) ->
    stime:('acc__ ->
           (Core_unix.Resource_usage.t, float) Fieldslib.Field.t -> 'acc__) ->
    maxrss:('acc__ ->
            (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'acc__) ->
    ixrss:('acc__ ->
           (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'acc__) ->
    idrss:('acc__ ->
           (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'acc__) ->
    isrss:('acc__ ->
           (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'acc__) ->
    minflt:('acc__ ->
            (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'acc__) ->
    majflt:('acc__ ->
            (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'acc__) ->
    nswap:('acc__ ->
           (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'acc__) ->
    inblock:('acc__ ->
             (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'acc__) ->
    oublock:('acc__ ->
             (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'acc__) ->
    msgsnd:('acc__ ->
            (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'acc__) ->
    msgrcv:('acc__ ->
            (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'acc__) ->
    nsignals:('acc__ ->
              (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'acc__) ->
    nvcsw:('acc__ ->
           (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'acc__) ->
    nivcsw:('acc__ ->
            (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'acc__) ->
    'acc__
  val make_creator :
    utime:((Core_unix.Resource_usage.t, float) Fieldslib.Field.t ->
           'compile_acc__ -> ('input__ -> float) * 'compile_acc__) ->
    stime:((Core_unix.Resource_usage.t, float) Fieldslib.Field.t ->
           'compile_acc__ -> ('input__ -> float) * 'compile_acc__) ->
    maxrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
            'compile_acc__ -> ('input__ -> int64) * 'compile_acc__) ->
    ixrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
           'compile_acc__ -> ('input__ -> int64) * 'compile_acc__) ->
    idrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
           'compile_acc__ -> ('input__ -> int64) * 'compile_acc__) ->
    isrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
           'compile_acc__ -> ('input__ -> int64) * 'compile_acc__) ->
    minflt:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
            'compile_acc__ -> ('input__ -> int64) * 'compile_acc__) ->
    majflt:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
            'compile_acc__ -> ('input__ -> int64) * 'compile_acc__) ->
    nswap:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
           'compile_acc__ -> ('input__ -> int64) * 'compile_acc__) ->
    inblock:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
             'compile_acc__ -> ('input__ -> int64) * 'compile_acc__) ->
    oublock:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
             'compile_acc__ -> ('input__ -> int64) * 'compile_acc__) ->
    msgsnd:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
            'compile_acc__ -> ('input__ -> int64) * 'compile_acc__) ->
    msgrcv:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
            'compile_acc__ -> ('input__ -> int64) * 'compile_acc__) ->
    nsignals:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
              'compile_acc__ -> ('input__ -> int64) * 'compile_acc__) ->
    nvcsw:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
           'compile_acc__ -> ('input__ -> int64) * 'compile_acc__) ->
    nivcsw:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
            'compile_acc__ -> ('input__ -> int64) * 'compile_acc__) ->
    'compile_acc__ ->
    ('input__ -> Core_unix.Resource_usage.t) * 'compile_acc__
  val create :
    utime:float ->
    stime:float ->
    maxrss:int64 ->
    ixrss:int64 ->
    idrss:int64 ->
    isrss:int64 ->
    minflt:int64 ->
    majflt:int64 ->
    nswap:int64 ->
    inblock:int64 ->
    oublock:int64 ->
    msgsnd:int64 ->
    msgrcv:int64 ->
    nsignals:int64 ->
    nvcsw:int64 -> nivcsw:int64 -> Core_unix.Resource_usage.t
  val map :
    utime:((Core_unix.Resource_usage.t, float) Fieldslib.Field.t -> float) ->
    stime:((Core_unix.Resource_usage.t, float) Fieldslib.Field.t -> float) ->
    maxrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> int64) ->
    ixrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> int64) ->
    idrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> int64) ->
    isrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> int64) ->
    minflt:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> int64) ->
    majflt:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> int64) ->
    nswap:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> int64) ->
    inblock:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> int64) ->
    oublock:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> int64) ->
    msgsnd:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> int64) ->
    msgrcv:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> int64) ->
    nsignals:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> int64) ->
    nvcsw:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> int64) ->
    nivcsw:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> int64) ->
    Core_unix.Resource_usage.t
  val iter :
    utime:((Core_unix.Resource_usage.t, float) Fieldslib.Field.t -> unit) ->
    stime:((Core_unix.Resource_usage.t, float) Fieldslib.Field.t -> unit) ->
    maxrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> unit) ->
    ixrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> unit) ->
    idrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> unit) ->
    isrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> unit) ->
    minflt:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> unit) ->
    majflt:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> unit) ->
    nswap:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> unit) ->
    inblock:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> unit) ->
    oublock:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> unit) ->
    msgsnd:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> unit) ->
    msgrcv:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> unit) ->
    nsignals:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> unit) ->
    nvcsw:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> unit) ->
    nivcsw:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> unit) ->
    unit
  val for_all :
    utime:((Core_unix.Resource_usage.t, float) Fieldslib.Field.t -> bool) ->
    stime:((Core_unix.Resource_usage.t, float) Fieldslib.Field.t -> bool) ->
    maxrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    ixrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    idrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    isrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    minflt:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    majflt:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    nswap:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    inblock:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    oublock:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    msgsnd:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    msgrcv:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    nsignals:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    nvcsw:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    nivcsw:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    bool
  val exists :
    utime:((Core_unix.Resource_usage.t, float) Fieldslib.Field.t -> bool) ->
    stime:((Core_unix.Resource_usage.t, float) Fieldslib.Field.t -> bool) ->
    maxrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    ixrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    idrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    isrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    minflt:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    majflt:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    nswap:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    inblock:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    oublock:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    msgsnd:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    msgrcv:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    nsignals:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    nvcsw:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    nivcsw:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> bool) ->
    bool
  val to_list :
    utime:((Core_unix.Resource_usage.t, float) Fieldslib.Field.t -> 'elem__) ->
    stime:((Core_unix.Resource_usage.t, float) Fieldslib.Field.t -> 'elem__) ->
    maxrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'elem__) ->
    ixrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'elem__) ->
    idrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'elem__) ->
    isrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'elem__) ->
    minflt:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'elem__) ->
    majflt:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'elem__) ->
    nswap:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'elem__) ->
    inblock:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'elem__) ->
    oublock:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'elem__) ->
    msgsnd:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'elem__) ->
    msgrcv:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'elem__) ->
    nsignals:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
              'elem__) ->
    nvcsw:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'elem__) ->
    nivcsw:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t -> 'elem__) ->
    'elem__ list
  val map_poly :
    ([< `Read | `Set_and_create ], Core_unix.Resource_usage.t, 'x0)
    Fieldslib.Field.user -> 'x0 list
  module Direct :
    sig
      val iter :
        Core_unix.Resource_usage.t ->
        utime:((Core_unix.Resource_usage.t, float) Fieldslib.Field.t ->
               Core_unix.Resource_usage.t -> float -> unit) ->
        stime:((Core_unix.Resource_usage.t, float) Fieldslib.Field.t ->
               Core_unix.Resource_usage.t -> float -> unit) ->
        maxrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
                Core_unix.Resource_usage.t -> int64 -> unit) ->
        ixrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
               Core_unix.Resource_usage.t -> int64 -> unit) ->
        idrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
               Core_unix.Resource_usage.t -> int64 -> unit) ->
        isrss:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
               Core_unix.Resource_usage.t -> int64 -> unit) ->
        minflt:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
                Core_unix.Resource_usage.t -> int64 -> unit) ->
        majflt:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
                Core_unix.Resource_usage.t -> int64 -> unit) ->
        nswap:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
               Core_unix.Resource_usage.t -> int64 -> unit) ->
        inblock:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
                 Core_unix.Resource_usage.t -> int64 -> unit) ->
        oublock:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
                 Core_unix.Resource_usage.t -> int64 -> unit) ->
        msgsnd:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
                Core_unix.Resource_usage.t -> int64 -> unit) ->
        msgrcv:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
                Core_unix.Resource_usage.t -> int64 -> unit) ->
        nsignals:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
                  Core_unix.Resource_usage.t -> int64 -> unit) ->
        nvcsw:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
               Core_unix.Resource_usage.t -> int64 -> unit) ->
        nivcsw:((Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
                Core_unix.Resource_usage.t -> int64 -> unit) ->
        unit
      val fold :
        Core_unix.Resource_usage.t ->
        init:'acc__ ->
        utime:('acc__ ->
               (Core_unix.Resource_usage.t, float) Fieldslib.Field.t ->
               Core_unix.Resource_usage.t -> float -> 'acc__) ->
        stime:('acc__ ->
               (Core_unix.Resource_usage.t, float) Fieldslib.Field.t ->
               Core_unix.Resource_usage.t -> float -> 'acc__) ->
        maxrss:('acc__ ->
                (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
                Core_unix.Resource_usage.t -> int64 -> 'acc__) ->
        ixrss:('acc__ ->
               (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
               Core_unix.Resource_usage.t -> int64 -> 'acc__) ->
        idrss:('acc__ ->
               (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
               Core_unix.Resource_usage.t -> int64 -> 'acc__) ->
        isrss:('acc__ ->
               (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
               Core_unix.Resource_usage.t -> int64 -> 'acc__) ->
        minflt:('acc__ ->
                (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
                Core_unix.Resource_usage.t -> int64 -> 'acc__) ->
        majflt:('acc__ ->
                (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
                Core_unix.Resource_usage.t -> int64 -> 'acc__) ->
        nswap:('acc__ ->
               (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
               Core_unix.Resource_usage.t -> int64 -> 'acc__) ->
        inblock:('acc__ ->
                 (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
                 Core_unix.Resource_usage.t -> int64 -> 'acc__) ->
        oublock:('acc__ ->
                 (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
                 Core_unix.Resource_usage.t -> int64 -> 'acc__) ->
        msgsnd:('acc__ ->
                (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
                Core_unix.Resource_usage.t -> int64 -> 'acc__) ->
        msgrcv:('acc__ ->
                (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
                Core_unix.Resource_usage.t -> int64 -> 'acc__) ->
        nsignals:('acc__ ->
                  (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
                  Core_unix.Resource_usage.t -> int64 -> 'acc__) ->
        nvcsw:('acc__ ->
               (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
               Core_unix.Resource_usage.t -> int64 -> 'acc__) ->
        nivcsw:('acc__ ->
                (Core_unix.Resource_usage.t, int64) Fieldslib.Field.t ->
                Core_unix.Resource_usage.t -> int64 -> 'acc__) ->
        'acc__
    end
end