Lines Matching refs:Dst
761 pub(crate) struct CastFrom<Dst: ?Sized> {
763 _marker: PhantomData<Dst>,
768 unsafe impl<Src, Dst> crate::pointer::cast::Cast<Src, Dst> for CastFrom<Dst>
771 Dst: KnownLayout + ?Sized,
777 unsafe impl<Src, Dst> crate::pointer::cast::CastExact<Src, Dst> for CastFrom<Dst>
780 Dst: KnownLayout + ?Sized,
788 unsafe impl<Src, Dst> crate::pointer::cast::Project<Src, Dst> for CastFrom<Dst>
791 Dst: KnownLayout + ?Sized,
799 fn project(src: PtrInner<'_, Src>) -> *mut Dst { in project() argument
809 struct CastParams<Src: ?Sized, Dst: ?Sized> { in project()
812 _dst: PhantomData<Dst>, in project()
905 impl<Src: ?Sized, Dst: ?Sized> Copy for CastParams<Src, Dst> {} in project()
906 impl<Src: ?Sized, Dst: ?Sized> Clone for CastParams<Src, Dst> { in project()
912 impl<Src: ?Sized, Dst: ?Sized> CastParams<Src, Dst> { in project()
916 ) -> Option<CastParams<Src, Dst>> { in project() argument
1021 impl<Src: KnownLayout + ?Sized, Dst: KnownLayout + ?Sized> CastParams<Src, Dst> { in project()
1033 ) -> Dst::PointerMetadata { in project()
1061 Dst::PointerMetadata::from_elem_count(dst_meta) in project()
1069 impl<Src, Dst> Params<Src> for Dst in project() implementation
1072 Dst: KnownLayout + ?Sized, in project()
1074 const CAST_PARAMS: CastParams<Src, Dst> = in project()
1075 match CastParams::try_compute(&Src::LAYOUT, &Dst::LAYOUT) { in project()
1084 let params = <Dst as Params<Src>>::CAST_PARAMS; in project()
1093 <Dst as KnownLayout>::raw_from_ptr_len(src.as_non_null().cast(), dst_meta).as_ptr() in project()