Skip to content

Commit 6777bad

Browse files
committed
std: chain the slices for VecDeque::as_slice doctest and add explanation
Signed-off-by: xizheyin <[email protected]>
1 parent a69bc17 commit 6777bad

File tree

1 file changed

+7
-2
lines changed
  • library/alloc/src/collections/vec_deque

1 file changed

+7
-2
lines changed

library/alloc/src/collections/vec_deque/mod.rs

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1313,6 +1313,9 @@ impl<T, A: Allocator> VecDeque<T, A> {
13131313
/// If [`make_contiguous`] was previously called, all elements of the
13141314
/// deque will be in the first slice and the second slice will be empty.
13151315
///
1316+
/// Note that the particular split point between the slices is not guaranteed
1317+
/// and may change based on internal implementation details.
1318+
///
13161319
/// [`make_contiguous`]: VecDeque::make_contiguous
13171320
///
13181321
/// # Examples
@@ -1326,12 +1329,14 @@ impl<T, A: Allocator> VecDeque<T, A> {
13261329
/// deque.push_back(1);
13271330
/// deque.push_back(2);
13281331
///
1329-
/// assert_eq!(deque.as_slices(), (&[0, 1, 2][..], &[][..]));
1332+
/// let slices = deque.as_slices();
1333+
/// assert!(slices.0.iter().chain(slices.1.iter()).eq([0, 1, 2].iter()));
13301334
///
13311335
/// deque.push_front(10);
13321336
/// deque.push_front(9);
13331337
///
1334-
/// assert_eq!(deque.as_slices(), (&[9, 10][..], &[0, 1, 2][..]));
1338+
/// let slices = deque.as_slices();
1339+
/// assert!(slices.0.iter().chain(slices.1.iter()).eq([9, 10, 0, 1, 2].iter()));
13351340
/// ```
13361341
#[inline]
13371342
#[stable(feature = "deque_extras_15", since = "1.5.0")]

0 commit comments

Comments
 (0)