arch_pkg_text/srcinfo/query/
misc.rs1use super::{EncourageReuse, Query, QueryMut, QueryRawTextItem};
4use crate::srcinfo::FieldName;
5
6#[derive(Debug, Default, Clone, Copy)]
8pub struct DeriveQueryMut<Querier: ?Sized>(pub Querier);
9
10impl<'a, Querier: Query<'a> + ?Sized> Query<'a> for DeriveQueryMut<Querier> {
11 fn query_raw_text(&self, field_name: FieldName) -> impl Iterator<Item = QueryRawTextItem<'a>> {
12 self.0.query_raw_text(field_name)
13 }
14}
15
16impl<'a, Querier: Query<'a> + ?Sized> QueryMut<'a> for DeriveQueryMut<Querier> {
17 fn query_raw_text_mut(
18 &mut self,
19 field_name: FieldName,
20 ) -> impl Iterator<Item = QueryRawTextItem<'a>> {
21 self.query_raw_text(field_name)
22 }
23}
24
25impl<'a, Querier: Query<'a> + EncourageReuse + ?Sized> EncourageReuse for DeriveQueryMut<Querier> {
26 const ENCOURAGE_REUSE: bool = Querier::ENCOURAGE_REUSE;
27}