| /linux/rust/zerocopy/src/ |
| H A D | error.rs | 164 impl<Src, Dst: ?Sized + Unaligned, S, V> From<ConvertError<AlignmentError<Src, Dst>, S, V>> 200 fn from(err: ConvertError<AlignmentError<Src, Dst>, S, V>) -> ConvertError<Infallible, S, V> { in from() argument 250 pub struct AlignmentError<Src, Dst: ?Sized> { 252 src: Src, 260 impl<Src, Dst: ?Sized> AlignmentError<Src, Dst> { 265 pub(crate) unsafe fn new_unchecked(src: Src) -> Self { in new_unchecked() 273 pub fn into_src(self) -> Src { in into_src() argument 305 pub fn map_src<NewSrc>(self, f: impl FnOnce(Src) -> NewSrc) -> AlignmentError<NewSrc, Dst> { in map_src() 318 Src: Deref, in display_verbose_extras() 326 f.write_str(core::any::type_name::<Src>())?; in display_verbose_extras() [all …]
|
| H A D | layout.rs | 768 unsafe impl<Src, Dst> crate::pointer::cast::Cast<Src, Dst> for CastFrom<Dst> 770 Src: KnownLayout + ?Sized, 777 unsafe impl<Src, Dst> crate::pointer::cast::CastExact<Src, Dst> for CastFrom<Dst> 779 Src: KnownLayout + ?Sized, 788 unsafe impl<Src, Dst> crate::pointer::cast::Project<Src, Dst> for CastFrom<Dst> 790 Src: KnownLayout + ?Sized, 799 fn project(src: PtrInner<'_, Src>) -> *mut Dst { in project() 809 struct CastParams<Src: ?Sized, Dst: ?Sized> { in project() 811 _src: PhantomData<Src>, in project() 905 impl<Src: ?Sized, Dst: ?Sized> Copy for CastParams<Src, Dst> {} in project() [all …]
|
| H A D | macros.rs | 84 fn transmute<Src, Dst>(src: Src) -> Dst 86 Src: $crate::IntoBytes, 107 union Transmute<Src, Dst> { 108 src: ManuallyDrop<Src>, 168 fn transmute<Src, Dst>(src: Src) -> Dst 170 Src: $crate::IntoBytes,
|
| /linux/rust/zerocopy/src/pointer/ |
| H A D | transmute.rs | 115 Src: ?Sized, 119 C: CastExact<Src, Self>, 152 unsafe impl<Src, Dst, SV, DV, A, C, R> 153 TryTransmuteFromPtr<Src, A, SV, DV, C, (BecauseMutationCompatible, R)> for Dst 158 Src: TransmuteFrom<Dst, DV, SV> + ?Sized, 159 Dst: MutationCompatible<Src, A, SV, DV, R> + ?Sized, 160 C: CastExact<Src, Dst>, 171 unsafe impl<Src, Dst, SV, DV, C> TryTransmuteFromPtr<Src, Shared, SV, DV, C, BecauseImmutable> 176 Src: Immutable + ?Sized, 178 C: CastExact<Src, Dst>, [all …]
|
| H A D | mod.rs | 60 pub unsafe trait Project<Src: ?Sized, Dst: ?Sized> { 73 fn project(src: PtrInner<'_, Src>) -> *mut Dst; in project() 83 pub unsafe trait Cast<Src: ?Sized, Dst: ?Sized>: Project<Src, Dst> {} 90 pub unsafe trait CastExact<Src: ?Sized, Dst: ?Sized>: Cast<Src, Dst> {} 128 unsafe impl<Src, Dst> Project<Src, Dst> for CastSized { 130 fn project(src: PtrInner<'_, Src>) -> *mut Dst { in project() 131 static_assert!(Src, Dst => mem::size_of::<Src>() >= mem::size_of::<Dst>()); in project() 137 unsafe impl<Src, Dst> Cast<Src, Dst> for CastSized {} 155 unsafe impl<Src, Dst> Project<Src, Dst> for CastSizedExact { 157 fn project(src: PtrInner<'_, Src>) -> *mut Dst { in project() [all …]
|
| /linux/rust/zerocopy/src/util/ |
| H A D | macro_util.rs | 525 pub fn try_transmute<Src, Dst>(src: Src) -> Result<Dst, ValidityError<Src, Dst>> in try_transmute() argument 527 Src: IntoBytes, in try_transmute() 530 static_assert!(Src, Dst => mem::size_of::<Dst>() == mem::size_of::<Src>()); in try_transmute() 552 let mu_src: mem::MaybeUninit<Src> = unsafe { crate::util::transmute_unchecked(mu_dst) }; in try_transmute() 564 fn try_transmute_ref(self) -> Result<&'a Self::Dst, ValidityError<&'a Self::Src, Self::Dst>> in try_transmute_ref() argument 567 Self::Src: IntoBytes + Immutable + KnownLayout, in try_transmute_ref() 572 type Src: ?Sized; typedef 575 impl<'a, Src, Dst> TryTransmuteRefSrc<'a> for Wrap<&'a Src, &'a Dst> 577 Src: ?Sized, 580 type Src = Src; typedef [all …]
|
| H A D | mod.rs | 305 pub(crate) const unsafe fn transmute_unchecked<Src, Dst>(src: Src) -> Dst { in transmute_unchecked() argument 306 static_assert!(Src, Dst => core::mem::size_of::<Src>() == core::mem::size_of::<Dst>()); in transmute_unchecked() 309 union Transmute<Src, Dst> { in transmute_unchecked() 310 src: ManuallyDrop<Src>, in transmute_unchecked() 339 pub(crate) unsafe fn transmute_ref<Src, Dst, R>(src: &Src) -> &Dst in transmute_ref() argument 341 Src: ?Sized, in transmute_ref() 342 Dst: SizeEq<Src> in transmute_ref() 343 + TransmuteFromPtr<Src, Shared, Valid, Valid, <Dst as SizeEq<Src>>::CastFrom, R> in transmute_ref() argument 356 pub(crate) unsafe fn transmute_mut<Src, Dst, R>(src: &mut Src) -> &mut Dst in transmute_mut() argument 358 Src: ?Sized, in transmute_mut() [all …]
|