diff options
author | 2024-04-10 22:45:31 +0800 | |
---|---|---|
committer | 2024-04-10 16:45:31 +0200 | |
commit | b5fbfc3edb35a03ca560d29a0911e0495299575e (patch) | |
tree | 45a05e463f7e1d923b22766a782c7dd7020b1acd | |
parent | 4eb62b912a199bef711e7e12243d972f4f0cdca8 (diff) | |
download | bytes-b5fbfc3edb35a03ca560d29a0911e0495299575e.tar.gz bytes-b5fbfc3edb35a03ca560d29a0911e0495299575e.tar.zst bytes-b5fbfc3edb35a03ca560d29a0911e0495299575e.zip |
perf: improve Bytes::copy_to_bytes (#688)
Signed-off-by: tison <wander4096@gmail.com>
-rw-r--r-- | src/bytes.rs | 8 |
1 files changed, 1 insertions, 7 deletions
diff --git a/src/bytes.rs b/src/bytes.rs index 63c06ce..c3240ce 100644 --- a/src/bytes.rs +++ b/src/bytes.rs @@ -582,13 +582,7 @@ impl Buf for Bytes { } fn copy_to_bytes(&mut self, len: usize) -> Self { - if len == self.remaining() { - core::mem::replace(self, Bytes::new()) - } else { - let ret = self.slice(..len); - self.advance(len); - ret - } + self.split_to(len) } } |