Lines Matching defs:buf
631 fn reserve_double_buffer_size<T>(buf: &mut Vec<T>, limit: usize) -> Result<()> {
634 if buf.capacity() >= limit {
638 let capacity = min(buf.capacity() * 2, limit);
639 buf.reserve(capacity);
663 let mut buf = Vec::with_capacity(512);
666 let ptr = buf.as_mut_ptr() as *mut c_char;
672 if !libc::getcwd(ptr, buf.capacity()).is_null() {
673 let len = CStr::from_ptr(buf.as_ptr() as *const c_char).to_bytes().len();
674 buf.set_len(len);
675 buf.shrink_to_fit();
676 return Ok(PathBuf::from(OsString::from_vec(buf)));
686 reserve_double_buffer_size(&mut buf, PATH_MAX as usize)?;
1071 pub fn read(fd: RawFd, buf: &mut [u8]) -> Result<usize> {
1073 libc::read(fd, buf.as_mut_ptr() as *mut c_void, buf.len() as size_t)
1082 pub fn write(fd: RawFd, buf: &[u8]) -> Result<usize> {
1084 libc::write(fd, buf.as_ptr() as *const c_void, buf.len() as size_t)
3324 let mut buf = vec![0_u8; PATH_MAX];
3325 let c_buf = buf.as_mut_ptr() as *mut libc::c_char;
3327 let ret = unsafe { libc::ttyname_r(fd, c_buf, buf.len()) };
3332 let nul = buf.iter().position(|c| *c == b'\0').unwrap();
3333 buf.truncate(nul);
3334 Ok(OsString::from_vec(buf).into())