From ec3b224d02c390fec097ce6c6816eefda6615355 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sun, 8 Aug 2021 20:49:42 +0100 Subject: [PATCH 1/1] server: MetadataFieldIterator::parse Signed-off-by: Ian Jackson --- src/multipart.rs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/multipart.rs b/src/multipart.rs index 112712b..3f918b7 100644 --- a/src/multipart.rs +++ b/src/multipart.rs @@ -86,6 +86,15 @@ impl<'b> MetadataFieldIterator<'b> { last: Some(0), iter: memchr::Memchr::new(b'\n', buf), } } + + #[throws(AE)] + pub fn parse(&mut self) -> Option + where T: FromStr, + T::Err: std::error::Error + Sync + Send + 'static, + { + let s = if let Some(r) = self.next() { r? } else { return None }; + Some(s.parse()?) + } } impl<'b> Iterator for MetadataFieldIterator<'b> { -- 2.30.2