Tracking Issue for str::as_str() & friends (original) (raw)
Feature gate: #![feature(str_as_str)]
This is a tracking issue for the as_str() method on the str type itself, so that Box<str>, Rc<str>, Arc<str> & others can have the same things as String has.
Later also expanded to some other types (see below).
Public API
impl str { pub const fn as_str(&self) -> &str; } impl CStr { pub const fn as_c_str(&self) -> &CStr; } impl OsStr { pub const fn as_os_str(&self) -> &OsStr; } impl Path { pub const fn as_path(&self) -> &Path; } impl [T] { pub const fn as_slice(&self) -> &[T]; pub const fn as_mut_slice(&mut self) -> &mut [T]; } impl ByteStr { pub const fn as_byte_str(&self) -> &ByteStr; pub const fn as_mut_byte_str(&mut self) -> &mut ByteStr; }
- Tracking issue for
ByteStr: Tracking Issue for ByteStr/ByteString #134915
Steps / History
- Implementation:
- for
str: Add str.as_str() for easy Deref to string slices #129550
* t-libs-api's approval: Add str.as_str() for easy Deref to string slices #129550 (comment) - constify: constify (the unstable) str::as_str #145930
- more types: Expand str_as_str to more types #145933
* ACP: str::as_str but for CStr, OsStr, Path, and [T] libs-team#643
- for
- Final comment period (FCP)1
- Stabilization PR
Unresolved Questions
- None yet.