@@ -10,8 +10,8 @@ use std::collections::{HashMap, HashSet};
1010#[ derive( Default ) ]
1111pub struct Observations {
1212 sample_types : Box < [ SampleType ] > ,
13- aggregated : HashMap < SampleType , HashMap < Sample , i64 > > ,
14- timestamped : HashMap < SampleType , HashMap < Sample , Vec < ( i64 , Timestamp ) > > > ,
13+ pub aggregated : HashMap < SampleType , HashMap < Sample , i64 > > ,
14+ pub timestamped : HashMap < SampleType , HashMap < Sample , Vec < ( i64 , Timestamp ) > > > ,
1515}
1616
1717impl Observations {
@@ -64,15 +64,15 @@ impl Observations {
6464 let samples: HashSet < & Sample > = self
6565 . aggregated
6666 . iter ( )
67- . flat_map ( |( _, samples) | samples. iter ( ) . map ( | ( s , _ ) | s ) )
67+ . flat_map ( |( _, samples) | samples. keys ( ) )
6868 . collect ( ) ;
6969 samples. len ( )
7070 }
7171
7272 pub fn timestamped_samples_count ( & self ) -> usize {
7373 self . timestamped
7474 . iter ( )
75- . flat_map ( |( _, v) | v. iter ( ) . map ( |( _ , v ) | v. len ( ) ) )
75+ . flat_map ( |( _, v) | v. values ( ) . map ( |v | v. len ( ) ) )
7676 . sum ( )
7777 }
7878
@@ -82,6 +82,8 @@ impl Observations {
8282 Ok ( self . into_iter ( ) )
8383 }
8484
85+ // TODO make this a trait impl
86+ #[ allow( clippy:: should_implement_trait) ]
8587 pub fn into_iter ( self ) -> impl Iterator < Item = ( Sample , Option < Timestamp > , Vec < i64 > ) > {
8688 let index_map: HashMap < SampleType , usize > = self
8789 . sample_types
0 commit comments