From c372403ed585666536b46a6132c6f37eac6556ab Mon Sep 17 00:00:00 2001 From: Aaron Weiss Date: Fri, 9 Oct 2015 13:21:11 -0400 Subject: [PATCH] Made iterator types well-formed to respond to RFC 1214 changes. --- src/client/server/mod.rs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/client/server/mod.rs b/src/client/server/mod.rs index f01fbe6..5c29226 100644 --- a/src/client/server/mod.rs +++ b/src/client/server/mod.rs @@ -257,15 +257,15 @@ impl IrcServer { } /// An Iterator over an IrcServer's incoming Messages. -pub struct ServerIterator<'a, T: IrcRead, U: IrcWrite> { +pub struct ServerIterator<'a, T: IrcRead + 'a, U: IrcWrite + 'a> { server: &'a IrcServer } /// An Iterator over an IrcServer's incoming Commands. -pub type ServerCmdIterator<'a, T, U> = +pub type ServerCmdIterator<'a, T: IrcRead + 'a, U: IrcWrite + 'a> = Map, fn(Result) -> Result>; -impl<'a, T: IrcRead, U: IrcWrite> ServerIterator<'a, T, U> { +impl<'a, T: IrcRead + 'a, U: IrcWrite + 'a> ServerIterator<'a, T, U> { /// Creates a new ServerIterator for the desired IrcServer. pub fn new(server: &IrcServer) -> ServerIterator { ServerIterator { server: server } @@ -284,7 +284,7 @@ impl<'a, T: IrcRead, U: IrcWrite> ServerIterator<'a, T, U> { } } -impl<'a, T: IrcRead, U: IrcWrite> Iterator for ServerIterator<'a, T, U> { +impl<'a, T: IrcRead + 'a, U: IrcWrite + 'a> Iterator for ServerIterator<'a, T, U> { type Item = Result; fn next(&mut self) -> Option> { let res = self.get_next_line().and_then(|msg|