@@ -36,7 +36,7 @@ impl<T: fmt::Debug> Error for TrySendError<T> {}
3636
3737/// A handle to send messages to an actor's mailbox.
3838pub struct Sender < T > {
39- sender : flume :: Sender < T > ,
39+ sender : tokio :: sync :: mpsc :: Sender < T > ,
4040}
4141
4242impl < T > Clone for Sender < T > {
@@ -53,9 +53,9 @@ impl<T> Sender<T> {
5353 /// Returns a `SendError` only if the receiving actor has terminated.
5454 pub async fn send ( & mut self , message : T ) -> Result < ( ) , SendError < T > > {
5555 self . sender
56- . send_async ( message)
56+ . send ( message)
5757 . await
58- . map_err ( |flume :: SendError ( e) | SendError ( e) )
58+ . map_err ( |tokio :: sync :: mpsc :: error :: SendError ( e) | SendError ( e) )
5959 }
6060
6161 /// Attempts to immediately send a message.
@@ -64,27 +64,27 @@ impl<T> Sender<T> {
6464 /// receiving actor has terminated.
6565 pub fn try_send ( & mut self , message : T ) -> Result < ( ) , TrySendError < T > > {
6666 self . sender . try_send ( message) . map_err ( |e| match e {
67- flume :: TrySendError :: Full ( e) => TrySendError :: Full ( e) ,
68- flume :: TrySendError :: Disconnected ( e) => TrySendError :: Closed ( e) ,
67+ tokio :: sync :: mpsc :: error :: TrySendError :: Full ( e) => TrySendError :: Full ( e) ,
68+ tokio :: sync :: mpsc :: error :: TrySendError :: Closed ( e) => TrySendError :: Closed ( e) ,
6969 } )
7070 }
7171}
7272
7373/// An actor's mailbox for receiving messages.
7474pub struct Receiver < T > {
75- receiver : flume :: Receiver < T > ,
75+ receiver : tokio :: sync :: mpsc :: Receiver < T > ,
7676}
7777
7878impl < T > Receiver < T > {
7979 /// Receives the next message from the mailbox.
8080 pub async fn recv ( & mut self ) -> Option < T > {
81- self . receiver . recv_async ( ) . await . ok ( )
81+ self . receiver . recv ( ) . await
8282 }
8383}
8484
8585/// Creates a new mailbox and a corresponding sender handle.
8686pub fn new < T > ( buffer : usize ) -> ( Sender < T > , Receiver < T > ) {
87- let ( sender, receiver) = flume :: bounded ( buffer) ;
87+ let ( sender, receiver) = tokio :: sync :: mpsc :: channel ( buffer) ;
8888 ( Sender { sender } , Receiver { receiver } )
8989}
9090
0 commit comments