From c738d59a98e2e5c91cc9ac15f131eae55bb3a717 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sun, 8 Aug 2021 20:51:56 +0100 Subject: [PATCH] server: MetadataFieldIterator::need Signed-off-by: Ian Jackson --- src/multipart.rs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/multipart.rs b/src/multipart.rs index 4ebff64..5099f05 100644 --- a/src/multipart.rs +++ b/src/multipart.rs @@ -87,6 +87,14 @@ impl<'b> MetadataFieldIterator<'b> { iter: memchr::Memchr::new(b'\n', buf), } } + #[throws(AE)] + pub fn need(&mut self) -> T + where T: FromStr, + T::Err: std::error::Error + Sync + Send + 'static, + { + self.parse()?.ok_or_else(|| anyhow!("missing"))? + } + #[throws(AE)] pub fn parse(&mut self) -> Option where T: FromStr, -- 2.30.2