Lines Matching refs:Dst

525 pub fn try_transmute<Src, Dst>(src: Src) -> Result<Dst, ValidityError<Src, Dst>>  in try_transmute()  argument
528 Dst: TryFromBytes, in try_transmute()
530 static_assert!(Src, Dst => mem::size_of::<Dst>() == mem::size_of::<Src>()); in try_transmute()
534 let mu_dst: mem::MaybeUninit<ReadOnly<Dst>> = in try_transmute()
545 if Dst::is_bit_valid(ptr.cast::<_, CastSized, _>()) { in try_transmute()
561 type Dst: ?Sized; typedef
564 fn try_transmute_ref(self) -> Result<&'a Self::Dst, ValidityError<&'a Self::Src, Self::Dst>> in try_transmute_ref() argument
568 Self::Dst: TryFromBytes + Immutable + KnownLayout; in try_transmute_ref()
575 impl<'a, Src, Dst> TryTransmuteRefSrc<'a> for Wrap<&'a Src, &'a Dst>
578 Dst: ?Sized,
583 impl<'a, Src, Dst> TryTransmuteRefDst<'a> for Wrap<&'a Src, &'a Dst>
586 Dst: TryFromBytes + Immutable + KnownLayout + ?Sized,
588 type Dst = Dst; typedef
594 &'a Dst, in try_transmute_ref() argument
595 ValidityError<&'a <Wrap<&'a Src, &'a Dst> as TryTransmuteRefSrc<'a>>::Src, Dst>, in try_transmute_ref() argument
601 let ptr = ptr.cast::<_, crate::layout::CastFrom<Dst>, _>(); in try_transmute_ref()
606 static_assert!(Src: ?Sized + KnownLayout, Dst: ?Sized + KnownLayout => { in try_transmute_ref()
607 Src::LAYOUT.align.get() >= Dst::LAYOUT.align.get() in try_transmute_ref()
620 type Dst: ?Sized; typedef
625 ) -> Result<&'a mut Self::Dst, ValidityError<&'a mut Self::Src, Self::Dst>> in try_transmute_mut() argument
629 Self::Dst: TryFromBytes; in try_transmute_mut()
636 impl<'a, Src, Dst> TryTransmuteMutSrc<'a> for Wrap<&'a mut Src, &'a mut Dst>
639 Dst: ?Sized,
644 impl<'a, Src, Dst> TryTransmuteMutDst<'a> for Wrap<&'a mut Src, &'a mut Dst>
647 Dst: TryFromBytes + IntoBytes + KnownLayout + ?Sized,
649 type Dst = Dst; typedef
655 &'a mut Dst, in try_transmute_mut() argument
656 ValidityError<&'a mut <Wrap<&'a mut Src, &'a mut Dst> as TryTransmuteMutSrc<'a>>::Src, Dst>, in try_transmute_mut() argument
664 let ptr = ptr.cast::<_, crate::layout::CastFrom<Dst>, _>(); in try_transmute_mut()
670 static_assert!(Src: ?Sized + KnownLayout, Dst: ?Sized + KnownLayout => { in try_transmute_mut()
671 Src::LAYOUT.align.get() >= Dst::LAYOUT.align.get() in try_transmute_mut()
694 pub struct Wrap<Src, Dst>(pub Src, pub PhantomData<Dst>);
696 impl<Src, Dst> Wrap<Src, Dst> {
703 impl<'a, Src, Dst> Wrap<&'a Src, &'a Dst>
706 Dst: ?Sized,
709 pub const fn transmute_ref_inference_helper(self) -> &'a Dst { in transmute_ref_inference_helper() argument
714 impl<'a, Src, Dst> Wrap<&'a Src, &'a Dst> {
727 pub const unsafe fn transmute_ref(self) -> &'a Dst { in transmute_ref() argument
728 static_assert!(Src, Dst => mem::size_of::<Dst>() == mem::size_of::<Src>()); in transmute_ref()
729 static_assert!(Src, Dst => mem::align_of::<Dst>() <= mem::align_of::<Src>()); in transmute_ref()
732 let dst = src.cast::<Dst>(); in transmute_ref()
754 pub fn try_transmute_ref(self) -> Result<&'a Dst, ValidityError<&'a Src, Dst>> in try_transmute_ref() argument
757 Dst: TryFromBytes + Immutable, in try_transmute_ref()
760 static_assert!(Dst => mem::align_of::<Dst>() == mem::align_of::<Wrapping<Dst>>()); in try_transmute_ref()
767 <Wrap<&'a Wrapping<Src>, &'a Wrapping<Dst>> as TryTransmuteRefDst<'a>>::try_transmute_ref( in try_transmute_ref()
789 impl<'a, Src, Dst> Wrap<&'a mut Src, &'a mut Dst>
792 Dst: ?Sized,
795 pub fn transmute_mut_inference_helper(self) -> &'a mut Dst { in transmute_mut_inference_helper() argument
800 impl<'a, Src, Dst> Wrap<&'a mut Src, &'a mut Dst> {
811 pub fn transmute_mut(self) -> &'a mut Dst in transmute_mut()
814 Dst: FromBytes + IntoBytes, in transmute_mut()
816 static_assert!(Src, Dst => mem::size_of::<Dst>() == mem::size_of::<Src>()); in transmute_mut()
817 static_assert!(Src, Dst => mem::align_of::<Dst>() <= mem::align_of::<Src>()); in transmute_mut()
820 let dst = src.cast::<Dst>(); in transmute_mut()
834 pub fn try_transmute_mut(self) -> Result<&'a mut Dst, ValidityError<&'a mut Src, Dst>> in try_transmute_mut() argument
837 Dst: TryFromBytes + IntoBytes, in try_transmute_mut()
840 static_assert!(Dst => mem::align_of::<Dst>() == mem::align_of::<Wrapping<Dst>>()); in try_transmute_mut()
847 <Wrap<&'a mut Wrapping<Src>, &'a mut Wrapping<Dst>> as TryTransmuteMutDst<'a>> in try_transmute_mut()
863 type Dst: ?Sized; typedef
866 fn transmute_ref(self) -> &'a Self::Dst; in transmute_ref() argument
869 impl<'a, Src: ?Sized, Dst: ?Sized> TransmuteRefDst<'a> for Wrap<&'a Src, &'a Dst>
872 Dst: KnownLayout<PointerMetadata = usize> + FromBytes + Immutable,
874 type Dst = Dst; typedef
877 fn transmute_ref(self) -> &'a Dst { in transmute_ref() argument
880 ….transmute_with::<Dst, Initialized, crate::layout::CastFrom<Dst>, (crate::pointer::BecauseMutation… in transmute_ref()
883 static_assert!(Src: ?Sized + KnownLayout, Dst: ?Sized + KnownLayout => { in transmute_ref()
884 Src::LAYOUT.align.get() >= Dst::LAYOUT.align.get() in transmute_ref()
897 type Dst: ?Sized; typedef
899 fn transmute_mut(self) -> &'a mut Self::Dst; in transmute_mut() argument
902 impl<'a, Src: ?Sized, Dst: ?Sized> TransmuteMutDst<'a> for Wrap<&'a mut Src, &'a mut Dst>
905 Dst: KnownLayout<PointerMetadata = usize> + FromBytes + IntoBytes,
907 type Dst = Dst; typedef
910 fn transmute_mut(self) -> &'a mut Dst { in transmute_mut() argument
913 .transmute_with::<Dst, Initialized, crate::layout::CastFrom<Dst>, _>() in transmute_mut()
916 static_assert!(Src: ?Sized + KnownLayout, Dst: ?Sized + KnownLayout => { in transmute_mut()
917 Src::LAYOUT.align.get() >= Dst::LAYOUT.align.get() in transmute_mut()