arch_pkg_text/srcinfo/query/generic/
std_ext.rs1use 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);