diff --git a/Cargo.toml b/Cargo.toml index 3140c94..cf1efdd 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -18,6 +18,7 @@ derive_more = { version = "1.0.0", features = ["from", "error", "display", "into rkyv = { version = "0.8.9", features = ["uuid-1"] } lockfree = "0.5.1" uuid = { version = "1.11.0", features = ["v4"] } +ordered-float = "5.0.0" indexset = { version = "0.12.2", features = ["concurrent", "cdc", "multimap"] } # indexset = { path = "../indexset", version = "0.12.0", features = ["concurrent", "cdc", "multimap"] } # indexset = { git = "https://github.com/Handy-caT/indexset", branch = "multimap-range-fix", version = "0.12.0", features = ["concurrent", "cdc", "multimap"] } diff --git a/src/util/sized.rs b/src/util/sized.rs index 6e83324..a2ccab7 100644 --- a/src/util/sized.rs +++ b/src/util/sized.rs @@ -1,4 +1,5 @@ use crate::link::{Link, LINK_LENGTH}; +use ordered_float::OrderedFloat; use rkyv::util::AlignedVec; use std::{mem, sync::Arc}; use uuid::Uuid; @@ -63,6 +64,15 @@ impl SizeMeasurable for Uuid { } } +impl SizeMeasurable for OrderedFloat +where + T: SizeMeasurable, +{ + fn aligned_size(&self) -> usize { + self.0.aligned_size() + } +} + impl SizeMeasurable for [u8; 32] { fn aligned_size(&self) -> usize { mem::size_of::<[u8; 32]>()