arch_pkg_text/srcinfo/query/generic/
std_ext.rs

1use crate::srcinfo::{FieldName, Query, QueryMut, QueryRawTextItem};
2use std::{rc::Rc, sync::Arc};
3
4macro_rules! impl_pointer {
5    ($wrapper:ident) => {
6        impl<'a, Querier: Query<'a>> Query<'a> for $wrapper<Querier> {
7            fn query_raw_text(
8                &self,
9                field_name: FieldName,
10            ) -> impl Iterator<Item = QueryRawTextItem<'a>> {
11                Querier::query_raw_text(self, field_name)
12            }
13        }
14
15        impl<'a, Querier: Query<'a>> QueryMut<'a> for $wrapper<Querier> {
16            fn query_raw_text_mut(
17                &mut self,
18                field_name: FieldName,
19            ) -> impl Iterator<Item = QueryRawTextItem<'a>> {
20                self.query_raw_text(field_name)
21            }
22        }
23    };
24}
25
26impl_pointer!(Box);
27impl_pointer!(Rc);
28impl_pointer!(Arc);