Module Rpc.Implementation

type 'connection_state t
val description : _ t -> Async_rpc_kernel__Rpc.Description.t
val lift : 'a t -> f:('b -> 'a) -> 'b t

We may want to use an 'a t implementation (perhaps provided by someone else) in a 'b t context. We can do this as long as we can map our state into the state expected by the original implementer.