fix some warnings

This commit is contained in:
Evan Almloff committed 2022-11-26 11:51:52 -06:00
1 parent 51f643c5dc
commit bb3be32b19
1 file changed
+10 -27
+10 -27
View File
@@ -1,9 +1,8 @@
use crossbeam_deque::{Injector, Stealer, Worker};
use rustc_hash::{FxHashMap, FxHashSet, FxHasher};
use std::collections::{BTreeMap, HashMap};
use std::collections::BTreeMap;
use std::hash::BuildHasherDefault;
use std::ops::{BitAnd, BitAndAssign, BitOr, BitOrAssign};
use std::os::raw;
use std::sync::atomic::{AtomicU64, Ordering};
use std::sync::Arc;
@@ -61,12 +60,12 @@ fn dirty_nodes() {
type FxDashMap<K, V> = dashmap::DashMap<K, V, BuildHasherDefault<FxHasher>>;
#[derive(Default)]
struct DirtyNodeStates {
pub struct DirtyNodeStates {
dirty: FxDashMap<NodeId, Vec<AtomicU64>>,
}
impl DirtyNodeStates {
fn new(starting_nodes: FxHashMap<NodeId, FxHashSet<PassId>>) -> Self {
pub fn new(starting_nodes: FxHashMap<NodeId, FxHashSet<PassId>>) -> Self {
let this = Self::default();
for (node, nodes) in starting_nodes {
for pass_id in nodes {
@@ -76,7 +75,7 @@ impl DirtyNodeStates {
this
}
fn insert(&self, pass_id: PassId, node_id: NodeId) {
pub fn insert(&self, pass_id: PassId, node_id: NodeId) {
let pass_id = pass_id.0;
let index = pass_id / 64;
let bit = pass_id % 64;
@@ -98,22 +97,6 @@ impl DirtyNodeStates {
}
}
fn get(&self, pass_id: PassId, node_id: NodeId) -> bool {
let pass_id = pass_id.0;
let index = pass_id / 64;
let bit = pass_id % 64;
let encoded = 1 << bit;
if let Some(dirty) = self.dirty.get(&node_id) {
if let Some(atomic) = dirty.get(index as usize) {
atomic.load(Ordering::SeqCst) & encoded != 0
} else {
false
}
} else {
false
}
}
fn all_dirty<T>(&self, pass_id: PassId, dirty_nodes: &mut DirtyNodes, tree: &impl TreeView<T>) {
let pass_id = pass_id.0;
let index = pass_id / 64;
@@ -311,7 +294,7 @@ struct RawPointer<T>(*mut T);
unsafe impl<T> Send for RawPointer<T> {}
unsafe impl<T> Sync for RawPointer<T> {}
fn resolve_passes<T, Tr: TreeView<T>>(
pub fn resolve_passes<T, Tr: TreeView<T>>(
tree: &mut Tr,
dirty_nodes: DirtyNodeStates,
mut passes: Vec<AnyPass<T>>,
@@ -400,7 +383,7 @@ fn node_pass() {
}
let passes = vec![AnyPass::Node(Box::new(AddPass))];
let mut dirty_nodes: DirtyNodeStates = DirtyNodeStates::default();
let dirty_nodes: DirtyNodeStates = DirtyNodeStates::default();
dirty_nodes.insert(PassId(0), tree.root());
resolve_passes(&mut tree, dirty_nodes, passes);
@@ -479,7 +462,7 @@ fn dependant_node_pass() {
AnyPass::Node(Box::new(AddPass)),
AnyPass::Node(Box::new(SubtractPass)),
];
let mut dirty_nodes: DirtyNodeStates = DirtyNodeStates::default();
let dirty_nodes: DirtyNodeStates = DirtyNodeStates::default();
dirty_nodes.insert(PassId(1), tree.root());
resolve_passes(&mut tree, dirty_nodes, passes);
@@ -632,7 +615,7 @@ fn dependant_down_pass() {
AnyPass::Downward(Box::new(AddPass)),
AnyPass::Downward(Box::new(SubtractPass)),
];
let mut dirty_nodes: DirtyNodeStates = DirtyNodeStates::default();
let dirty_nodes: DirtyNodeStates = DirtyNodeStates::default();
dirty_nodes.insert(PassId(1), tree.root());
resolve_passes(&mut tree, dirty_nodes, passes);
@@ -720,7 +703,7 @@ fn up_pass() {
}
let passes = vec![AnyPass::Upward(Box::new(AddPass))];
let mut dirty_nodes: DirtyNodeStates = DirtyNodeStates::default();
let dirty_nodes: DirtyNodeStates = DirtyNodeStates::default();
dirty_nodes.insert(PassId(0), grandchild1);
dirty_nodes.insert(PassId(0), grandchild2);
resolve_passes(&mut tree, dirty_nodes, passes);