diff options
Diffstat (limited to 'oryxc/src/depmap.rs')
| -rw-r--r-- | oryxc/src/depmap.rs | 31 |
1 files changed, 0 insertions, 31 deletions
diff --git a/oryxc/src/depmap.rs b/oryxc/src/depmap.rs deleted file mode 100644 index 60e358e..0000000 --- a/oryxc/src/depmap.rs +++ /dev/null @@ -1,31 +0,0 @@ -use boxcar; -use dashmap::DashMap; - -use crate::compiler::Job; -use crate::prelude::*; - -pub struct DepMap(DashMap<Dependency, boxcar::Vec<Job>>); - -#[derive(Eq, Hash, PartialEq)] -pub enum Dependency { - Symbol(SymbolId), -} - -impl DepMap { - pub fn with_capacity(n: usize) -> Self { - return Self(DashMap::with_capacity(n)); - } - - pub fn add(&self, d: Dependency, j: Job) { - self.0 - .entry(d) - .and_modify(|v| { - v.push(j.clone()); - }) - .or_insert_with(|| boxcar::vec![j]); - } - - pub fn pop(&self, d: Dependency) -> Option<boxcar::Vec<Job>> { - return self.0.remove(&d).map(|(_, v)| v); - } -} |