pub fn try_ptr_as_slice<T>( ptr: *const T, length: u32, argument_name: &str, ) -> Result<&[T], CError>