diff --git a/src/collector/filter_collector_wrapper.rs b/src/collector/filter_collector_wrapper.rs index ddcf68cb7..4bd7a5bfe 100644 --- a/src/collector/filter_collector_wrapper.rs +++ b/src/collector/filter_collector_wrapper.rs @@ -72,7 +72,7 @@ pub struct FilterCollector { impl FilterCollector where TCollector: Collector + Send + Sync, - TSegmentCollector: 'static + SegmentCollector + Send + Sync { + TSegmentCollector: SegmentCollector + Send + Sync { pub fn new(field: Field, predicate: &'static (dyn Fn(u64) -> bool + Send + Sync), collector: TCollector) -> FilterCollector { FilterCollector { field, predicate, collector, phantom: PhantomData } } @@ -80,7 +80,7 @@ where impl Collector for FilterCollector where - TSegmentCollector: 'static + SegmentCollector + Send + Sync, + TSegmentCollector: SegmentCollector + Send + Sync, TCollector: Collector + Send + Sync { // That's the type of our result. // Our standard deviation will be a float. @@ -137,7 +137,7 @@ pub struct FilterSegmentCollector { impl SegmentCollector for FilterSegmentCollector where - TSegmentCollector: 'static + SegmentCollector + Send + Sync { + TSegmentCollector: SegmentCollector + Send + Sync { type Fruit = TSegmentCollector::Fruit; fn collect(&mut self, doc: u32, score: Score) {