Skip to content

Commit 81ca5ba

Browse files
committed
Make impls of EmpiricalDistribution generic over CAP
These should always have been generic over `CAP`, it was just an oversight that they were only implemented for the default `CAP`.
1 parent d7a72f7 commit 81ca5ba

1 file changed

Lines changed: 10 additions & 10 deletions

File tree

src/quant/mod.rs

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -580,7 +580,7 @@ pub struct EmpiricalDistribution<V = F32, C = u32, const CAP: usize = 64>(
580580
AugmentedBTree<V, CountWrapper<C>, CAP>,
581581
);
582582

583-
impl<V, C> EmpiricalDistribution<V, C>
583+
impl<V, C, const CAP: usize> EmpiricalDistribution<V, C, CAP>
584584
where
585585
V: Copy + Ord,
586586
C: Copy + Ord + num_traits::Num,
@@ -736,7 +736,7 @@ where
736736
}
737737
}
738738

739-
impl<V, C> FromPoints<V, C> for EmpiricalDistribution<V, C>
739+
impl<V, C, const CAP: usize> FromPoints<V, C> for EmpiricalDistribution<V, C, CAP>
740740
where
741741
Self: Default,
742742
V: Copy + Ord,
@@ -769,7 +769,7 @@ where
769769
}
770770
}
771771

772-
impl<V, C> ToPointsAndCounts<V, C> for EmpiricalDistribution<V, C>
772+
impl<V, C, const CAP: usize> ToPointsAndCounts<V, C> for EmpiricalDistribution<V, C, CAP>
773773
where
774774
V: Copy + Ord,
775775
C: Copy + Ord + num_traits::Num,
@@ -779,7 +779,7 @@ where
779779
}
780780
}
781781

782-
impl<V, C> UnnormalizedDistribution for EmpiricalDistribution<V, C>
782+
impl<V, C, const CAP: usize> UnnormalizedDistribution for EmpiricalDistribution<V, C, CAP>
783783
where
784784
V: Copy + Ord,
785785
C: Copy + Ord + num_traits::Num + 'static,
@@ -798,7 +798,7 @@ where
798798
}
799799
}
800800

801-
impl<V, C> UnnormalizedInverse for EmpiricalDistribution<V, C>
801+
impl<V, C, const CAP: usize> UnnormalizedInverse for EmpiricalDistribution<V, C, CAP>
802802
where
803803
V: Copy + Ord,
804804
C: Copy + Ord + num_traits::Num + 'static,
@@ -810,21 +810,21 @@ where
810810
}
811811
}
812812

813-
impl<V: Display, C: Display + Debug> Debug for EmpiricalDistribution<V, C> {
813+
impl<V: Display, C: Display + Debug, const CAP: usize> Debug for EmpiricalDistribution<V, C, CAP> {
814814
fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
815815
f.debug_tuple("DynamicEmpiricalDistribution")
816816
.field(&self.0)
817817
.finish()
818818
}
819819
}
820820

821-
impl<V: Copy, C: Copy> Clone for EmpiricalDistribution<V, C> {
821+
impl<V: Copy, C: Copy, const CAP: usize> Clone for EmpiricalDistribution<V, C, CAP> {
822822
fn clone(&self) -> Self {
823823
Self(self.0.clone())
824824
}
825825
}
826826

827-
impl<V: Copy, C: Copy> Default for EmpiricalDistribution<V, C>
827+
impl<V: Copy, C: Copy, const CAP: usize> Default for EmpiricalDistribution<V, C, CAP>
828828
where
829829
V: Copy + Ord,
830830
C: Ord + Copy + num_traits::Num,
@@ -1023,13 +1023,13 @@ where
10231023
}
10241024
}
10251025

1026-
impl<'a, V, C, R> From<&'a EmpiricalDistribution<V, C>> for RatedGrid<V, R>
1026+
impl<'a, V, C, R, const CAP: usize> From<&'a EmpiricalDistribution<V, C, CAP>> for RatedGrid<V, R>
10271027
where
10281028
R: num_traits::real::Real + 'static,
10291029
V: Copy + Ord,
10301030
C: Copy + Ord + num_traits::Num + AsPrimitive<R> + Ord,
10311031
{
1032-
fn from(distribution: &'a EmpiricalDistribution<V, C>) -> Self {
1032+
fn from(distribution: &'a EmpiricalDistribution<V, C, CAP>) -> Self {
10331033
RatedGrid::from_points_and_counts(distribution.iter())
10341034
}
10351035
}

0 commit comments

Comments
 (0)