pub trait DepKind: Copy + Debug + Eq + Hash + Send + Encodable<FileEncoder> + 'static {
    const NULL: Self;
    const RED: Self;

    // Required methods
    fn debug_node(node: &DepNode<Self>, f: &mut Formatter<'_>) -> Result;
    fn with_deps<OP, R>(deps: TaskDepsRef<'_, Self>, op: OP) -> R
       where OP: FnOnce() -> R;
    fn read_deps<OP>(op: OP)
       where OP: for<'a> FnOnce(TaskDepsRef<'a, Self>);
Expand description

Describe the different families of dependency nodes.

Required Associated Constants§


const NULL: Self

DepKind to use when incr. comp. is turned off.


const RED: Self

DepKind to use to create the initial forever-red node.

Required Methods§


fn debug_node(node: &DepNode<Self>, f: &mut Formatter<'_>) -> Result

Implementation of std::fmt::Debug for DepNode.


fn with_deps<OP, R>(deps: TaskDepsRef<'_, Self>, op: OP) -> Rwhere OP: FnOnce() -> R,

Execute the operation with provided dependencies.


fn read_deps<OP>(op: OP)where OP: for<'a> FnOnce(TaskDepsRef<'a, Self>),

Access dependencies from current implicit context.