activitystreams_ext/
ext3.rs

1use crate::Ext3;
2use activitystreams::{
3    activity::{
4        Activity, ActivityActor, ActivityObject, AsActivity, AsActivityActor, AsActivityObject,
5        AsOptOrigin, AsOptTarget, AsOrigin, AsQuestion, AsTarget, OptOrigin, OptTarget, Origin,
6        Question, Target,
7    },
8    actor::{ApActor, AsApActor},
9    base::{AsBase, Base},
10    collection::{AsCollection, AsCollectionPage, Collection, CollectionPage},
11    markers,
12    object::{ApObject, AsApObject, AsObject, Object},
13};
14
15impl<Inner, A, B, C> markers::Base for Ext3<Inner, A, B, C> where Inner: markers::Base {}
16impl<Inner, A, B, C> markers::Object for Ext3<Inner, A, B, C> where Inner: markers::Object {}
17impl<Inner, A, B, C> markers::Collection for Ext3<Inner, A, B, C> where Inner: markers::Collection {}
18impl<Inner, A, B, C> markers::CollectionPage for Ext3<Inner, A, B, C> where
19    Inner: markers::CollectionPage
20{
21}
22impl<Inner, A, B, C> markers::Actor for Ext3<Inner, A, B, C> where Inner: markers::Actor {}
23impl<Inner, A, B, C> markers::Activity for Ext3<Inner, A, B, C> where Inner: markers::Activity {}
24impl<Inner, A, B, C> markers::IntransitiveActivity for Ext3<Inner, A, B, C> where
25    Inner: markers::IntransitiveActivity
26{
27}
28
29impl<Inner, A, B, C> AsBase for Ext3<Inner, A, B, C>
30where
31    Inner: AsBase,
32{
33    type Kind = Inner::Kind;
34
35    fn base_ref(&self) -> &Base<Self::Kind> {
36        self.inner.base_ref()
37    }
38
39    fn base_mut(&mut self) -> &mut Base<Self::Kind> {
40        self.inner.base_mut()
41    }
42}
43
44impl<Inner, A, B, C> AsObject for Ext3<Inner, A, B, C>
45where
46    Inner: AsObject,
47{
48    type Kind = Inner::Kind;
49
50    fn object_ref(&self) -> &Object<Self::Kind> {
51        self.inner.object_ref()
52    }
53
54    fn object_mut(&mut self) -> &mut Object<Self::Kind> {
55        self.inner.object_mut()
56    }
57}
58
59impl<Inner, A, B, C> AsApObject for Ext3<Inner, A, B, C>
60where
61    Inner: AsApObject,
62{
63    type Inner = Inner::Inner;
64
65    fn ap_object_ref(&self) -> &ApObject<Self::Inner> {
66        self.inner.ap_object_ref()
67    }
68
69    fn ap_object_mut(&mut self) -> &mut ApObject<Self::Inner> {
70        self.inner.ap_object_mut()
71    }
72}
73
74impl<Inner, A, B, C> AsCollection for Ext3<Inner, A, B, C>
75where
76    Inner: AsCollection,
77{
78    type Kind = Inner::Kind;
79
80    fn collection_ref(&self) -> &Collection<Self::Kind> {
81        self.inner.collection_ref()
82    }
83
84    fn collection_mut(&mut self) -> &mut Collection<Self::Kind> {
85        self.inner.collection_mut()
86    }
87}
88
89impl<Inner, A, B, C> AsCollectionPage for Ext3<Inner, A, B, C>
90where
91    Inner: AsCollectionPage,
92{
93    type Kind = Inner::Kind;
94
95    fn collection_page_ref(&self) -> &CollectionPage<Self::Kind> {
96        self.inner.collection_page_ref()
97    }
98
99    fn collection_page_mut(&mut self) -> &mut CollectionPage<Self::Kind> {
100        self.inner.collection_page_mut()
101    }
102}
103
104impl<Inner, A, B, C> AsApActor for Ext3<Inner, A, B, C>
105where
106    Inner: AsApActor,
107{
108    type Inner = Inner::Inner;
109
110    fn ap_actor_ref(&self) -> &ApActor<Self::Inner> {
111        self.inner.ap_actor_ref()
112    }
113
114    fn ap_actor_mut(&mut self) -> &mut ApActor<Self::Inner> {
115        self.inner.ap_actor_mut()
116    }
117}
118
119impl<Inner, A, B, C> AsActivity for Ext3<Inner, A, B, C>
120where
121    Inner: AsActivity,
122{
123    type Kind = Inner::Kind;
124
125    fn activity_ref(&self) -> &Activity<Self::Kind> {
126        self.inner.activity_ref()
127    }
128
129    fn activity_mut(&mut self) -> &mut Activity<Self::Kind> {
130        self.inner.activity_mut()
131    }
132}
133
134impl<Inner, A, B, C> AsActivityActor for Ext3<Inner, A, B, C>
135where
136    Inner: AsActivityActor,
137{
138    type Inner = Inner::Inner;
139
140    fn activity_actor_ref(&self) -> &ActivityActor<Self::Inner> {
141        self.inner.activity_actor_ref()
142    }
143
144    fn activity_actor_mut(&mut self) -> &mut ActivityActor<Self::Inner> {
145        self.inner.activity_actor_mut()
146    }
147}
148
149impl<Inner, A, B, C> AsActivityObject for Ext3<Inner, A, B, C>
150where
151    Inner: AsActivityObject,
152{
153    type Inner = Inner::Inner;
154
155    fn activity_object_ref(&self) -> &ActivityObject<Self::Inner> {
156        self.inner.activity_object_ref()
157    }
158
159    fn activity_object_mut(&mut self) -> &mut ActivityObject<Self::Inner> {
160        self.inner.activity_object_mut()
161    }
162}
163
164impl<Inner, A, B, C> AsTarget for Ext3<Inner, A, B, C>
165where
166    Inner: AsTarget,
167{
168    type Inner = Inner::Inner;
169
170    fn target_ref(&self) -> &Target<Self::Inner> {
171        self.inner.target_ref()
172    }
173
174    fn target_mut(&mut self) -> &mut Target<Self::Inner> {
175        self.inner.target_mut()
176    }
177}
178
179impl<Inner, A, B, C> AsOrigin for Ext3<Inner, A, B, C>
180where
181    Inner: AsOrigin,
182{
183    type Inner = Inner::Inner;
184
185    fn origin_ref(&self) -> &Origin<Self::Inner> {
186        self.inner.origin_ref()
187    }
188
189    fn origin_mut(&mut self) -> &mut Origin<Self::Inner> {
190        self.inner.origin_mut()
191    }
192}
193
194impl<Inner, A, B, C> AsOptTarget for Ext3<Inner, A, B, C>
195where
196    Inner: AsOptTarget,
197{
198    type Inner = Inner::Inner;
199
200    fn opt_target_ref(&self) -> &OptTarget<Self::Inner> {
201        self.inner.opt_target_ref()
202    }
203
204    fn opt_target_mut(&mut self) -> &mut OptTarget<Self::Inner> {
205        self.inner.opt_target_mut()
206    }
207}
208
209impl<Inner, A, B, C> AsOptOrigin for Ext3<Inner, A, B, C>
210where
211    Inner: AsOptOrigin,
212{
213    type Inner = Inner::Inner;
214
215    fn opt_origin_ref(&self) -> &OptOrigin<Self::Inner> {
216        self.inner.opt_origin_ref()
217    }
218
219    fn opt_origin_mut(&mut self) -> &mut OptOrigin<Self::Inner> {
220        self.inner.opt_origin_mut()
221    }
222}
223
224impl<Inner, A, B, C> AsQuestion for Ext3<Inner, A, B, C>
225where
226    Inner: AsQuestion,
227{
228    fn question_ref(&self) -> &Question {
229        self.inner.question_ref()
230    }
231
232    fn question_mut(&mut self) -> &mut Question {
233        self.inner.question_mut()
234    }
235}