Pool_sink.Local_sink
module Diff : Intf.Resource_pool_diff_intf
module BC :
BC_ext
with type resource_pool_diff = Diff.t
and type rejected_diff = Diff.rejected
include Mina_net2.Sink.S_with_void
with type msg :=
BC.resource_pool_diff
* ( ([ `Broadcasted | `Not_broadcasted ]
* BC.resource_pool_diff
* BC.rejected_diff)
Core_kernel.Or_error.t ->
unit )
include Mina_net2.Sink.S
with type msg :=
BC.resource_pool_diff
* ( ([ `Broadcasted | `Not_broadcasted ]
* BC.resource_pool_diff
* BC.rejected_diff)
Core_kernel.Or_error.t ->
unit )
val push :
t ->
(BC.resource_pool_diff
* ( ([ `Broadcasted | `Not_broadcasted ]
* BC.resource_pool_diff
* BC.rejected_diff)
Core_kernel.Or_error.t ->
unit )) ->
unit Async_kernel.Deferred.t
val void : t
type unwrapped_t = Diff.verified Network_peer.Envelope.Incoming.t * BC.t
val create :
?on_push:( unit -> unit Async_kernel.Deferred.t ) ->
?log_gossip_heard:bool ->
wrap:( unwrapped_t -> 'wrapped_t ) ->
unwrap:( 'wrapped_t -> unwrapped_t ) ->
trace_label:string ->
logger:Logger.t ->
Diff.pool ->
'wrapped_t Pipe_lib.Strict_pipe.Reader.t * t * Rate_limiter.t