dope-core 0.15.1

The manifold runtime
Documentation
use crate::{
    backend::bound,
    driver::{self, flight},
};

pub(crate) trait Queue {
    fn submit<'owner, 'd: 'owner>(
        &mut self,
        submission: bound::Bound<'owner, 'd>,
    ) -> Result<flight::Flight<'d>, driver::SubmitError>;
    fn cancel(&mut self, flight: &mut flight::Flight<'_>) -> Result<(), driver::SubmitError>;
}

pub(crate) trait Source {
    type Queue<'a>: Queue
    where
        Self: 'a;

    fn queue(&mut self) -> Self::Queue<'_>;
}