miri::shims::unix::fd

Trait UnixFileDescription

Source
pub trait UnixFileDescription: FileDescription {
    // Provided methods
    fn pread<'tcx>(
        &self,
        _communicate_allowed: bool,
        _offset: u64,
        _ptr: Pointer,
        _len: usize,
        _dest: &MPlaceTy<'tcx>,
        _ecx: &mut MiriInterpCx<'tcx>,
    ) -> InterpResult<'tcx> { ... }
    fn pwrite<'tcx>(
        &self,
        _communicate_allowed: bool,
        _ptr: Pointer,
        _len: usize,
        _offset: u64,
        _dest: &MPlaceTy<'tcx>,
        _ecx: &mut MiriInterpCx<'tcx>,
    ) -> InterpResult<'tcx> { ... }
    fn flock<'tcx>(
        &self,
        _communicate_allowed: bool,
        _op: FlockOp,
    ) -> InterpResult<'tcx, Result<()>> { ... }
    fn get_epoll_ready_events<'tcx>(
        &self,
    ) -> InterpResult<'tcx, EpollReadyEvents> { ... }
}
Expand description

Represents unix-specific file descriptions.

Provided Methods§

Source

fn pread<'tcx>( &self, _communicate_allowed: bool, _offset: u64, _ptr: Pointer, _len: usize, _dest: &MPlaceTy<'tcx>, _ecx: &mut MiriInterpCx<'tcx>, ) -> InterpResult<'tcx>

Reads as much as possible into the given buffer ptr from a given offset. len indicates how many bytes we should try to read. dest is where the return value should be stored: number of bytes read, or -1 in case of error.

Source

fn pwrite<'tcx>( &self, _communicate_allowed: bool, _ptr: Pointer, _len: usize, _offset: u64, _dest: &MPlaceTy<'tcx>, _ecx: &mut MiriInterpCx<'tcx>, ) -> InterpResult<'tcx>

Writes as much as possible from the given buffer ptr starting at a given offset. ptr is the pointer to the user supplied read buffer. len indicates how many bytes we should try to write. dest is where the return value should be stored: number of bytes written, or -1 in case of error.

Source

fn flock<'tcx>( &self, _communicate_allowed: bool, _op: FlockOp, ) -> InterpResult<'tcx, Result<()>>

Source

fn get_epoll_ready_events<'tcx>(&self) -> InterpResult<'tcx, EpollReadyEvents>

Check the readiness of file description.

Implementors§