mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-01 15:01:51 +00:00
Rollup merge of #69385 - ridiculousfish:relax_get_unchecked, r=nagisa
Relax str::get_unchecked precondition to permit empty slicing Prior to this commit, `str` documented that `get_unchecked` had the precondition that "`begin` must come before `end`". This would appear to prohibit empty slices (i.e. begin == end). In practice, get_unchecked is called often with empty slices. Let's relax the precondition so as to allow them.
This commit is contained in:
commit
d73aa67208
@ -2486,7 +2486,7 @@ impl str {
|
||||
/// Callers of this function are responsible that these preconditions are
|
||||
/// satisfied:
|
||||
///
|
||||
/// * The starting index must come before the ending index;
|
||||
/// * The starting index must not exceed the ending index;
|
||||
/// * Indexes must be within bounds of the original slice;
|
||||
/// * Indexes must lie on UTF-8 sequence boundaries.
|
||||
///
|
||||
@ -2518,7 +2518,7 @@ impl str {
|
||||
/// Callers of this function are responsible that these preconditions are
|
||||
/// satisfied:
|
||||
///
|
||||
/// * The starting index must come before the ending index;
|
||||
/// * The starting index must not exceed the ending index;
|
||||
/// * Indexes must be within bounds of the original slice;
|
||||
/// * Indexes must lie on UTF-8 sequence boundaries.
|
||||
///
|
||||
@ -2563,7 +2563,7 @@ impl str {
|
||||
/// Callers of this function are responsible that three preconditions are
|
||||
/// satisfied:
|
||||
///
|
||||
/// * `begin` must come before `end`.
|
||||
/// * `begin` must not exceed `end`.
|
||||
/// * `begin` and `end` must be byte positions within the string slice.
|
||||
/// * `begin` and `end` must lie on UTF-8 sequence boundaries.
|
||||
///
|
||||
@ -2612,7 +2612,7 @@ impl str {
|
||||
/// Callers of this function are responsible that three preconditions are
|
||||
/// satisfied:
|
||||
///
|
||||
/// * `begin` must come before `end`.
|
||||
/// * `begin` must not exceed `end`.
|
||||
/// * `begin` and `end` must be byte positions within the string slice.
|
||||
/// * `begin` and `end` must lie on UTF-8 sequence boundaries.
|
||||
#[stable(feature = "str_slice_mut", since = "1.5.0")]
|
||||
|
Loading…
Reference in New Issue
Block a user