Skip to main content

EvalContextPrivExt

Trait EvalContextPrivExt 

Source
trait EvalContextPrivExt<'tcx>: MiriInterpCxExt<'tcx> {
    // Provided methods
    fn read_from_fd(
        &mut self,
        fd: FileDescriptionRef<dyn FileDescription>,
        ptr: Pointer,
        len: usize,
        offset: Option<i128>,
        finish: DynMachineCallback<'tcx, Result<usize, IoError>>,
    ) -> InterpResult<'tcx> { ... }
    fn write_to_fd(
        &mut self,
        fd: FileDescriptionRef<dyn FileDescription>,
        ptr: Pointer,
        len: usize,
        offset: Option<i128>,
        finish: DynMachineCallback<'tcx, Result<usize, IoError>>,
    ) -> InterpResult<'tcx> { ... }
}

Provided Methods§

Source

fn read_from_fd( &mut self, fd: FileDescriptionRef<dyn FileDescription>, ptr: Pointer, len: usize, offset: Option<i128>, finish: DynMachineCallback<'tcx, Result<usize, IoError>>, ) -> InterpResult<'tcx>

Read len bytes from the fd file description at offset into the buffer pointed to by ptr. If offset is Some, the read occurs at the given absolute position rather than the current file position (read_at semantics rather than read). finish will be invoked when the read is done (which might be way after this function returns as the read may block).

Source

fn write_to_fd( &mut self, fd: FileDescriptionRef<dyn FileDescription>, ptr: Pointer, len: usize, offset: Option<i128>, finish: DynMachineCallback<'tcx, Result<usize, IoError>>, ) -> InterpResult<'tcx>

Write len bytes at offset from the buffer pointed to by ptr into the fd file description. If offset is Some, the write occurs at the given absolute position rather than the current file position (write_at semantics rather than write). finish will be invoked when the write is done (which might be way after this function returns as the write may block).

Implementors§

Source§

impl<'tcx> EvalContextPrivExt<'tcx> for MiriInterpCx<'tcx>