mirror of
https://github.com/tokio-rs/bytes.git
synced 2026-08-13 00:00:32 +02:00
Remove Buf impl for &str (#301)
A `&str` cannot arbitrarily advance bytes, since it will panic if advanced to the middle of a Unicode segment.
This commit is contained in:
committed by
Carl Lerche
parent
43ac8e5494
commit
491ebbf79a
+2
-19
@@ -903,9 +903,9 @@ pub trait Buf {
|
||||
/// # Examples
|
||||
///
|
||||
/// ```
|
||||
/// use bytes::{Buf};
|
||||
/// use bytes::Buf;
|
||||
///
|
||||
/// let bytes = "hello world".to_bytes();
|
||||
/// let bytes = (&b"hello world"[..]).to_bytes();
|
||||
/// assert_eq!(&bytes[..], &b"hello world"[..]);
|
||||
/// ```
|
||||
fn to_bytes(&mut self) -> crate::Bytes {
|
||||
@@ -971,23 +971,6 @@ impl Buf for &[u8] {
|
||||
}
|
||||
}
|
||||
|
||||
impl Buf for &str {
|
||||
#[inline]
|
||||
fn remaining(&self) -> usize {
|
||||
self.len()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
fn bytes(&self) -> &[u8] {
|
||||
self.as_bytes()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
fn advance(&mut self, cnt: usize) {
|
||||
*self = &self[cnt..];
|
||||
}
|
||||
}
|
||||
|
||||
impl Buf for Option<[u8; 1]> {
|
||||
fn remaining(&self) -> usize {
|
||||
if self.is_some() {
|
||||
|
||||
Reference in New Issue
Block a user