aboutsummaryrefslogtreecommitdiff
path: root/graph/src/labelled/double.rs
diff options
context:
space:
mode:
Diffstat (limited to 'graph/src/labelled/double.rs')
-rw-r--r--graph/src/labelled/double.rs16
1 files changed, 4 insertions, 12 deletions
diff --git a/graph/src/labelled/double.rs b/graph/src/labelled/double.rs
index b01a13b..12d0e54 100644
--- a/graph/src/labelled/double.rs
+++ b/graph/src/labelled/double.rs
@@ -158,6 +158,7 @@ impl<T: GraphLabel> Graph for DLGraph<T> {
let mut file = std::fs::File::options()
.write(true)
.create(true)
+ .truncate(true)
.open(&filename)?;
use std::io::Write;
@@ -408,21 +409,12 @@ impl<T: GraphLabel> LabelExtGraph<T> for DLGraph<T> {
if !set.contains(&label) {
flat.push((label, to));
by_target.get_mut(&to).unwrap().insert(label);
- by_label
- .entry(label)
- .or_insert_with(Default::default)
- .insert(to);
+ by_label.entry(label).or_default().insert(to);
}
} else {
flat.push((label, to));
- by_target
- .entry(to)
- .or_insert_with(Default::default)
- .insert(label);
- by_label
- .entry(label)
- .or_insert_with(Default::default)
- .insert(to);
+ by_target.entry(to).or_default().insert(label);
+ by_label.entry(label).or_default().insert(to);
}
}