lib.rs 716 B

12345678910111213141516171819202122232425262728293031323334
  1. extern crate bytes;
  2. extern crate futures;
  3. extern crate rand;
  4. extern crate tokio;
  5. mod client;
  6. mod network;
  7. mod server;
  8. pub type Result<T> = std::io::Result<T>;
  9. pub use client::Client;
  10. pub use network::Network;
  11. pub use server::RpcHandler;
  12. pub use server::Server;
  13. // Messages passed on network.
  14. struct RpcOnWire {
  15. client: ClientIdentifier,
  16. #[allow(dead_code)]
  17. server: ServerIdentifier,
  18. service_method: String,
  19. request: RequestMessage,
  20. reply_channel: futures::channel::oneshot::Sender<Result<ReplyMessage>>,
  21. }
  22. pub type RequestMessage = bytes::Bytes;
  23. pub type ReplyMessage = bytes::Bytes;
  24. pub type ServerIdentifier = String;
  25. pub type ClientIdentifier = String;
  26. #[cfg(test)]
  27. mod test_utils;