mod seq;
pub use seq::*;
mod par_fair;
pub use par_fair::*;
mod par_low_mem;
pub use par_low_mem::*;
#[derive(Debug, Clone, Hash, PartialEq, Eq)]
pub enum EventPred {
Init {},
Visit {
node: usize,
pred: usize,
distance: usize,
},
Revisit {
node: usize,
pred: usize,
},
FrontierSize {
distance: usize,
size: usize,
},
Done {},
}
#[derive(Debug, Clone, Hash, PartialEq, Eq)]
pub struct FilterArgsPred {
pub node: usize,
pub pred: usize,
pub distance: usize,
}
impl super::Event for EventPred {
type FilterArgs = FilterArgsPred;
}
#[derive(Debug, Clone, Hash, PartialEq, Eq)]
pub enum EventNoPred {
Init {},
Visit {
node: usize,
distance: usize,
},
Revisit {
node: usize,
},
FrontierSize {
distance: usize,
size: usize,
},
Done {},
}
#[derive(Debug, Clone, Hash, PartialEq, Eq)]
pub struct FilterArgsNoPred {
pub node: usize,
pub distance: usize,
}
impl super::Event for EventNoPred {
type FilterArgs = FilterArgsNoPred;
}