Add a TryFrom<Vec<u8>> impl that mirror from_vec_with_nul

This commit is contained in:
Alexis Bourget 2020-06-10 23:13:45 +02:00
parent b03164e667
commit 7f3bb398fa

View file

@ -1,6 +1,7 @@
use crate::ascii;
use crate::borrow::{Borrow, Cow};
use crate::cmp::Ordering;
use crate::convert::TryFrom;
use crate::error::Error;
use crate::fmt::{self, Write};
use crate::io;
@ -853,6 +854,19 @@ impl From<Vec<NonZeroU8>> for CString {
}
}
#[unstable(feature = "cstring_from_vec_with_nul", issue = "73179")]
impl TryFrom<Vec<u8>> for CString {
type Error = FromBytesWithNulError;
/// See the document about [`from_vec_with_nul`] for more
/// informations about the behaviour of this method.
///
/// [`from_vec_with_nul`]: struct.CString.html#method.from_vec_with_nul
fn try_from(value: Vec<u8>) -> Result<Self, Self::Error> {
Self::from_vec_with_nul(value)
}
}
#[stable(feature = "more_box_slice_clone", since = "1.29.0")]
impl Clone for Box<CStr> {
#[inline]