From 45bb5756df0cfc30053e8a9235780a2b63849972 Mon Sep 17 00:00:00 2001 From: onyinyang Date: Mon, 15 May 2023 12:35:26 -0400 Subject: [PATCH] Minor fixes --- crates/lox-library/src/lib.rs | 11 +++++------ crates/lox-library/src/tests.rs | 8 ++++---- 2 files changed, 9 insertions(+), 10 deletions(-) diff --git a/crates/lox-library/src/lib.rs b/crates/lox-library/src/lib.rs index a82b3da..925fac2 100644 --- a/crates/lox-library/src/lib.rs +++ b/crates/lox-library/src/lib.rs @@ -344,7 +344,7 @@ impl BridgeAuth { } while self.bridge_table.unallocated_bridges.len() >= MAX_BRIDGES_PER_BUCKET { let mut bucket = [BridgeLine::default(); MAX_BRIDGES_PER_BUCKET]; - for i in 0..MAX_BRIDGES_PER_BUCKET { + for i in 0..MAX_BRIDGES_PER_BUCKET { bucket[i] = self.bridge_table.unallocated_bridges.pop().unwrap(); } self.add_openinv_bridges(bucket, bdb); @@ -406,20 +406,19 @@ impl BridgeAuth { &mut self, bridge: &BridgeLine, available_bridge: Option<&BridgeLine>, - bdb: &mut BridgeDb, ) -> bool { let mut res: bool = false; let reachable_bridges = &self.bridge_table.reachable.clone(); if let Some(positions) = reachable_bridges.get(bridge) { - if available_bridge.is_some() { + if let Some(replacement) = available_bridge { for (bucketnum, offset) in positions.iter() { assert!(self.bridge_table.buckets[*bucketnum as usize][*offset] == *bridge); self.bridge_table.buckets[*bucketnum as usize][*offset] = - *available_bridge.unwrap(); + *replacement; // Remove the bridge from the reachable bridges and add new bridge self.bridge_table .reachable - .insert(*available_bridge.unwrap(), positions.clone()); + .insert(*replacement, positions.clone()); // Remove the bridge from the bucket self.bridge_table.reachable.remove(bridge); res = true @@ -442,7 +441,7 @@ impl BridgeAuth { // Indicate the removed bucket as a recyclable bucket self.bridge_table.recyclable.insert(spare); // Get the actual bridges from the spare bucket - let spare_bucket = self.bridge_table.buckets[spare as usize].clone(); + let spare_bucket = self.bridge_table.buckets[spare as usize]; let mut replacement: &BridgeLine = &BridgeLine::default(); // Make the first spare the replacement bridge, add the others to the set of // unallocated_bridges diff --git a/crates/lox-library/src/tests.rs b/crates/lox-library/src/tests.rs index a07fdde..8130b31 100644 --- a/crates/lox-library/src/tests.rs +++ b/crates/lox-library/src/tests.rs @@ -731,7 +731,7 @@ fn test_bridge_replace() { ); assert!( th.ba - .bridge_replace(replacement_bridge, Some(random_bridgeline), &mut th.bdb), + .bridge_replace(replacement_bridge, Some(random_bridgeline)), "Bridge was not replaced with available bridge" ); assert!( @@ -772,7 +772,7 @@ fn test_bridge_replace() { "Unallocated bridge already marked as reachable" ); assert!( - th.ba.bridge_replace(replacement_bridge, None, &mut th.bdb), + th.ba.bridge_replace(replacement_bridge, None), "Bridge was not replaced with available bridge" ); assert!( @@ -801,7 +801,7 @@ fn test_bridge_replace() { "Unallocated bridges should have a length of 0" ); assert!( - th.ba.bridge_replace(replacement_bridge, None, &mut th.bdb), + th.ba.bridge_replace(replacement_bridge, None), "Bridge was not replaced with available spare bridge" ); assert!( @@ -830,7 +830,7 @@ fn test_bridge_replace() { "Unallocated bridges should have a length of 0" ); assert!( - !th.ba.bridge_replace(replacement_bridge, None, &mut th.bdb), + !th.ba.bridge_replace(replacement_bridge, None), "Bridge was somehow marked as replaced despite no replaceable bridges" ); assert!(