Skip to content

Commit c23f5d6

Browse files
committed
Add missing Debug derive to vec::IntoIter
1 parent 6b17767 commit c23f5d6

File tree

2 files changed

+26
-0
lines changed

2 files changed

+26
-0
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](http://semver.org/).
99

1010
### Changed
1111

12+
- Add missing `Debug` derive to `vec::IntoIter`.
1213
- `bytes::BufMut` is now implemented on `VecInner`.
1314
- Removed generic from `history_buf::OldestOrdered`.
1415
- Made `LenType` opt-in.

src/vec/mod.rs

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1498,6 +1498,31 @@ where
14981498
}
14991499
}
15001500

1501+
impl<T, LenT: LenType, const N: usize> core::fmt::Debug for IntoIter<T, N, LenT>
1502+
where
1503+
T: core::fmt::Debug,
1504+
{
1505+
fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
1506+
let s = if self.next < self.vec.len {
1507+
unsafe {
1508+
slice::from_raw_parts(
1509+
self.vec
1510+
.buffer
1511+
.buffer
1512+
.as_ptr()
1513+
.cast::<T>()
1514+
.add(self.next.into_usize()),
1515+
(self.vec.len - self.next).into_usize(),
1516+
)
1517+
}
1518+
} else {
1519+
&[]
1520+
};
1521+
1522+
write!(f, "{:?}", s)
1523+
}
1524+
}
1525+
15011526
impl<T, LenT: LenType, const N: usize> Drop for IntoIter<T, N, LenT> {
15021527
fn drop(&mut self) {
15031528
unsafe {

0 commit comments

Comments
 (0)