pub struct FdTable {
pub fds: BTreeMap<i32, FileDescriptionRef>,
next_file_description_id: FdId,
}
Expand description
The file descriptor table
Fields§
§fds: BTreeMap<i32, FileDescriptionRef>
§next_file_description_id: FdId
Unique identifier for file description, used to differentiate between various file description.
Implementations§
Source§impl FdTable
impl FdTable
fn new() -> Self
pub(crate) fn init(mute_stdout_stderr: bool) -> FdTable
pub fn new_ref(&mut self, fd: impl FileDescription) -> FileDescriptionRef
Sourcepub fn insert_new(&mut self, fd: impl FileDescription) -> i32
pub fn insert_new(&mut self, fd: impl FileDescription) -> i32
Insert a new file description to the FdTable.
pub fn insert(&mut self, fd_ref: FileDescriptionRef) -> i32
Sourcefn insert_with_min_num(
&mut self,
file_handle: FileDescriptionRef,
min_fd_num: i32,
) -> i32
fn insert_with_min_num( &mut self, file_handle: FileDescriptionRef, min_fd_num: i32, ) -> i32
Insert a file description, giving it a file descriptor that is at least min_fd_num
.
pub fn get(&self, fd_num: i32) -> Option<FileDescriptionRef>
pub fn remove(&mut self, fd_num: i32) -> Option<FileDescriptionRef>
pub fn is_fd_num(&self, fd_num: i32) -> bool
Trait Implementations§
Source§impl VisitProvenance for FdTable
impl VisitProvenance for FdTable
fn visit_provenance(&self, _visit: &mut VisitWith<'_>)
Auto Trait Implementations§
impl Freeze for FdTable
impl !RefUnwindSafe for FdTable
impl !Send for FdTable
impl !Sync for FdTable
impl Unpin for FdTable
impl !UnwindSafe for FdTable
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 32 bytes