Skip to content

Commit fc0b51b

Browse files
committed
Implement bytemuck::NoUninit for StdThreadId
1 parent 29e1b4e commit fc0b51b

1 file changed

Lines changed: 8 additions & 0 deletions

File tree

‎src/std.rs‎

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,14 @@ unsafe impl crate::IThreadId for StdThreadId {
5555
#[cfg_attr(feature = "nightly-docs", doc(cfg(feature = "bytemuck")))]
5656
// SAFETY: We are #[repr(transparent)]
5757
unsafe impl bytemuck::TransparentWrapper<ThreadId> for StdThreadId {}
58+
59+
#[cfg(feature = "bytemuck")]
60+
#[cfg_attr(feature = "nightly-docs", doc(cfg(feature = "bytemuck")))]
61+
// SAFETY: We trust that std::thread::ThreadId just wraps an integer
62+
// Technically this isn't guaranteed by the API,
63+
// but there is no other reasonable implementation.
64+
unsafe impl bytemuck::NoUninit for StdThreadId {}
65+
5866
// SAFETY: stdlib guarantees that threadid is unique
5967
unsafe impl crate::IThreadId for ThreadId {
6068
#[inline]

0 commit comments

Comments
 (0)