module Fields: sig .. end
val names : string list
val shell : (Unix_syscalls.Passwd.t, string) Fieldslib.Field.t
val dir : (Unix_syscalls.Passwd.t, string) Fieldslib.Field.t
val gecos : (Unix_syscalls.Passwd.t, string) Fieldslib.Field.t
val gid : (Unix_syscalls.Passwd.t, int) Fieldslib.Field.t
val uid : (Unix_syscalls.Passwd.t, int) Fieldslib.Field.t
val passwd : (Unix_syscalls.Passwd.t, string) Fieldslib.Field.t
val name : (Unix_syscalls.Passwd.t, string) Fieldslib.Field.t
val fold : init:'acc__ ->
       name:('acc__ -> (Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> 'acc__) ->
       passwd:('acc__ ->
               (Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> 'acc__) ->
       uid:('acc__ -> (Unix_syscalls.Passwd.t, int) Fieldslib.Field.t -> 'acc__) ->
       gid:('acc__ -> (Unix_syscalls.Passwd.t, int) Fieldslib.Field.t -> 'acc__) ->
       gecos:('acc__ -> (Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> 'acc__) ->
       dir:('acc__ -> (Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> 'acc__) ->
       shell:('acc__ -> (Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> 'acc__) ->
       'acc__
val make_creator : name:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
             'compile_acc__ -> ('input__ -> string) * 'compile_acc__) ->
       passwd:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
               'compile_acc__ -> ('input__ -> string) * 'compile_acc__) ->
       uid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t ->
            'compile_acc__ -> ('input__ -> int) * 'compile_acc__) ->
       gid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t ->
            'compile_acc__ -> ('input__ -> int) * 'compile_acc__) ->
       gecos:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
              'compile_acc__ -> ('input__ -> string) * 'compile_acc__) ->
       dir:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
            'compile_acc__ -> ('input__ -> string) * 'compile_acc__) ->
       shell:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t ->
              'compile_acc__ -> ('input__ -> string) * 'compile_acc__) ->
       'compile_acc__ -> ('input__ -> Unix_syscalls.Passwd.t) * 'compile_acc__
val create : name:string ->
       passwd:string ->
       uid:int ->
       gid:int ->
       gecos:string -> dir:string -> shell:string -> Unix_syscalls.Passwd.t
val map : name:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> string) ->
       passwd:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> string) ->
       uid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t -> int) ->
       gid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t -> int) ->
       gecos:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> string) ->
       dir:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> string) ->
       shell:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> string) ->
       Unix_syscalls.Passwd.t
val iter : name:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> unit) ->
       passwd:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> unit) ->
       uid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t -> unit) ->
       gid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t -> unit) ->
       gecos:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> unit) ->
       dir:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> unit) ->
       shell:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> unit) -> unit
val for_all : name:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> bool) ->
       passwd:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> bool) ->
       uid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t -> bool) ->
       gid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t -> bool) ->
       gecos:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> bool) ->
       dir:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> bool) ->
       shell:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> bool) -> bool
val exists : name:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> bool) ->
       passwd:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> bool) ->
       uid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t -> bool) ->
       gid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t -> bool) ->
       gecos:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> bool) ->
       dir:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> bool) ->
       shell:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> bool) -> bool
val to_list : name:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> 'elem__) ->
       passwd:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> 'elem__) ->
       uid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t -> 'elem__) ->
       gid:((Unix_syscalls.Passwd.t, int) Fieldslib.Field.t -> 'elem__) ->
       gecos:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> 'elem__) ->
       dir:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> 'elem__) ->
       shell:((Unix_syscalls.Passwd.t, string) Fieldslib.Field.t -> 'elem__) ->
       'elem__ list
val map_poly : ([< `Read | `Set_and_create ], Unix_syscalls.Passwd.t, 'x0)
       Fieldslib.Field.user -> 'x0 list
module Direct: sig .. end