Skip to main content

EvalContextPrivExt

Trait EvalContextPrivExt 

Source
pub trait EvalContextPrivExt<'tcx>: MiriInterpCxExt<'tcx> {
    // Provided method
    fn update_readiness(
        &mut self,
        watcher: &Rc<ReadinessWatcher>,
        active: Readiness,
        force_edge: bool,
        for_each_interest: impl FnOnce(&mut dyn FnMut((FdId, i32), &mut ReadinessInterest) -> InterpResult<'tcx>) -> InterpResult<'tcx>,
    ) -> InterpResult<'tcx> { ... }
}

Provided Methods§

Source

fn update_readiness( &mut self, watcher: &Rc<ReadinessWatcher>, active: Readiness, force_edge: bool, for_each_interest: impl FnOnce(&mut dyn FnMut((FdId, i32), &mut ReadinessInterest) -> InterpResult<'tcx>) -> InterpResult<'tcx>, ) -> InterpResult<'tcx>

Call this when the interests denoted by for_each_interest have their active readiness changed to active. The list is provided indirectly via the for_each_interest closure, which will call its argument closure for each relevant interest.

Any RefCells should be released by the time for_each_interest returns since we will then be waking up threads which might require access to those RefCells.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

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