pub fn composite_type<T: ?Sized + Reencode>( reencoder: &mut T, composite_ty: CompositeType, ) -> Result<CompositeType, Error<T::Error>>