The use of module-level functions instead of associated functions on `<*const T>` or `<*mut T>` follows the precedent of `ptr::slice_from_raw_parts` and `ptr::slice_from_raw_parts_mut`.
The use of module-level functions instead of associated functions on `<*const T>` or `<*mut T>` follows the precedent of `ptr::slice_from_raw_parts` and `ptr::slice_from_raw_parts_mut`.