diff --git a/src/client/conn.rs b/src/client/conn.rs index 0cb4d23..41fb4a3 100644 --- a/src/client/conn.rs +++ b/src/client/conn.rs @@ -6,7 +6,7 @@ use error; use client::data::Config; use client::transport::{IrcTransport, LogView, Logged}; use proto::{IrcCodec, Message}; -use encoding::{EncoderTrap}; +use encoding::EncoderTrap; use encoding::label::encoding_from_whatwg_label; use futures::{Async, Poll, Future, Sink, StartSend, Stream}; use native_tls::{Certificate, TlsConnector}; @@ -81,12 +81,14 @@ impl<'a> Future for ConnectionFuture<'a> { let encoding = enc?; let init_str = config.mock_initial_value(); let initial: error::Result<_> = { - encoding.encode(&init_str, EncoderTrap::Replace).map_err(|data| { - io::Error::new( - io::ErrorKind::InvalidInput, - &format!("Failed to encode {} as {}.", data, encoding.name())[..], - ).into() - }) + encoding.encode(&init_str, EncoderTrap::Replace).map_err( + |data| { + io::Error::new( + io::ErrorKind::InvalidInput, + &format!("Failed to encode {} as {}.", data, encoding.name())[..], + ).into() + }, + ) }; let framed = MockStream::new(&initial?).framed(IrcCodec::new(config.encoding())?); @@ -140,7 +142,7 @@ impl Connection { pub fn log_view(&self) -> Option { match self { &Connection::Mock(ref inner) => Some(inner.view()), - _ => None + _ => None, } } } diff --git a/src/client/transport.rs b/src/client/transport.rs index 99f5e17..cc926e2 100644 --- a/src/client/transport.rs +++ b/src/client/transport.rs @@ -93,27 +93,33 @@ pub struct LogView { impl LogView { /// Gets a read guard for all the messages sent on the transport. pub fn sent(&self) -> error::Result>> { - self.sent.read().map_err(|_| - error::ErrorKind::PoisonedLog.into() + self.sent.read().map_err( + |_| error::ErrorKind::PoisonedLog.into(), ) } /// Gets a read guard for all the messages received on the transport. pub fn received(&self) -> error::Result>> { - self.received.read().map_err(|_| - error::ErrorKind::PoisonedLog.into() + self.received.read().map_err( + |_| error::ErrorKind::PoisonedLog.into(), ) } } /// A logged version of the `IrcTransport` that records all sent and received messages. /// Note: this will introduce some performance overhead by cloning all messages. -pub struct Logged where T: AsyncRead + AsyncWrite { +pub struct Logged +where + T: AsyncRead + AsyncWrite, +{ inner: IrcTransport, view: LogView, } -impl Logged where T: AsyncRead + AsyncWrite { +impl Logged +where + T: AsyncRead + AsyncWrite, +{ /// Wraps the given `IrcTransport` in logging. pub fn wrap(inner: IrcTransport) -> Logged { Logged { @@ -121,7 +127,7 @@ impl Logged where T: AsyncRead + AsyncWrite { view: LogView { sent: Arc::new(RwLock::new(vec![])), received: Arc::new(RwLock::new(vec![])), - } + }, } } @@ -132,7 +138,7 @@ impl Logged where T: AsyncRead + AsyncWrite { } impl Stream for Logged - where +where T: AsyncRead + AsyncWrite, { type Item = Message; @@ -141,19 +147,19 @@ impl Stream for Logged fn poll(&mut self) -> Poll, Self::Error> { match try_ready!(self.inner.poll()) { Some(msg) => { - let recv: error::Result<_> = self.view.received.write().map_err(|_| + let recv: error::Result<_> = self.view.received.write().map_err(|_| { error::ErrorKind::PoisonedLog.into() - ); + }); recv?.push(msg.clone()); Ok(Async::Ready(Some(msg))) - }, - None => Ok(Async::Ready(None)) + } + None => Ok(Async::Ready(None)), } } } impl Sink for Logged - where +where T: AsyncRead + AsyncWrite, { type SinkItem = Message; @@ -161,9 +167,9 @@ impl Sink for Logged fn start_send(&mut self, item: Self::SinkItem) -> StartSend { let res = self.inner.start_send(item.clone())?; - let sent: error::Result<_> = self.view.sent.write().map_err(|_| + let sent: error::Result<_> = self.view.sent.write().map_err(|_| { error::ErrorKind::PoisonedLog.into() - ); + }); sent?.push(item); Ok(res) }