1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
// This file is part of rust-extra. It is subject to the license terms in the COPYRIGHT file found in the top-level directory of this distribution and at https://raw.githubusercontent.com/lemonrock/rust-extra/master/COPYRIGHT. No part of rust-extra, including this file, may be copied, modified, propagated, or distributed except according to the terms contained in the COPYRIGHT file. // Copyright © 2016 The developers of rust-extra. See the COPYRIGHT file in the top-level directory of this distribution and at https://raw.githubusercontent.com/lemonrock/rust-extra/master/COPYRIGHT. #[inline(always)] pub fn cStrFromFixedLengthString<'a>(ptr: *const c_char, maximumLength: usize) -> &'a CStr { unsafe { let len = strnlen(ptr, maximumLength); if unlikely(len == maximumLength) { transmute(from_raw_parts(ptr, maximumLength)) } else { transmute(from_raw_parts(ptr, len + 1)) } } }