diff options
Diffstat (limited to 'vendor/bytemuck/src/pod_in_option.rs')
-rw-r--r-- | vendor/bytemuck/src/pod_in_option.rs | 27 |
1 files changed, 0 insertions, 27 deletions
diff --git a/vendor/bytemuck/src/pod_in_option.rs b/vendor/bytemuck/src/pod_in_option.rs deleted file mode 100644 index 3327e99..0000000 --- a/vendor/bytemuck/src/pod_in_option.rs +++ /dev/null @@ -1,27 +0,0 @@ -use super::*; - -// Note(Lokathor): This is the neat part!! -unsafe impl<T: PodInOption> Pod for Option<T> {} - -/// Trait for types which are [Pod](Pod) when wrapped in -/// [Option](core::option::Option). -/// -/// ## Safety -/// -/// * `Option<T>` must uphold the same invariants as [Pod](Pod). -/// * **Reminder:** pointers are **not** pod! **Do not** mix this trait with a -/// newtype over [NonNull](core::ptr::NonNull). -pub unsafe trait PodInOption: ZeroableInOption + Copy + 'static {} - -unsafe impl PodInOption for NonZeroI8 {} -unsafe impl PodInOption for NonZeroI16 {} -unsafe impl PodInOption for NonZeroI32 {} -unsafe impl PodInOption for NonZeroI64 {} -unsafe impl PodInOption for NonZeroI128 {} -unsafe impl PodInOption for NonZeroIsize {} -unsafe impl PodInOption for NonZeroU8 {} -unsafe impl PodInOption for NonZeroU16 {} -unsafe impl PodInOption for NonZeroU32 {} -unsafe impl PodInOption for NonZeroU64 {} -unsafe impl PodInOption for NonZeroU128 {} -unsafe impl PodInOption for NonZeroUsize {} |