Function SDL_copyp
pub unsafe fn SDL_copyp<Dst, Src>(dst: *mut Dst, src: *const Src) -> *mut Dst
dep_sdl3
only.Expand description
A macro to copy memory between objects, with basic type checking.
SDL_memcpy
and SDL_memmove
do not care where you copy memory to and from,
which can lead to bugs. This macro aims to avoid most of those bugs by
making sure that the source and destination are both pointers to objects
that are the same size. It does not check that the objects are the same
type, just that the copy will not overflow either object.
The size check happens at compile time, and the compiler will throw an error if the objects are different sizes.
Generally this is intended to copy a single object, not an array.
This macro looks like it double-evaluates its parameters, but the extras
them are in sizeof
sections, which generate no code nor side-effects.
§Parameters
dst
: a pointer to the destination object. Must not be NULL.src
: a pointer to the source object. Must not be NULL.
§Thread safety
It is safe to call this function from any thread.
§Availability
This function is available since SDL 3.2.0.
§Safety
It must be valid to write the memory pointed to by src
to the memory pointed to by dst
,
and the memory pointed to by src
and dst
must not overlap