From b0b81746f7115a90a217bffe2c204e68e8df752f Mon Sep 17 00:00:00 2001 From: Ivan Krivosheev Date: Fri, 24 Jan 2025 13:16:00 +0300 Subject: [PATCH] axum-core/body: Implement `Stream::size_hint` for `BodyDataStream` (#3195) --- axum-core/src/body.rs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/axum-core/src/body.rs b/axum-core/src/body.rs index 4ee0ffe6..6c49970b 100644 --- a/axum-core/src/body.rs +++ b/axum-core/src/body.rs @@ -155,6 +155,14 @@ impl Stream for BodyDataStream { } } } + + #[inline] + fn size_hint(&self) -> (usize, Option) { + let size_hint = self.inner.size_hint(); + let lower = usize::try_from(size_hint.lower()).unwrap_or_default(); + let upper = size_hint.upper().and_then(|v| usize::try_from(v).ok()); + (lower, upper) + } } impl http_body::Body for BodyDataStream {