Skip to content

Commit 0bcdadd

Browse files
committed
Renamed from_coordinates to from_pairs [skip ci]
1 parent d94f44f commit 0bcdadd

File tree

1 file changed

+9
-12
lines changed

1 file changed

+9
-12
lines changed

src/sparsevec.rs

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -35,12 +35,9 @@ impl SparseVector {
3535
}
3636
}
3737

38-
/// Creates a sparse vector from coordinates.
39-
pub fn from_coordinates<I: IntoIterator<Item = (i32, f32)>>(
40-
iter: I,
41-
dim: usize,
42-
) -> SparseVector {
43-
let mut elements: Vec<(i32, f32)> = iter.into_iter().filter(|v| v.1 != 0.0).collect();
38+
/// Creates a sparse vector from `(index, value)` pairs.
39+
pub fn from_pairs<I: IntoIterator<Item = (i32, f32)>>(pairs: I, dim: usize) -> SparseVector {
40+
let mut elements: Vec<(i32, f32)> = pairs.into_iter().filter(|v| v.1 != 0.0).collect();
4441
elements.sort_by_key(|v| v.0);
4542
let indices: Vec<i32> = elements.iter().map(|v| v.0).collect();
4643
let values: Vec<f32> = elements.iter().map(|v| v.1).collect();
@@ -104,16 +101,16 @@ mod tests {
104101
}
105102

106103
#[test]
107-
fn test_from_coordinates_map() {
108-
let elements = HashMap::from([(0, 1.0), (2, 2.0), (4, 3.0)]);
109-
let vec = SparseVector::from_coordinates(elements, 6);
104+
fn test_from_pairs_map() {
105+
let pairs = HashMap::from([(0, 1.0), (2, 2.0), (4, 3.0)]);
106+
let vec = SparseVector::from_pairs(pairs, 6);
110107
assert_eq!(vec![1.0, 0.0, 2.0, 0.0, 3.0, 0.0], vec.to_vec());
111108
}
112109

113110
#[test]
114-
fn test_from_coordinates_vec() {
115-
let elements = vec![(0, 1.0), (2, 2.0), (4, 3.0)];
116-
let vec = SparseVector::from_coordinates(elements, 6);
111+
fn test_from_pairs_vec() {
112+
let pairs = vec![(0, 1.0), (2, 2.0), (4, 3.0)];
113+
let vec = SparseVector::from_pairs(pairs, 6);
117114
assert_eq!(vec![1.0, 0.0, 2.0, 0.0, 3.0, 0.0], vec.to_vec());
118115
}
119116
}

0 commit comments

Comments
 (0)