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