Function rfc2580::into_raw_parts[][src]

pub fn into_raw_parts<T: ?Sized + Pointee>(
    ptr: *mut T
) -> (<T as Pointee>::MetaData, *mut u8)

Splits any pointer into its meta-data and data-pointer parts.

For the NonNull equivalent, see into_non_null_parts.

Examples

use rfc2580::into_raw_parts;

let array = [1; 4];
let slice = &array[..];
let (meta, data) = into_raw_parts(slice as *const [i32] as *mut [i32]);

assert_eq!(slice.as_ptr() as *mut u8, data);