sig
  type t = {
    spec : string;
    file : string;
    vfstype : string;
    mntops : string list;
    freq : int;
    passno : int;
  }
  val passno : Procfs.Mount.t -> int
  val freq : Procfs.Mount.t -> int
  val mntops : Procfs.Mount.t -> string list
  val vfstype : Procfs.Mount.t -> string
  val file : Procfs.Mount.t -> string
  val spec : Procfs.Mount.t -> string
  module Fields :
    sig
      val names : string list
      val passno : (Procfs.Mount.t, int) Fieldslib.Field.t
      val freq : (Procfs.Mount.t, int) Fieldslib.Field.t
      val mntops : (Procfs.Mount.t, string list) Fieldslib.Field.t
      val vfstype : (Procfs.Mount.t, string) Fieldslib.Field.t
      val file : (Procfs.Mount.t, string) Fieldslib.Field.t
      val spec : (Procfs.Mount.t, string) Fieldslib.Field.t
      val fold :
        init:'acc__ ->
        spec:('acc__ -> (Procfs.Mount.t, string) Fieldslib.Field.t -> 'acc__) ->
        file:('acc__ -> (Procfs.Mount.t, string) Fieldslib.Field.t -> 'acc__) ->
        vfstype:('acc__ ->
                 (Procfs.Mount.t, string) Fieldslib.Field.t -> 'acc__) ->
        mntops:('acc__ ->
                (Procfs.Mount.t, string list) Fieldslib.Field.t -> 'acc__) ->
        freq:('acc__ -> (Procfs.Mount.t, int) Fieldslib.Field.t -> 'acc__) ->
        passno:('acc__ -> (Procfs.Mount.t, int) Fieldslib.Field.t -> 'acc__) ->
        'acc__
      val make_creator :
        spec:((Procfs.Mount.t, string) Fieldslib.Field.t ->
              'compile_acc__ -> ('input__ -> string) * 'compile_acc__) ->
        file:((Procfs.Mount.t, string) Fieldslib.Field.t ->
              'compile_acc__ -> ('input__ -> string) * 'compile_acc__) ->
        vfstype:((Procfs.Mount.t, string) Fieldslib.Field.t ->
                 'compile_acc__ -> ('input__ -> string) * 'compile_acc__) ->
        mntops:((Procfs.Mount.t, string list) Fieldslib.Field.t ->
                'compile_acc__ -> ('input__ -> string list) * 'compile_acc__) ->
        freq:((Procfs.Mount.t, int) Fieldslib.Field.t ->
              'compile_acc__ -> ('input__ -> int) * 'compile_acc__) ->
        passno:((Procfs.Mount.t, int) Fieldslib.Field.t ->
                'compile_acc__ -> ('input__ -> int) * 'compile_acc__) ->
        'compile_acc__ -> ('input__ -> Procfs.Mount.t) * 'compile_acc__
      val create :
        spec:string ->
        file:string ->
        vfstype:string ->
        mntops:string list -> freq:int -> passno:int -> Procfs.Mount.t
      val map :
        spec:((Procfs.Mount.t, string) Fieldslib.Field.t -> string) ->
        file:((Procfs.Mount.t, string) Fieldslib.Field.t -> string) ->
        vfstype:((Procfs.Mount.t, string) Fieldslib.Field.t -> string) ->
        mntops:((Procfs.Mount.t, string list) Fieldslib.Field.t ->
                string list) ->
        freq:((Procfs.Mount.t, int) Fieldslib.Field.t -> int) ->
        passno:((Procfs.Mount.t, int) Fieldslib.Field.t -> int) ->
        Procfs.Mount.t
      val iter :
        spec:((Procfs.Mount.t, string) Fieldslib.Field.t -> unit) ->
        file:((Procfs.Mount.t, string) Fieldslib.Field.t -> unit) ->
        vfstype:((Procfs.Mount.t, string) Fieldslib.Field.t -> unit) ->
        mntops:((Procfs.Mount.t, string list) Fieldslib.Field.t -> unit) ->
        freq:((Procfs.Mount.t, int) Fieldslib.Field.t -> unit) ->
        passno:((Procfs.Mount.t, int) Fieldslib.Field.t -> unit) -> unit
      val for_all :
        spec:((Procfs.Mount.t, string) Fieldslib.Field.t -> bool) ->
        file:((Procfs.Mount.t, string) Fieldslib.Field.t -> bool) ->
        vfstype:((Procfs.Mount.t, string) Fieldslib.Field.t -> bool) ->
        mntops:((Procfs.Mount.t, string list) Fieldslib.Field.t -> bool) ->
        freq:((Procfs.Mount.t, int) Fieldslib.Field.t -> bool) ->
        passno:((Procfs.Mount.t, int) Fieldslib.Field.t -> bool) -> bool
      val exists :
        spec:((Procfs.Mount.t, string) Fieldslib.Field.t -> bool) ->
        file:((Procfs.Mount.t, string) Fieldslib.Field.t -> bool) ->
        vfstype:((Procfs.Mount.t, string) Fieldslib.Field.t -> bool) ->
        mntops:((Procfs.Mount.t, string list) Fieldslib.Field.t -> bool) ->
        freq:((Procfs.Mount.t, int) Fieldslib.Field.t -> bool) ->
        passno:((Procfs.Mount.t, int) Fieldslib.Field.t -> bool) -> bool
      val to_list :
        spec:((Procfs.Mount.t, string) Fieldslib.Field.t -> 'elem__) ->
        file:((Procfs.Mount.t, string) Fieldslib.Field.t -> 'elem__) ->
        vfstype:((Procfs.Mount.t, string) Fieldslib.Field.t -> 'elem__) ->
        mntops:((Procfs.Mount.t, string list) Fieldslib.Field.t -> 'elem__) ->
        freq:((Procfs.Mount.t, int) Fieldslib.Field.t -> 'elem__) ->
        passno:((Procfs.Mount.t, int) Fieldslib.Field.t -> 'elem__) ->
        'elem__ list
      val map_poly :
        ([< `Read | `Set_and_create ], Procfs.Mount.t, 'x0)
        Fieldslib.Field.user -> 'x0 list
      module Direct :
        sig
          val iter :
            Procfs.Mount.t ->
            spec:((Procfs.Mount.t, string) Fieldslib.Field.t ->
                  Procfs.Mount.t -> string -> unit) ->
            file:((Procfs.Mount.t, string) Fieldslib.Field.t ->
                  Procfs.Mount.t -> string -> unit) ->
            vfstype:((Procfs.Mount.t, string) Fieldslib.Field.t ->
                     Procfs.Mount.t -> string -> unit) ->
            mntops:((Procfs.Mount.t, string list) Fieldslib.Field.t ->
                    Procfs.Mount.t -> string list -> unit) ->
            freq:((Procfs.Mount.t, int) Fieldslib.Field.t ->
                  Procfs.Mount.t -> int -> unit) ->
            passno:((Procfs.Mount.t, int) Fieldslib.Field.t ->
                    Procfs.Mount.t -> int -> unit) ->
            unit
          val fold :
            Procfs.Mount.t ->
            init:'acc__ ->
            spec:('acc__ ->
                  (Procfs.Mount.t, string) Fieldslib.Field.t ->
                  Procfs.Mount.t -> string -> 'acc__) ->
            file:('acc__ ->
                  (Procfs.Mount.t, string) Fieldslib.Field.t ->
                  Procfs.Mount.t -> string -> 'acc__) ->
            vfstype:('acc__ ->
                     (Procfs.Mount.t, string) Fieldslib.Field.t ->
                     Procfs.Mount.t -> string -> 'acc__) ->
            mntops:('acc__ ->
                    (Procfs.Mount.t, string list) Fieldslib.Field.t ->
                    Procfs.Mount.t -> string list -> 'acc__) ->
            freq:('acc__ ->
                  (Procfs.Mount.t, int) Fieldslib.Field.t ->
                  Procfs.Mount.t -> int -> 'acc__) ->
            passno:('acc__ ->
                    (Procfs.Mount.t, int) Fieldslib.Field.t ->
                    Procfs.Mount.t -> int -> 'acc__) ->
            'acc__
        end
    end
end