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