diff --git a/src/details/matrix.rs b/src/details/matrix.rs index 186930b..e4b9773 100644 --- a/src/details/matrix.rs +++ b/src/details/matrix.rs @@ -1,5 +1,6 @@ use std::ops::{BitAnd, Shl}; +#[derive(Clone)] pub struct BitMatrix { rows: usize, cols: usize, diff --git a/src/details/pattern_match_vector.rs b/src/details/pattern_match_vector.rs index ff1bd8a..c2dc556 100644 --- a/src/details/pattern_match_vector.rs +++ b/src/details/pattern_match_vector.rs @@ -191,6 +191,7 @@ impl BitVectorInterface for PatternMatchVector { } } +#[derive(Clone)] pub struct BlockPatternMatchVector { pub block_count: usize, pub map_unsigned: Option>, diff --git a/src/distance/damerau_levenshtein.rs b/src/distance/damerau_levenshtein.rs index baf882a..e21b8f1 100644 --- a/src/distance/damerau_levenshtein.rs +++ b/src/distance/damerau_levenshtein.rs @@ -401,6 +401,7 @@ where /// let scorer = damerau_levenshtein::BatchComparator::new("CA".chars()); /// assert_eq!(2, scorer.distance("ABC".chars())); /// ``` +#[derive(Clone)] pub struct BatchComparator { s1: Vec, } diff --git a/src/distance/hamming.rs b/src/distance/hamming.rs index 4ccd677..04046ff 100644 --- a/src/distance/hamming.rs +++ b/src/distance/hamming.rs @@ -411,6 +411,7 @@ where /// let scorer = hamming::BatchComparator::new("hamming".chars()); /// assert_eq!(Ok(1), scorer.distance("humming".chars())); /// ``` +#[derive(Clone)] pub struct BatchComparator { s1: Vec, } diff --git a/src/distance/indel.rs b/src/distance/indel.rs index 97adbfc..6d23c46 100644 --- a/src/distance/indel.rs +++ b/src/distance/indel.rs @@ -319,6 +319,7 @@ where /// let scorer = indel::BatchComparator::new("lewenstein".chars()); /// assert_eq!(3, scorer.distance("levenshtein".chars())); /// ``` +#[derive(Clone)] pub struct BatchComparator { pub(crate) scorer: lcs_seq::BatchComparator, } diff --git a/src/distance/jaro.rs b/src/distance/jaro.rs index 2c55d8e..685d420 100644 --- a/src/distance/jaro.rs +++ b/src/distance/jaro.rs @@ -793,6 +793,7 @@ where } /// `One x Many` comparisons using the Jaro similarity +#[derive(Clone)] pub struct BatchComparator { s1: Vec, pm: BlockPatternMatchVector, diff --git a/src/distance/jaro_winkler.rs b/src/distance/jaro_winkler.rs index 4ac70c6..9860c4d 100644 --- a/src/distance/jaro_winkler.rs +++ b/src/distance/jaro_winkler.rs @@ -400,6 +400,7 @@ impl Metricf64 for BatchComparatorImpl<'_, CharT> { } /// `One x Many` comparisons using the Jaro-Winkler similarity +#[derive(Clone)] pub struct BatchComparator { s1: Vec, pm: BlockPatternMatchVector, diff --git a/src/distance/lcs_seq.rs b/src/distance/lcs_seq.rs index 0e8eb63..bbfd6d5 100644 --- a/src/distance/lcs_seq.rs +++ b/src/distance/lcs_seq.rs @@ -763,6 +763,7 @@ where /// let scorer = lcs_seq::BatchComparator::new("lewenstein".chars()); /// assert_eq!(9, scorer.similarity("levenshtein".chars())); /// ``` +#[derive(Clone)] pub struct BatchComparator { pub(crate) s1: Vec, pub(crate) pm: BlockPatternMatchVector, diff --git a/src/distance/levenshtein.rs b/src/distance/levenshtein.rs index e098a12..87fc84c 100644 --- a/src/distance/levenshtein.rs +++ b/src/distance/levenshtein.rs @@ -1632,6 +1632,7 @@ impl MetricUsize for BatchComparatorImpl<'_, CharT> { /// let scorer = levenshtein::BatchComparator::new("CA".chars()); /// assert_eq!(3, scorer.distance("ABC".chars())); /// ``` +#[derive(Clone)] pub struct BatchComparator { s1: Vec, pm: BlockPatternMatchVector, diff --git a/src/distance/osa.rs b/src/distance/osa.rs index 357470d..f5ff60e 100644 --- a/src/distance/osa.rs +++ b/src/distance/osa.rs @@ -422,6 +422,7 @@ where )) } +#[derive(Clone)] pub struct BatchComparator { s1: Vec, pm: BlockPatternMatchVector, diff --git a/src/distance/postfix.rs b/src/distance/postfix.rs index daaba07..0a28a95 100644 --- a/src/distance/postfix.rs +++ b/src/distance/postfix.rs @@ -255,6 +255,7 @@ where /// let scorer = postfix::BatchComparator::new("postfix".chars()); /// assert_eq!(3, scorer.similarity("prefix".chars())); /// ``` +#[derive(Clone)] pub struct BatchComparator { s1: Vec, } diff --git a/src/distance/prefix.rs b/src/distance/prefix.rs index 73bf338..4651624 100644 --- a/src/distance/prefix.rs +++ b/src/distance/prefix.rs @@ -255,6 +255,7 @@ where /// let scorer = prefix::BatchComparator::new("prefix".chars()); /// assert_eq!(4, scorer.similarity("preference".chars())); /// ``` +#[derive(Clone)] pub struct BatchComparator { s1: Vec, }