Transaction_pool.Make0
module Base_ledger : Intf.Base_ledger_intf
module Staged_ledger : sig ... end
module Transition_frontier : Transition_frontier_intf with type staged_ledger := Staged_ledger.t
type verification_failure =
| Command_failure of Diff_versioned.Diff_error.t |
| Invalid_failure of Verifier.invalid |
val verification_failure_to_yojson : verification_failure -> Yojson.Safe.t
val _ : verification_failure -> Yojson.Safe.t
module Breadcrumb = Transition_frontier.Breadcrumb
module Resource_pool : sig ... end
module Local_sink : sig ... end
module Remote_sink : sig ... end
module Broadcast_callback : sig ... end
val create :
config:Resource_pool.Config.t ->
constraint_constants:Genesis_constants.Constraint_constants.t ->
consensus_constants:Consensus.Constants.t ->
time_controller:Block_time.Controller.t ->
frontier_broadcast_pipe:
Transition_frontier.t Core_kernel.Option.t Pipe_lib.Broadcast_pipe.Reader.t ->
logger:Logger.t ->
log_gossip_heard:bool ->
on_remote_push:( unit -> unit Async_kernel.Deferred.t ) ->
t * Remote_sink.t * Local_sink.t
val of_resource_pool_and_diffs :
Resource_pool.t ->
logger:Logger.t ->
constraint_constants:Genesis_constants.Constraint_constants.t ->
tf_diffs:Resource_pool.transition_frontier_diff Pipe_lib.Strict_pipe.Reader.t ->
log_gossip_heard:bool ->
on_remote_push:( unit -> unit Async_kernel.Deferred.t ) ->
t * Remote_sink.t * Local_sink.t
val resource_pool : t -> Resource_pool.t
val broadcasts : t -> Resource_pool.Diff.t Pipe_lib.Linear_pipe.Reader.t
val create_rate_limiter : unit -> Rate_limiter.t
val apply_and_broadcast :
t ->
Resource_pool.Diff.verified Network_peer.Envelope.Incoming.t ->
Broadcast_callback.t ->
unit Async_kernel.Deferred.t