dope-sys 0.22.0

Typed operating-system call contracts
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
use crate::io::reactor::{
    complete,
    submit::{Poll, Target},
};

/// Native control entries bound to the caller's exact completion tokens.
pub trait Control {
    type Target: Target;
    type Owned<T: complete::raw::Token>;
    type Poll<'a, T: complete::raw::Token>: Poll<'a, T>;

    fn nop<T: complete::raw::Token>(complete: T) -> Self::Owned<T>;
    fn cancel<T: complete::raw::Token>(target: T, complete: T) -> Self::Owned<T>;
    fn close<T: complete::raw::Token>(slot: Self::Target, complete: T) -> Self::Owned<T>;
    /// First step of a hard-linked close, suppressing its successful completion.
    fn shutdown<T: complete::raw::Token>(slot: Self::Target, complete: T) -> Self::Owned<T>;
}