Auto merge of #27900 - SimonSapin:Chars_as_str, r=alexcrichton
See #27775. r? @alexcrichton
This commit is contained in:
commit
3c100de75a
@ -292,6 +292,18 @@ impl<'a> DoubleEndedIterator for Chars<'a> {
|
||||
}
|
||||
}
|
||||
|
||||
impl<'a> Chars<'a> {
|
||||
/// View the underlying data as a subslice of the original data.
|
||||
///
|
||||
/// This has the same lifetime as the original slice, and so the
|
||||
/// iterator can continue to be used while this exists.
|
||||
#[unstable(feature = "iter_to_slice", issue = "27775")]
|
||||
#[inline]
|
||||
pub fn as_str(&self) -> &'a str {
|
||||
unsafe { from_utf8_unchecked(self.iter.as_slice()) }
|
||||
}
|
||||
}
|
||||
|
||||
/// Iterator for a string's characters and their byte offsets.
|
||||
#[derive(Clone)]
|
||||
#[stable(feature = "rust1", since = "1.0.0")]
|
||||
@ -339,6 +351,18 @@ impl<'a> DoubleEndedIterator for CharIndices<'a> {
|
||||
}
|
||||
}
|
||||
|
||||
impl<'a> CharIndices<'a> {
|
||||
/// View the underlying data as a subslice of the original data.
|
||||
///
|
||||
/// This has the same lifetime as the original slice, and so the
|
||||
/// iterator can continue to be used while this exists.
|
||||
#[unstable(feature = "iter_to_slice", issue = "27775")]
|
||||
#[inline]
|
||||
pub fn as_str(&self) -> &'a str {
|
||||
self.iter.as_str()
|
||||
}
|
||||
}
|
||||
|
||||
/// External iterator for a string's bytes.
|
||||
/// Use with the `std::iter` module.
|
||||
///
|
||||
|
Loading…
x
Reference in New Issue
Block a user