sig
  val names : string list
  val after : (Udp.Config.t, Udp.write_buffer -> unit) Fieldslib.Field.t
  val before : (Udp.Config.t, Udp.write_buffer -> unit) Fieldslib.Field.t
  val init : (Udp.Config.t, Udp.write_buffer) Fieldslib.Field.t
  val capacity : (Udp.Config.t, int) Fieldslib.Field.t
  val fold :
    init:'acc__ ->
    capacity:('acc__ -> (Udp.Config.t, int) Fieldslib.Field.t -> 'acc__) ->
    init:('acc__ ->
          (Udp.Config.t, Udp.write_buffer) Fieldslib.Field.t -> 'acc__) ->
    before:('acc__ ->
            (Udp.Config.t, Udp.write_buffer -> unit) Fieldslib.Field.t ->
            'acc__) ->
    after:('acc__ ->
           (Udp.Config.t, Udp.write_buffer -> unit) Fieldslib.Field.t ->
           'acc__) ->
    'acc__
  val make_creator :
    capacity:((Udp.Config.t, int) Fieldslib.Field.t ->
              'compile_acc__ -> ('input__ -> int) * 'compile_acc__) ->
    init:((Udp.Config.t, Udp.write_buffer) Fieldslib.Field.t ->
          'compile_acc__ -> ('input__ -> Udp.write_buffer) * 'compile_acc__) ->
    before:((Udp.Config.t, Udp.write_buffer -> unit) Fieldslib.Field.t ->
            'compile_acc__ ->
            ('input__ -> Udp.write_buffer -> unit) * 'compile_acc__) ->
    after:((Udp.Config.t, Udp.write_buffer -> unit) Fieldslib.Field.t ->
           'compile_acc__ ->
           ('input__ -> Udp.write_buffer -> unit) * 'compile_acc__) ->
    'compile_acc__ -> ('input__ -> Udp.Config.t) * 'compile_acc__
  val create :
    capacity:int ->
    init:Udp.write_buffer ->
    before:(Udp.write_buffer -> unit) ->
    after:(Udp.write_buffer -> unit) -> Udp.Config.t
  val map :
    capacity:((Udp.Config.t, int) Fieldslib.Field.t -> int) ->
    init:((Udp.Config.t, Udp.write_buffer) Fieldslib.Field.t ->
          Udp.write_buffer) ->
    before:((Udp.Config.t, Udp.write_buffer -> unit) Fieldslib.Field.t ->
            Udp.write_buffer -> unit) ->
    after:((Udp.Config.t, Udp.write_buffer -> unit) Fieldslib.Field.t ->
           Udp.write_buffer -> unit) ->
    Udp.Config.t
  val iter :
    capacity:((Udp.Config.t, int) Fieldslib.Field.t -> unit) ->
    init:((Udp.Config.t, Udp.write_buffer) Fieldslib.Field.t -> unit) ->
    before:((Udp.Config.t, Udp.write_buffer -> unit) Fieldslib.Field.t ->
            unit) ->
    after:((Udp.Config.t, Udp.write_buffer -> unit) Fieldslib.Field.t -> unit) ->
    unit
  val for_all :
    capacity:((Udp.Config.t, int) Fieldslib.Field.t -> bool) ->
    init:((Udp.Config.t, Udp.write_buffer) Fieldslib.Field.t -> bool) ->
    before:((Udp.Config.t, Udp.write_buffer -> unit) Fieldslib.Field.t ->
            bool) ->
    after:((Udp.Config.t, Udp.write_buffer -> unit) Fieldslib.Field.t -> bool) ->
    bool
  val exists :
    capacity:((Udp.Config.t, int) Fieldslib.Field.t -> bool) ->
    init:((Udp.Config.t, Udp.write_buffer) Fieldslib.Field.t -> bool) ->
    before:((Udp.Config.t, Udp.write_buffer -> unit) Fieldslib.Field.t ->
            bool) ->
    after:((Udp.Config.t, Udp.write_buffer -> unit) Fieldslib.Field.t -> bool) ->
    bool
  val to_list :
    capacity:((Udp.Config.t, int) Fieldslib.Field.t -> 'elem__) ->
    init:((Udp.Config.t, Udp.write_buffer) Fieldslib.Field.t -> 'elem__) ->
    before:((Udp.Config.t, Udp.write_buffer -> unit) Fieldslib.Field.t ->
            'elem__) ->
    after:((Udp.Config.t, Udp.write_buffer -> unit) Fieldslib.Field.t ->
           'elem__) ->
    'elem__ list
  val map_poly :
    ([< `Read | `Set_and_create ], Udp.Config.t, 'x0) Fieldslib.Field.user ->
    'x0 list
  module Direct :
    sig
      val iter :
        Udp.Config.t ->
        capacity:((Udp.Config.t, int) Fieldslib.Field.t ->
                  Udp.Config.t -> int -> unit) ->
        init:((Udp.Config.t, Udp.write_buffer) Fieldslib.Field.t ->
              Udp.Config.t -> Udp.write_buffer -> unit) ->
        before:((Udp.Config.t, Udp.write_buffer -> unit) Fieldslib.Field.t ->
                Udp.Config.t -> (Udp.write_buffer -> unit) -> unit) ->
        after:((Udp.Config.t, Udp.write_buffer -> unit) Fieldslib.Field.t ->
               Udp.Config.t -> (Udp.write_buffer -> unit) -> unit) ->
        unit
      val fold :
        Udp.Config.t ->
        init:'acc__ ->
        capacity:('acc__ ->
                  (Udp.Config.t, int) Fieldslib.Field.t ->
                  Udp.Config.t -> int -> 'acc__) ->
        init:('acc__ ->
              (Udp.Config.t, Udp.write_buffer) Fieldslib.Field.t ->
              Udp.Config.t -> Udp.write_buffer -> 'acc__) ->
        before:('acc__ ->
                (Udp.Config.t, Udp.write_buffer -> unit) Fieldslib.Field.t ->
                Udp.Config.t -> (Udp.write_buffer -> unit) -> 'acc__) ->
        after:('acc__ ->
               (Udp.Config.t, Udp.write_buffer -> unit) Fieldslib.Field.t ->
               Udp.Config.t -> (Udp.write_buffer -> unit) -> 'acc__) ->
        'acc__
    end
end