sig
  type t = {
    comm : string;
    state : char;
    ppid : Core.Std.Pid.t option;
    pgrp : Core.Std.Pid.t option;
    session : int;
    tty_nr : int;
    tpgid : int;
    flags : Core.Std.Int63.t;
    minflt : Core.Std.Int63.t;
    cminflt : Core.Std.Int63.t;
    majflt : Core.Std.Int63.t;
    cmajflt : Core.Std.Int63.t;
    utime : Core.Std.Int63.t;
    stime : Core.Std.Int63.t;
    cutime : Core.Std.Int63.t;
    cstime : Core.Std.Int63.t;
    priority : Core.Std.Int63.t;
    nice : Core.Std.Int63.t;
    unused : Core.Std.Int63.t;
    itrealvalue : Core.Std.Int63.t;
    starttime : Core.Std.Int63.t;
    vsize : Core.Std.Int63.t;
    rss : Core.Std.Int63.t;
    rlim : Core.Std.Int63.t;
    startcode : Core.Std.Int63.t;
    endcode : Core.Std.Int63.t;
    startstack : Core.Std.Int63.t;
    kstkesp : Core.Std.Int63.t;
    kstkeip : Core.Std.Int63.t;
    signal : Core.Std.Int63.t;
    blocked : Core.Std.Int63.t;
    sigignore : Core.Std.Int63.t;
    sigcatch : Core.Std.Int63.t;
    wchan : Core.Std.Int63.t;
    nswap : Core.Std.Int63.t;
    cnswap : Core.Std.Int63.t;
    exit_signal : int;
    processor : int;
    rt_priority : Core.Std.Int63.t;
    policy : Core.Std.Int63.t;
  }
  val policy : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val rt_priority : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val processor : Procfs.Process.Stat.t -> int
  val exit_signal : Procfs.Process.Stat.t -> int
  val cnswap : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val nswap : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val wchan : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val sigcatch : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val sigignore : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val blocked : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val signal : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val kstkeip : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val kstkesp : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val startstack : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val endcode : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val startcode : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val rlim : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val rss : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val vsize : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val starttime : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val itrealvalue : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val unused : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val nice : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val priority : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val cstime : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val cutime : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val stime : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val utime : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val cmajflt : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val majflt : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val cminflt : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val minflt : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val flags : Procfs.Process.Stat.t -> Core.Std.Int63.t
  val tpgid : Procfs.Process.Stat.t -> int
  val tty_nr : Procfs.Process.Stat.t -> int
  val session : Procfs.Process.Stat.t -> int
  val pgrp : Procfs.Process.Stat.t -> Core.Std.Pid.t option
  val ppid : Procfs.Process.Stat.t -> Core.Std.Pid.t option
  val state : Procfs.Process.Stat.t -> char
  val comm : Procfs.Process.Stat.t -> string
  module Fields :
    sig
      val names : string list
      val policy :
        (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val rt_priority :
        (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val processor : (Procfs.Process.Stat.t, int) Fieldslib.Field.t
      val exit_signal : (Procfs.Process.Stat.t, int) Fieldslib.Field.t
      val cnswap :
        (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val nswap : (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val wchan : (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val sigcatch :
        (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val sigignore :
        (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val blocked :
        (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val signal :
        (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val kstkeip :
        (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val kstkesp :
        (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val startstack :
        (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val endcode :
        (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val startcode :
        (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val rlim : (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val rss : (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val vsize : (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val starttime :
        (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val itrealvalue :
        (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val unused :
        (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val nice : (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val priority :
        (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val cstime :
        (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val cutime :
        (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val stime : (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val utime : (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val cmajflt :
        (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val majflt :
        (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val cminflt :
        (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val minflt :
        (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val flags : (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t
      val tpgid : (Procfs.Process.Stat.t, int) Fieldslib.Field.t
      val tty_nr : (Procfs.Process.Stat.t, int) Fieldslib.Field.t
      val session : (Procfs.Process.Stat.t, int) Fieldslib.Field.t
      val pgrp :
        (Procfs.Process.Stat.t, Core.Std.Pid.t option) Fieldslib.Field.t
      val ppid :
        (Procfs.Process.Stat.t, Core.Std.Pid.t option) Fieldslib.Field.t
      val state : (Procfs.Process.Stat.t, char) Fieldslib.Field.t
      val comm : (Procfs.Process.Stat.t, string) Fieldslib.Field.t
      val fold :
        init:'acc__ ->
        comm:('acc__ ->
              (Procfs.Process.Stat.t, string) Fieldslib.Field.t -> 'acc__) ->
        state:('acc__ ->
               (Procfs.Process.Stat.t, char) Fieldslib.Field.t -> 'acc__) ->
        ppid:('acc__ ->
              (Procfs.Process.Stat.t, Core.Std.Pid.t option)
              Fieldslib.Field.t -> 'acc__) ->
        pgrp:('acc__ ->
              (Procfs.Process.Stat.t, Core.Std.Pid.t option)
              Fieldslib.Field.t -> 'acc__) ->
        session:('acc__ ->
                 (Procfs.Process.Stat.t, int) Fieldslib.Field.t -> 'acc__) ->
        tty_nr:('acc__ ->
                (Procfs.Process.Stat.t, int) Fieldslib.Field.t -> 'acc__) ->
        tpgid:('acc__ ->
               (Procfs.Process.Stat.t, int) Fieldslib.Field.t -> 'acc__) ->
        flags:('acc__ ->
               (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               'acc__) ->
        minflt:('acc__ ->
                (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                'acc__) ->
        cminflt:('acc__ ->
                 (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 'acc__) ->
        majflt:('acc__ ->
                (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                'acc__) ->
        cmajflt:('acc__ ->
                 (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 'acc__) ->
        utime:('acc__ ->
               (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               'acc__) ->
        stime:('acc__ ->
               (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               'acc__) ->
        cutime:('acc__ ->
                (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                'acc__) ->
        cstime:('acc__ ->
                (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                'acc__) ->
        priority:('acc__ ->
                  (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                  'acc__) ->
        nice:('acc__ ->
              (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
              'acc__) ->
        unused:('acc__ ->
                (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                'acc__) ->
        itrealvalue:('acc__ ->
                     (Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t -> 'acc__) ->
        starttime:('acc__ ->
                   (Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t -> 'acc__) ->
        vsize:('acc__ ->
               (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               'acc__) ->
        rss:('acc__ ->
             (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
             'acc__) ->
        rlim:('acc__ ->
              (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
              'acc__) ->
        startcode:('acc__ ->
                   (Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t -> 'acc__) ->
        endcode:('acc__ ->
                 (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 'acc__) ->
        startstack:('acc__ ->
                    (Procfs.Process.Stat.t, Core.Std.Int63.t)
                    Fieldslib.Field.t -> 'acc__) ->
        kstkesp:('acc__ ->
                 (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 'acc__) ->
        kstkeip:('acc__ ->
                 (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 'acc__) ->
        signal:('acc__ ->
                (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                'acc__) ->
        blocked:('acc__ ->
                 (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 'acc__) ->
        sigignore:('acc__ ->
                   (Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t -> 'acc__) ->
        sigcatch:('acc__ ->
                  (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                  'acc__) ->
        wchan:('acc__ ->
               (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               'acc__) ->
        nswap:('acc__ ->
               (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               'acc__) ->
        cnswap:('acc__ ->
                (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                'acc__) ->
        exit_signal:('acc__ ->
                     (Procfs.Process.Stat.t, int) Fieldslib.Field.t -> 'acc__) ->
        processor:('acc__ ->
                   (Procfs.Process.Stat.t, int) Fieldslib.Field.t -> 'acc__) ->
        rt_priority:('acc__ ->
                     (Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t -> 'acc__) ->
        policy:('acc__ ->
                (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                'acc__) ->
        'acc__
      val make_creator :
        comm:((Procfs.Process.Stat.t, string) Fieldslib.Field.t ->
              'compile_acc__ -> ('input__ -> string) * 'compile_acc__) ->
        state:((Procfs.Process.Stat.t, char) Fieldslib.Field.t ->
               'compile_acc__ -> ('input__ -> char) * 'compile_acc__) ->
        ppid:((Procfs.Process.Stat.t, Core.Std.Pid.t option)
              Fieldslib.Field.t ->
              'compile_acc__ ->
              ('input__ -> Core.Std.Pid.t option) * 'compile_acc__) ->
        pgrp:((Procfs.Process.Stat.t, Core.Std.Pid.t option)
              Fieldslib.Field.t ->
              'compile_acc__ ->
              ('input__ -> Core.Std.Pid.t option) * 'compile_acc__) ->
        session:((Procfs.Process.Stat.t, int) Fieldslib.Field.t ->
                 'compile_acc__ -> ('input__ -> int) * 'compile_acc__) ->
        tty_nr:((Procfs.Process.Stat.t, int) Fieldslib.Field.t ->
                'compile_acc__ -> ('input__ -> int) * 'compile_acc__) ->
        tpgid:((Procfs.Process.Stat.t, int) Fieldslib.Field.t ->
               'compile_acc__ -> ('input__ -> int) * 'compile_acc__) ->
        flags:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               'compile_acc__ ->
               ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        minflt:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                'compile_acc__ ->
                ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        cminflt:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 'compile_acc__ ->
                 ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        majflt:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                'compile_acc__ ->
                ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        cmajflt:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 'compile_acc__ ->
                 ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        utime:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               'compile_acc__ ->
               ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        stime:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               'compile_acc__ ->
               ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        cutime:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                'compile_acc__ ->
                ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        cstime:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                'compile_acc__ ->
                ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        priority:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                  'compile_acc__ ->
                  ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        nice:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
              'compile_acc__ ->
              ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        unused:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                'compile_acc__ ->
                ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        itrealvalue:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t ->
                     'compile_acc__ ->
                     ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        starttime:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t ->
                   'compile_acc__ ->
                   ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        vsize:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               'compile_acc__ ->
               ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        rss:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
             'compile_acc__ ->
             ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        rlim:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
              'compile_acc__ ->
              ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        startcode:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t ->
                   'compile_acc__ ->
                   ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        endcode:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 'compile_acc__ ->
                 ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        startstack:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                    Fieldslib.Field.t ->
                    'compile_acc__ ->
                    ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        kstkesp:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 'compile_acc__ ->
                 ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        kstkeip:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 'compile_acc__ ->
                 ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        signal:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                'compile_acc__ ->
                ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        blocked:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 'compile_acc__ ->
                 ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        sigignore:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t ->
                   'compile_acc__ ->
                   ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        sigcatch:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                  'compile_acc__ ->
                  ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        wchan:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               'compile_acc__ ->
               ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        nswap:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               'compile_acc__ ->
               ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        cnswap:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                'compile_acc__ ->
                ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        exit_signal:((Procfs.Process.Stat.t, int) Fieldslib.Field.t ->
                     'compile_acc__ -> ('input__ -> int) * 'compile_acc__) ->
        processor:((Procfs.Process.Stat.t, int) Fieldslib.Field.t ->
                   'compile_acc__ -> ('input__ -> int) * 'compile_acc__) ->
        rt_priority:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t ->
                     'compile_acc__ ->
                     ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        policy:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                'compile_acc__ ->
                ('input__ -> Core.Std.Int63.t) * 'compile_acc__) ->
        'compile_acc__ ->
        ('input__ -> Procfs.Process.Stat.t) * 'compile_acc__
      val create :
        comm:string ->
        state:char ->
        ppid:Core.Std.Pid.t option ->
        pgrp:Core.Std.Pid.t option ->
        session:int ->
        tty_nr:int ->
        tpgid:int ->
        flags:Core.Std.Int63.t ->
        minflt:Core.Std.Int63.t ->
        cminflt:Core.Std.Int63.t ->
        majflt:Core.Std.Int63.t ->
        cmajflt:Core.Std.Int63.t ->
        utime:Core.Std.Int63.t ->
        stime:Core.Std.Int63.t ->
        cutime:Core.Std.Int63.t ->
        cstime:Core.Std.Int63.t ->
        priority:Core.Std.Int63.t ->
        nice:Core.Std.Int63.t ->
        unused:Core.Std.Int63.t ->
        itrealvalue:Core.Std.Int63.t ->
        starttime:Core.Std.Int63.t ->
        vsize:Core.Std.Int63.t ->
        rss:Core.Std.Int63.t ->
        rlim:Core.Std.Int63.t ->
        startcode:Core.Std.Int63.t ->
        endcode:Core.Std.Int63.t ->
        startstack:Core.Std.Int63.t ->
        kstkesp:Core.Std.Int63.t ->
        kstkeip:Core.Std.Int63.t ->
        signal:Core.Std.Int63.t ->
        blocked:Core.Std.Int63.t ->
        sigignore:Core.Std.Int63.t ->
        sigcatch:Core.Std.Int63.t ->
        wchan:Core.Std.Int63.t ->
        nswap:Core.Std.Int63.t ->
        cnswap:Core.Std.Int63.t ->
        exit_signal:int ->
        processor:int ->
        rt_priority:Core.Std.Int63.t ->
        policy:Core.Std.Int63.t -> Procfs.Process.Stat.t
      val iter :
        comm:((Procfs.Process.Stat.t, string) Fieldslib.Field.t -> unit) ->
        state:((Procfs.Process.Stat.t, char) Fieldslib.Field.t -> unit) ->
        ppid:((Procfs.Process.Stat.t, Core.Std.Pid.t option)
              Fieldslib.Field.t -> unit) ->
        pgrp:((Procfs.Process.Stat.t, Core.Std.Pid.t option)
              Fieldslib.Field.t -> unit) ->
        session:((Procfs.Process.Stat.t, int) Fieldslib.Field.t -> unit) ->
        tty_nr:((Procfs.Process.Stat.t, int) Fieldslib.Field.t -> unit) ->
        tpgid:((Procfs.Process.Stat.t, int) Fieldslib.Field.t -> unit) ->
        flags:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               unit) ->
        minflt:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                unit) ->
        cminflt:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 unit) ->
        majflt:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                unit) ->
        cmajflt:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 unit) ->
        utime:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               unit) ->
        stime:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               unit) ->
        cutime:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                unit) ->
        cstime:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                unit) ->
        priority:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                  unit) ->
        nice:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
              unit) ->
        unused:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                unit) ->
        itrealvalue:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t -> unit) ->
        starttime:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t -> unit) ->
        vsize:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               unit) ->
        rss:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
             unit) ->
        rlim:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
              unit) ->
        startcode:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t -> unit) ->
        endcode:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 unit) ->
        startstack:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                    Fieldslib.Field.t -> unit) ->
        kstkesp:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 unit) ->
        kstkeip:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 unit) ->
        signal:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                unit) ->
        blocked:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 unit) ->
        sigignore:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t -> unit) ->
        sigcatch:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                  unit) ->
        wchan:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               unit) ->
        nswap:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               unit) ->
        cnswap:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                unit) ->
        exit_signal:((Procfs.Process.Stat.t, int) Fieldslib.Field.t -> unit) ->
        processor:((Procfs.Process.Stat.t, int) Fieldslib.Field.t -> unit) ->
        rt_priority:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t -> unit) ->
        policy:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                unit) ->
        unit
      val map :
        comm:((Procfs.Process.Stat.t, string) Fieldslib.Field.t -> string) ->
        state:((Procfs.Process.Stat.t, char) Fieldslib.Field.t -> char) ->
        ppid:((Procfs.Process.Stat.t, Core.Std.Pid.t option)
              Fieldslib.Field.t -> Core.Std.Pid.t option) ->
        pgrp:((Procfs.Process.Stat.t, Core.Std.Pid.t option)
              Fieldslib.Field.t -> Core.Std.Pid.t option) ->
        session:((Procfs.Process.Stat.t, int) Fieldslib.Field.t -> int) ->
        tty_nr:((Procfs.Process.Stat.t, int) Fieldslib.Field.t -> int) ->
        tpgid:((Procfs.Process.Stat.t, int) Fieldslib.Field.t -> int) ->
        flags:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               Core.Std.Int63.t) ->
        minflt:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                Core.Std.Int63.t) ->
        cminflt:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 Core.Std.Int63.t) ->
        majflt:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                Core.Std.Int63.t) ->
        cmajflt:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 Core.Std.Int63.t) ->
        utime:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               Core.Std.Int63.t) ->
        stime:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               Core.Std.Int63.t) ->
        cutime:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                Core.Std.Int63.t) ->
        cstime:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                Core.Std.Int63.t) ->
        priority:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                  Core.Std.Int63.t) ->
        nice:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
              Core.Std.Int63.t) ->
        unused:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                Core.Std.Int63.t) ->
        itrealvalue:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t -> Core.Std.Int63.t) ->
        starttime:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t -> Core.Std.Int63.t) ->
        vsize:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               Core.Std.Int63.t) ->
        rss:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
             Core.Std.Int63.t) ->
        rlim:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
              Core.Std.Int63.t) ->
        startcode:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t -> Core.Std.Int63.t) ->
        endcode:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 Core.Std.Int63.t) ->
        startstack:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                    Fieldslib.Field.t -> Core.Std.Int63.t) ->
        kstkesp:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 Core.Std.Int63.t) ->
        kstkeip:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 Core.Std.Int63.t) ->
        signal:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                Core.Std.Int63.t) ->
        blocked:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 Core.Std.Int63.t) ->
        sigignore:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t -> Core.Std.Int63.t) ->
        sigcatch:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                  Core.Std.Int63.t) ->
        wchan:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               Core.Std.Int63.t) ->
        nswap:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               Core.Std.Int63.t) ->
        cnswap:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                Core.Std.Int63.t) ->
        exit_signal:((Procfs.Process.Stat.t, int) Fieldslib.Field.t -> int) ->
        processor:((Procfs.Process.Stat.t, int) Fieldslib.Field.t -> int) ->
        rt_priority:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t -> Core.Std.Int63.t) ->
        policy:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                Core.Std.Int63.t) ->
        Procfs.Process.Stat.t
      val map_poly :
        (Procfs.Process.Stat.t, 'x0) Fieldslib.Field.user -> 'x0 list
      val for_all :
        comm:((Procfs.Process.Stat.t, string) Fieldslib.Field.t -> bool) ->
        state:((Procfs.Process.Stat.t, char) Fieldslib.Field.t -> bool) ->
        ppid:((Procfs.Process.Stat.t, Core.Std.Pid.t option)
              Fieldslib.Field.t -> bool) ->
        pgrp:((Procfs.Process.Stat.t, Core.Std.Pid.t option)
              Fieldslib.Field.t -> bool) ->
        session:((Procfs.Process.Stat.t, int) Fieldslib.Field.t -> bool) ->
        tty_nr:((Procfs.Process.Stat.t, int) Fieldslib.Field.t -> bool) ->
        tpgid:((Procfs.Process.Stat.t, int) Fieldslib.Field.t -> bool) ->
        flags:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               bool) ->
        minflt:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                bool) ->
        cminflt:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 bool) ->
        majflt:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                bool) ->
        cmajflt:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 bool) ->
        utime:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               bool) ->
        stime:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               bool) ->
        cutime:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                bool) ->
        cstime:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                bool) ->
        priority:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                  bool) ->
        nice:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
              bool) ->
        unused:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                bool) ->
        itrealvalue:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t -> bool) ->
        starttime:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t -> bool) ->
        vsize:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               bool) ->
        rss:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
             bool) ->
        rlim:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
              bool) ->
        startcode:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t -> bool) ->
        endcode:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 bool) ->
        startstack:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                    Fieldslib.Field.t -> bool) ->
        kstkesp:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 bool) ->
        kstkeip:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 bool) ->
        signal:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                bool) ->
        blocked:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 bool) ->
        sigignore:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t -> bool) ->
        sigcatch:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                  bool) ->
        wchan:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               bool) ->
        nswap:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               bool) ->
        cnswap:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                bool) ->
        exit_signal:((Procfs.Process.Stat.t, int) Fieldslib.Field.t -> bool) ->
        processor:((Procfs.Process.Stat.t, int) Fieldslib.Field.t -> bool) ->
        rt_priority:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t -> bool) ->
        policy:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                bool) ->
        bool
      val exists :
        comm:((Procfs.Process.Stat.t, string) Fieldslib.Field.t -> bool) ->
        state:((Procfs.Process.Stat.t, char) Fieldslib.Field.t -> bool) ->
        ppid:((Procfs.Process.Stat.t, Core.Std.Pid.t option)
              Fieldslib.Field.t -> bool) ->
        pgrp:((Procfs.Process.Stat.t, Core.Std.Pid.t option)
              Fieldslib.Field.t -> bool) ->
        session:((Procfs.Process.Stat.t, int) Fieldslib.Field.t -> bool) ->
        tty_nr:((Procfs.Process.Stat.t, int) Fieldslib.Field.t -> bool) ->
        tpgid:((Procfs.Process.Stat.t, int) Fieldslib.Field.t -> bool) ->
        flags:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               bool) ->
        minflt:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                bool) ->
        cminflt:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 bool) ->
        majflt:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                bool) ->
        cmajflt:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 bool) ->
        utime:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               bool) ->
        stime:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               bool) ->
        cutime:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                bool) ->
        cstime:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                bool) ->
        priority:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                  bool) ->
        nice:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
              bool) ->
        unused:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                bool) ->
        itrealvalue:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t -> bool) ->
        starttime:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t -> bool) ->
        vsize:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               bool) ->
        rss:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
             bool) ->
        rlim:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
              bool) ->
        startcode:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t -> bool) ->
        endcode:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 bool) ->
        startstack:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                    Fieldslib.Field.t -> bool) ->
        kstkesp:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 bool) ->
        kstkeip:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 bool) ->
        signal:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                bool) ->
        blocked:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 bool) ->
        sigignore:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t -> bool) ->
        sigcatch:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                  bool) ->
        wchan:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               bool) ->
        nswap:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               bool) ->
        cnswap:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                bool) ->
        exit_signal:((Procfs.Process.Stat.t, int) Fieldslib.Field.t -> bool) ->
        processor:((Procfs.Process.Stat.t, int) Fieldslib.Field.t -> bool) ->
        rt_priority:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t -> bool) ->
        policy:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                bool) ->
        bool
      val to_list :
        comm:((Procfs.Process.Stat.t, string) Fieldslib.Field.t -> 'elem__) ->
        state:((Procfs.Process.Stat.t, char) Fieldslib.Field.t -> 'elem__) ->
        ppid:((Procfs.Process.Stat.t, Core.Std.Pid.t option)
              Fieldslib.Field.t -> 'elem__) ->
        pgrp:((Procfs.Process.Stat.t, Core.Std.Pid.t option)
              Fieldslib.Field.t -> 'elem__) ->
        session:((Procfs.Process.Stat.t, int) Fieldslib.Field.t -> 'elem__) ->
        tty_nr:((Procfs.Process.Stat.t, int) Fieldslib.Field.t -> 'elem__) ->
        tpgid:((Procfs.Process.Stat.t, int) Fieldslib.Field.t -> 'elem__) ->
        flags:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               'elem__) ->
        minflt:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                'elem__) ->
        cminflt:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 'elem__) ->
        majflt:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                'elem__) ->
        cmajflt:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 'elem__) ->
        utime:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               'elem__) ->
        stime:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               'elem__) ->
        cutime:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                'elem__) ->
        cstime:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                'elem__) ->
        priority:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                  'elem__) ->
        nice:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
              'elem__) ->
        unused:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                'elem__) ->
        itrealvalue:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t -> 'elem__) ->
        starttime:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t -> 'elem__) ->
        vsize:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               'elem__) ->
        rss:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
             'elem__) ->
        rlim:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
              'elem__) ->
        startcode:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t -> 'elem__) ->
        endcode:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 'elem__) ->
        startstack:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                    Fieldslib.Field.t -> 'elem__) ->
        kstkesp:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 'elem__) ->
        kstkeip:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 'elem__) ->
        signal:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                'elem__) ->
        blocked:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 'elem__) ->
        sigignore:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t -> 'elem__) ->
        sigcatch:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                  'elem__) ->
        wchan:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               'elem__) ->
        nswap:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
               'elem__) ->
        cnswap:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                'elem__) ->
        exit_signal:((Procfs.Process.Stat.t, int) Fieldslib.Field.t ->
                     'elem__) ->
        processor:((Procfs.Process.Stat.t, int) Fieldslib.Field.t -> 'elem__) ->
        rt_priority:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t -> 'elem__) ->
        policy:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                'elem__) ->
        'elem__ list
      module Direct :
        sig
          val iter :
            Procfs.Process.Stat.t ->
            comm:((Procfs.Process.Stat.t, string) Fieldslib.Field.t ->
                  Procfs.Process.Stat.t -> string -> unit) ->
            state:((Procfs.Process.Stat.t, char) Fieldslib.Field.t ->
                   Procfs.Process.Stat.t -> char -> unit) ->
            ppid:((Procfs.Process.Stat.t, Core.Std.Pid.t option)
                  Fieldslib.Field.t ->
                  Procfs.Process.Stat.t -> Core.Std.Pid.t option -> unit) ->
            pgrp:((Procfs.Process.Stat.t, Core.Std.Pid.t option)
                  Fieldslib.Field.t ->
                  Procfs.Process.Stat.t -> Core.Std.Pid.t option -> unit) ->
            session:((Procfs.Process.Stat.t, int) Fieldslib.Field.t ->
                     Procfs.Process.Stat.t -> int -> unit) ->
            tty_nr:((Procfs.Process.Stat.t, int) Fieldslib.Field.t ->
                    Procfs.Process.Stat.t -> int -> unit) ->
            tpgid:((Procfs.Process.Stat.t, int) Fieldslib.Field.t ->
                   Procfs.Process.Stat.t -> int -> unit) ->
            flags:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t ->
                   Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            minflt:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                    Fieldslib.Field.t ->
                    Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            cminflt:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t ->
                     Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            majflt:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                    Fieldslib.Field.t ->
                    Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            cmajflt:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t ->
                     Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            utime:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t ->
                   Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            stime:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t ->
                   Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            cutime:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                    Fieldslib.Field.t ->
                    Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            cstime:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                    Fieldslib.Field.t ->
                    Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            priority:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                      Fieldslib.Field.t ->
                      Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            nice:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                  Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            unused:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                    Fieldslib.Field.t ->
                    Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            itrealvalue:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                         Fieldslib.Field.t ->
                         Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            starttime:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                       Fieldslib.Field.t ->
                       Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            vsize:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t ->
                   Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            rss:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            rlim:((Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                  Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            startcode:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                       Fieldslib.Field.t ->
                       Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            endcode:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t ->
                     Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            startstack:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                        Fieldslib.Field.t ->
                        Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            kstkesp:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t ->
                     Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            kstkeip:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t ->
                     Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            signal:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                    Fieldslib.Field.t ->
                    Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            blocked:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t ->
                     Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            sigignore:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                       Fieldslib.Field.t ->
                       Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            sigcatch:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                      Fieldslib.Field.t ->
                      Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            wchan:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t ->
                   Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            nswap:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t ->
                   Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            cnswap:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                    Fieldslib.Field.t ->
                    Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            exit_signal:((Procfs.Process.Stat.t, int) Fieldslib.Field.t ->
                         Procfs.Process.Stat.t -> int -> unit) ->
            processor:((Procfs.Process.Stat.t, int) Fieldslib.Field.t ->
                       Procfs.Process.Stat.t -> int -> unit) ->
            rt_priority:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                         Fieldslib.Field.t ->
                         Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            policy:((Procfs.Process.Stat.t, Core.Std.Int63.t)
                    Fieldslib.Field.t ->
                    Procfs.Process.Stat.t -> Core.Std.Int63.t -> unit) ->
            unit
          val fold :
            Procfs.Process.Stat.t ->
            init:'acc__ ->
            comm:('acc__ ->
                  (Procfs.Process.Stat.t, string) Fieldslib.Field.t ->
                  Procfs.Process.Stat.t -> string -> 'acc__) ->
            state:('acc__ ->
                   (Procfs.Process.Stat.t, char) Fieldslib.Field.t ->
                   Procfs.Process.Stat.t -> char -> 'acc__) ->
            ppid:('acc__ ->
                  (Procfs.Process.Stat.t, Core.Std.Pid.t option)
                  Fieldslib.Field.t ->
                  Procfs.Process.Stat.t -> Core.Std.Pid.t option -> 'acc__) ->
            pgrp:('acc__ ->
                  (Procfs.Process.Stat.t, Core.Std.Pid.t option)
                  Fieldslib.Field.t ->
                  Procfs.Process.Stat.t -> Core.Std.Pid.t option -> 'acc__) ->
            session:('acc__ ->
                     (Procfs.Process.Stat.t, int) Fieldslib.Field.t ->
                     Procfs.Process.Stat.t -> int -> 'acc__) ->
            tty_nr:('acc__ ->
                    (Procfs.Process.Stat.t, int) Fieldslib.Field.t ->
                    Procfs.Process.Stat.t -> int -> 'acc__) ->
            tpgid:('acc__ ->
                   (Procfs.Process.Stat.t, int) Fieldslib.Field.t ->
                   Procfs.Process.Stat.t -> int -> 'acc__) ->
            flags:('acc__ ->
                   (Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t ->
                   Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            minflt:('acc__ ->
                    (Procfs.Process.Stat.t, Core.Std.Int63.t)
                    Fieldslib.Field.t ->
                    Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            cminflt:('acc__ ->
                     (Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t ->
                     Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            majflt:('acc__ ->
                    (Procfs.Process.Stat.t, Core.Std.Int63.t)
                    Fieldslib.Field.t ->
                    Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            cmajflt:('acc__ ->
                     (Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t ->
                     Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            utime:('acc__ ->
                   (Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t ->
                   Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            stime:('acc__ ->
                   (Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t ->
                   Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            cutime:('acc__ ->
                    (Procfs.Process.Stat.t, Core.Std.Int63.t)
                    Fieldslib.Field.t ->
                    Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            cstime:('acc__ ->
                    (Procfs.Process.Stat.t, Core.Std.Int63.t)
                    Fieldslib.Field.t ->
                    Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            priority:('acc__ ->
                      (Procfs.Process.Stat.t, Core.Std.Int63.t)
                      Fieldslib.Field.t ->
                      Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            nice:('acc__ ->
                  (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                  Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            unused:('acc__ ->
                    (Procfs.Process.Stat.t, Core.Std.Int63.t)
                    Fieldslib.Field.t ->
                    Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            itrealvalue:('acc__ ->
                         (Procfs.Process.Stat.t, Core.Std.Int63.t)
                         Fieldslib.Field.t ->
                         Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            starttime:('acc__ ->
                       (Procfs.Process.Stat.t, Core.Std.Int63.t)
                       Fieldslib.Field.t ->
                       Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            vsize:('acc__ ->
                   (Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t ->
                   Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            rss:('acc__ ->
                 (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                 Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            rlim:('acc__ ->
                  (Procfs.Process.Stat.t, Core.Std.Int63.t) Fieldslib.Field.t ->
                  Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            startcode:('acc__ ->
                       (Procfs.Process.Stat.t, Core.Std.Int63.t)
                       Fieldslib.Field.t ->
                       Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            endcode:('acc__ ->
                     (Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t ->
                     Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            startstack:('acc__ ->
                        (Procfs.Process.Stat.t, Core.Std.Int63.t)
                        Fieldslib.Field.t ->
                        Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            kstkesp:('acc__ ->
                     (Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t ->
                     Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            kstkeip:('acc__ ->
                     (Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t ->
                     Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            signal:('acc__ ->
                    (Procfs.Process.Stat.t, Core.Std.Int63.t)
                    Fieldslib.Field.t ->
                    Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            blocked:('acc__ ->
                     (Procfs.Process.Stat.t, Core.Std.Int63.t)
                     Fieldslib.Field.t ->
                     Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            sigignore:('acc__ ->
                       (Procfs.Process.Stat.t, Core.Std.Int63.t)
                       Fieldslib.Field.t ->
                       Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            sigcatch:('acc__ ->
                      (Procfs.Process.Stat.t, Core.Std.Int63.t)
                      Fieldslib.Field.t ->
                      Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            wchan:('acc__ ->
                   (Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t ->
                   Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            nswap:('acc__ ->
                   (Procfs.Process.Stat.t, Core.Std.Int63.t)
                   Fieldslib.Field.t ->
                   Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            cnswap:('acc__ ->
                    (Procfs.Process.Stat.t, Core.Std.Int63.t)
                    Fieldslib.Field.t ->
                    Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            exit_signal:('acc__ ->
                         (Procfs.Process.Stat.t, int) Fieldslib.Field.t ->
                         Procfs.Process.Stat.t -> int -> 'acc__) ->
            processor:('acc__ ->
                       (Procfs.Process.Stat.t, int) Fieldslib.Field.t ->
                       Procfs.Process.Stat.t -> int -> 'acc__) ->
            rt_priority:('acc__ ->
                         (Procfs.Process.Stat.t, Core.Std.Int63.t)
                         Fieldslib.Field.t ->
                         Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            policy:('acc__ ->
                    (Procfs.Process.Stat.t, Core.Std.Int63.t)
                    Fieldslib.Field.t ->
                    Procfs.Process.Stat.t -> Core.Std.Int63.t -> 'acc__) ->
            'acc__
        end
    end
  val of_string : string -> Procfs.Process.Stat.t
  val t_of_sexp : Sexplib.Sexp.t -> Procfs.Process.Stat.t
  val sexp_of_t : Procfs.Process.Stat.t -> Sexplib.Sexp.t
end