Auto merge of #43373 - alexcrichton:stabilize-1.20.0, r=aturon
Stabilize more APIs for the 1.20.0 release In addition to the few stabilizations that have already landed, this cleans up the remaining APIs that are in `final-comment-period` right now to be stable by the 1.20.0 release
This commit is contained in:
@@ -453,8 +453,6 @@ impl CString {
|
||||
/// # Examples
|
||||
///
|
||||
/// ```
|
||||
/// #![feature(as_c_str)]
|
||||
///
|
||||
/// use std::ffi::{CString, CStr};
|
||||
///
|
||||
/// let c_string = CString::new(b"foo".to_vec()).unwrap();
|
||||
@@ -462,7 +460,7 @@ impl CString {
|
||||
/// assert_eq!(c_str, CStr::from_bytes_with_nul(b"foo\0").unwrap());
|
||||
/// ```
|
||||
#[inline]
|
||||
#[unstable(feature = "as_c_str", issue = "40380")]
|
||||
#[stable(feature = "as_c_str", since = "1.20.0")]
|
||||
pub fn as_c_str(&self) -> &CStr {
|
||||
&*self
|
||||
}
|
||||
@@ -474,15 +472,13 @@ impl CString {
|
||||
/// # Examples
|
||||
///
|
||||
/// ```
|
||||
/// #![feature(into_boxed_c_str)]
|
||||
///
|
||||
/// use std::ffi::{CString, CStr};
|
||||
///
|
||||
/// let c_string = CString::new(b"foo".to_vec()).unwrap();
|
||||
/// let boxed = c_string.into_boxed_c_str();
|
||||
/// assert_eq!(&*boxed, CStr::from_bytes_with_nul(b"foo\0").unwrap());
|
||||
/// ```
|
||||
#[unstable(feature = "into_boxed_c_str", issue = "40380")]
|
||||
#[stable(feature = "into_boxed_c_str", since = "1.20.0")]
|
||||
pub fn into_boxed_c_str(self) -> Box<CStr> {
|
||||
unsafe { mem::transmute(self.into_inner()) }
|
||||
}
|
||||
@@ -1001,15 +997,13 @@ impl CStr {
|
||||
/// # Examples
|
||||
///
|
||||
/// ```
|
||||
/// #![feature(into_boxed_c_str)]
|
||||
///
|
||||
/// use std::ffi::CString;
|
||||
///
|
||||
/// let c_string = CString::new(b"foo".to_vec()).unwrap();
|
||||
/// let boxed = c_string.into_boxed_c_str();
|
||||
/// assert_eq!(boxed.into_c_string(), CString::new("foo").unwrap());
|
||||
/// ```
|
||||
#[unstable(feature = "into_boxed_c_str", issue = "40380")]
|
||||
#[stable(feature = "into_boxed_c_str", since = "1.20.0")]
|
||||
pub fn into_c_string(self: Box<CStr>) -> CString {
|
||||
unsafe { mem::transmute(self) }
|
||||
}
|
||||
|
||||
@@ -252,15 +252,13 @@ impl OsString {
|
||||
/// # Examples
|
||||
///
|
||||
/// ```
|
||||
/// #![feature(into_boxed_os_str)]
|
||||
///
|
||||
/// use std::ffi::{OsString, OsStr};
|
||||
///
|
||||
/// let s = OsString::from("hello");
|
||||
///
|
||||
/// let b: Box<OsStr> = s.into_boxed_os_str();
|
||||
/// ```
|
||||
#[unstable(feature = "into_boxed_os_str", issue = "40380")]
|
||||
#[stable(feature = "into_boxed_os_str", since = "1.20.0")]
|
||||
pub fn into_boxed_os_str(self) -> Box<OsStr> {
|
||||
unsafe { mem::transmute(self.inner.into_box()) }
|
||||
}
|
||||
@@ -511,7 +509,7 @@ impl OsStr {
|
||||
///
|
||||
/// [`Box`]: ../boxed/struct.Box.html
|
||||
/// [`OsString`]: struct.OsString.html
|
||||
#[unstable(feature = "into_boxed_os_str", issue = "40380")]
|
||||
#[stable(feature = "into_boxed_os_str", since = "1.20.0")]
|
||||
pub fn into_os_string(self: Box<OsStr>) -> OsString {
|
||||
let inner: Box<Slice> = unsafe { mem::transmute(self) };
|
||||
OsString { inner: Buf::from_box(inner) }
|
||||
|
||||
@@ -249,7 +249,6 @@
|
||||
#![feature(cfg_target_has_atomic)]
|
||||
#![feature(cfg_target_thread_local)]
|
||||
#![feature(cfg_target_vendor)]
|
||||
#![feature(char_escape_debug)]
|
||||
#![feature(char_error_internals)]
|
||||
#![feature(char_internals)]
|
||||
#![feature(collections_range)]
|
||||
@@ -304,7 +303,6 @@
|
||||
#![feature(stmt_expr_attributes)]
|
||||
#![feature(str_char)]
|
||||
#![feature(str_internals)]
|
||||
#![feature(str_mut_extras)]
|
||||
#![feature(str_utf16)]
|
||||
#![feature(test, rustc_private)]
|
||||
#![feature(thread_local)]
|
||||
|
||||
@@ -249,7 +249,7 @@ pub mod builtin {
|
||||
/// For more information, see the [RFC].
|
||||
///
|
||||
/// [RFC]: https://github.com/rust-lang/rfcs/blob/master/text/1695-add-error-macro.md
|
||||
#[unstable(feature = "compile_error_macro", issue = "40872")]
|
||||
#[stable(feature = "compile_error_macro", since = "1.20.0")]
|
||||
#[macro_export]
|
||||
macro_rules! compile_error { ($msg:expr) => ({ /* compiler built-in */ }) }
|
||||
|
||||
|
||||
@@ -1327,7 +1327,7 @@ impl PathBuf {
|
||||
///
|
||||
/// [`Box`]: ../../std/boxed/struct.Box.html
|
||||
/// [`Path`]: struct.Path.html
|
||||
#[unstable(feature = "into_boxed_path", issue = "40380")]
|
||||
#[stable(feature = "into_boxed_path", since = "1.20.0")]
|
||||
pub fn into_boxed_path(self) -> Box<Path> {
|
||||
unsafe { mem::transmute(self.inner.into_boxed_os_str()) }
|
||||
}
|
||||
@@ -2300,7 +2300,7 @@ impl Path {
|
||||
///
|
||||
/// [`Box`]: ../../std/boxed/struct.Box.html
|
||||
/// [`PathBuf`]: struct.PathBuf.html
|
||||
#[unstable(feature = "into_boxed_path", issue = "40380")]
|
||||
#[stable(feature = "into_boxed_path", since = "1.20.0")]
|
||||
pub fn into_path_buf(self: Box<Path>) -> PathBuf {
|
||||
let inner: Box<OsStr> = unsafe { mem::transmute(self) };
|
||||
PathBuf { inner: OsString::from(inner) }
|
||||
|
||||
Reference in New Issue
Block a user