stm32f1_staging/stm32f100/exti/
swier.rs1pub type R = crate::R<SWIERrs>;
3pub type W = crate::W<SWIERrs>;
5#[cfg_attr(feature = "defmt", derive(defmt::Format))]
9#[derive(Clone, Copy, Debug, PartialEq, Eq)]
10pub enum SOFTWARE_INTERRUPT {
11 Pend = 1,
13}
14impl From<SOFTWARE_INTERRUPT> for bool {
15 #[inline(always)]
16 fn from(variant: SOFTWARE_INTERRUPT) -> Self {
17 variant as u8 != 0
18 }
19}
20pub type SWIER_R = crate::BitReader<SOFTWARE_INTERRUPT>;
22impl SWIER_R {
23 #[inline(always)]
25 pub const fn variant(&self) -> Option<SOFTWARE_INTERRUPT> {
26 match self.bits {
27 true => Some(SOFTWARE_INTERRUPT::Pend),
28 _ => None,
29 }
30 }
31 #[inline(always)]
33 pub fn is_pend(&self) -> bool {
34 *self == SOFTWARE_INTERRUPT::Pend
35 }
36}
37pub type SWIER_W<'a, REG> = crate::BitWriter<'a, REG, SOFTWARE_INTERRUPT>;
39impl<'a, REG> SWIER_W<'a, REG>
40where
41 REG: crate::Writable + crate::RegisterSpec,
42{
43 #[inline(always)]
45 pub fn pend(self) -> &'a mut crate::W<REG> {
46 self.variant(SOFTWARE_INTERRUPT::Pend)
47 }
48}
49impl R {
50 #[inline(always)]
54 pub fn swier(&self, n: u8) -> SWIER_R {
55 #[allow(clippy::no_effect)] [(); 18][n as usize];
56 SWIER_R::new(((self.bits >> n) & 1) != 0)
57 }
58 #[inline(always)]
61 pub fn swier_iter(&self) -> impl Iterator<Item = SWIER_R> + '_ {
62 (0..18).map(move |n| SWIER_R::new(((self.bits >> n) & 1) != 0))
63 }
64 #[inline(always)]
66 pub fn swier0(&self) -> SWIER_R {
67 SWIER_R::new((self.bits & 1) != 0)
68 }
69 #[inline(always)]
71 pub fn swier1(&self) -> SWIER_R {
72 SWIER_R::new(((self.bits >> 1) & 1) != 0)
73 }
74 #[inline(always)]
76 pub fn swier2(&self) -> SWIER_R {
77 SWIER_R::new(((self.bits >> 2) & 1) != 0)
78 }
79 #[inline(always)]
81 pub fn swier3(&self) -> SWIER_R {
82 SWIER_R::new(((self.bits >> 3) & 1) != 0)
83 }
84 #[inline(always)]
86 pub fn swier4(&self) -> SWIER_R {
87 SWIER_R::new(((self.bits >> 4) & 1) != 0)
88 }
89 #[inline(always)]
91 pub fn swier5(&self) -> SWIER_R {
92 SWIER_R::new(((self.bits >> 5) & 1) != 0)
93 }
94 #[inline(always)]
96 pub fn swier6(&self) -> SWIER_R {
97 SWIER_R::new(((self.bits >> 6) & 1) != 0)
98 }
99 #[inline(always)]
101 pub fn swier7(&self) -> SWIER_R {
102 SWIER_R::new(((self.bits >> 7) & 1) != 0)
103 }
104 #[inline(always)]
106 pub fn swier8(&self) -> SWIER_R {
107 SWIER_R::new(((self.bits >> 8) & 1) != 0)
108 }
109 #[inline(always)]
111 pub fn swier9(&self) -> SWIER_R {
112 SWIER_R::new(((self.bits >> 9) & 1) != 0)
113 }
114 #[inline(always)]
116 pub fn swier10(&self) -> SWIER_R {
117 SWIER_R::new(((self.bits >> 10) & 1) != 0)
118 }
119 #[inline(always)]
121 pub fn swier11(&self) -> SWIER_R {
122 SWIER_R::new(((self.bits >> 11) & 1) != 0)
123 }
124 #[inline(always)]
126 pub fn swier12(&self) -> SWIER_R {
127 SWIER_R::new(((self.bits >> 12) & 1) != 0)
128 }
129 #[inline(always)]
131 pub fn swier13(&self) -> SWIER_R {
132 SWIER_R::new(((self.bits >> 13) & 1) != 0)
133 }
134 #[inline(always)]
136 pub fn swier14(&self) -> SWIER_R {
137 SWIER_R::new(((self.bits >> 14) & 1) != 0)
138 }
139 #[inline(always)]
141 pub fn swier15(&self) -> SWIER_R {
142 SWIER_R::new(((self.bits >> 15) & 1) != 0)
143 }
144 #[inline(always)]
146 pub fn swier16(&self) -> SWIER_R {
147 SWIER_R::new(((self.bits >> 16) & 1) != 0)
148 }
149 #[inline(always)]
151 pub fn swier17(&self) -> SWIER_R {
152 SWIER_R::new(((self.bits >> 17) & 1) != 0)
153 }
154}
155impl core::fmt::Debug for R {
156 fn fmt(&self, f: &mut core::fmt::Formatter) -> core::fmt::Result {
157 f.debug_struct("SWIER")
158 .field("swier0", &self.swier0())
159 .field("swier1", &self.swier1())
160 .field("swier2", &self.swier2())
161 .field("swier3", &self.swier3())
162 .field("swier4", &self.swier4())
163 .field("swier5", &self.swier5())
164 .field("swier6", &self.swier6())
165 .field("swier7", &self.swier7())
166 .field("swier8", &self.swier8())
167 .field("swier9", &self.swier9())
168 .field("swier10", &self.swier10())
169 .field("swier11", &self.swier11())
170 .field("swier12", &self.swier12())
171 .field("swier13", &self.swier13())
172 .field("swier14", &self.swier14())
173 .field("swier15", &self.swier15())
174 .field("swier16", &self.swier16())
175 .field("swier17", &self.swier17())
176 .finish()
177 }
178}
179impl W {
180 #[inline(always)]
184 pub fn swier(&mut self, n: u8) -> SWIER_W<SWIERrs> {
185 #[allow(clippy::no_effect)] [(); 18][n as usize];
186 SWIER_W::new(self, n)
187 }
188 #[inline(always)]
190 pub fn swier0(&mut self) -> SWIER_W<SWIERrs> {
191 SWIER_W::new(self, 0)
192 }
193 #[inline(always)]
195 pub fn swier1(&mut self) -> SWIER_W<SWIERrs> {
196 SWIER_W::new(self, 1)
197 }
198 #[inline(always)]
200 pub fn swier2(&mut self) -> SWIER_W<SWIERrs> {
201 SWIER_W::new(self, 2)
202 }
203 #[inline(always)]
205 pub fn swier3(&mut self) -> SWIER_W<SWIERrs> {
206 SWIER_W::new(self, 3)
207 }
208 #[inline(always)]
210 pub fn swier4(&mut self) -> SWIER_W<SWIERrs> {
211 SWIER_W::new(self, 4)
212 }
213 #[inline(always)]
215 pub fn swier5(&mut self) -> SWIER_W<SWIERrs> {
216 SWIER_W::new(self, 5)
217 }
218 #[inline(always)]
220 pub fn swier6(&mut self) -> SWIER_W<SWIERrs> {
221 SWIER_W::new(self, 6)
222 }
223 #[inline(always)]
225 pub fn swier7(&mut self) -> SWIER_W<SWIERrs> {
226 SWIER_W::new(self, 7)
227 }
228 #[inline(always)]
230 pub fn swier8(&mut self) -> SWIER_W<SWIERrs> {
231 SWIER_W::new(self, 8)
232 }
233 #[inline(always)]
235 pub fn swier9(&mut self) -> SWIER_W<SWIERrs> {
236 SWIER_W::new(self, 9)
237 }
238 #[inline(always)]
240 pub fn swier10(&mut self) -> SWIER_W<SWIERrs> {
241 SWIER_W::new(self, 10)
242 }
243 #[inline(always)]
245 pub fn swier11(&mut self) -> SWIER_W<SWIERrs> {
246 SWIER_W::new(self, 11)
247 }
248 #[inline(always)]
250 pub fn swier12(&mut self) -> SWIER_W<SWIERrs> {
251 SWIER_W::new(self, 12)
252 }
253 #[inline(always)]
255 pub fn swier13(&mut self) -> SWIER_W<SWIERrs> {
256 SWIER_W::new(self, 13)
257 }
258 #[inline(always)]
260 pub fn swier14(&mut self) -> SWIER_W<SWIERrs> {
261 SWIER_W::new(self, 14)
262 }
263 #[inline(always)]
265 pub fn swier15(&mut self) -> SWIER_W<SWIERrs> {
266 SWIER_W::new(self, 15)
267 }
268 #[inline(always)]
270 pub fn swier16(&mut self) -> SWIER_W<SWIERrs> {
271 SWIER_W::new(self, 16)
272 }
273 #[inline(always)]
275 pub fn swier17(&mut self) -> SWIER_W<SWIERrs> {
276 SWIER_W::new(self, 17)
277 }
278}
279pub struct SWIERrs;
285impl crate::RegisterSpec for SWIERrs {
286 type Ux = u32;
287}
288impl crate::Readable for SWIERrs {}
290impl crate::Writable for SWIERrs {
292 type Safety = crate::Unsafe;
293}
294impl crate::Resettable for SWIERrs {}