Message.Message_router
type message =
| Join of {
addr : Com.pubkey;
local : bool;
}
| Join_ack of {
addr : Com.pubkey;
result : Com.result';
}
| Leave of {
addr : Com.pubkey;
}
| Leave_ack of {
addr : Com.pubkey;
result : Com.result';
}
| Pull of {
addr : Com.pubkey;
id : Com.msg_id;
}
type t = message
val fold :
join:(Com.pubkey -> bool -> 'a) ->
join_ack:(Com.pubkey -> Com.result' -> 'a) ->
leave:(Com.pubkey -> 'a) ->
leave_ack:(Com.pubkey -> Com.result' -> 'a) ->
pull:(Com.pubkey -> Com.msg_id -> 'a) ->
message ->
'a
val join_ack_fold : (Com.pubkey -> Com.result' -> 'a) -> message -> 'a
val leave_ack_fold : (Com.pubkey -> Com.result' -> 'a) -> message -> 'a
module Acc : sig ... end
module T : sig ... end
module Encode : sig ... end
module Decode : sig ... end
module Mk : sig ... end