|
1 | 1 | use super::{
|
2 | 2 | registercluster::{
|
3 |
| - AllRegistersIter, AllRegistersIterMut, ClusterIter, ClusterIterMut, OptIter, RegisterIter, |
| 3 | + AllRegistersIter, AllRegistersIterMut, ClusterIter, ClusterIterMut, RegisterIter, |
4 | 4 | RegisterIterMut,
|
5 | 5 | },
|
6 |
| - AddressBlock, BuildError, DimElement, EmptyToNone, Interrupt, Peripheral, RegisterCluster, |
7 |
| - RegisterProperties, SvdError, ValidateLevel, |
| 6 | + AddressBlock, BuildError, Cluster, DimElement, EmptyToNone, Interrupt, OptIter, Peripheral, |
| 7 | + Register, RegisterCluster, RegisterProperties, SvdError, ValidateLevel, |
8 | 8 | };
|
9 | 9 |
|
10 | 10 | /// Errors from [Peripheral::validate]
|
@@ -429,4 +429,24 @@ impl PeripheralInfo {
|
429 | 429 | AllRegistersIterMut { rem: Vec::new() }
|
430 | 430 | }
|
431 | 431 | }
|
| 432 | + |
| 433 | + /// Get register by name |
| 434 | + pub fn get_register(&self, name: &str) -> Option<&Register> { |
| 435 | + self.registers().find(|f| f.name == name) |
| 436 | + } |
| 437 | + |
| 438 | + /// Get mutable register by name |
| 439 | + pub fn get_mut_register(&mut self, name: &str) -> Option<&mut Register> { |
| 440 | + self.registers_mut().find(|f| f.name == name) |
| 441 | + } |
| 442 | + |
| 443 | + /// Get cluster by name |
| 444 | + pub fn get_cluster(&self, name: &str) -> Option<&Cluster> { |
| 445 | + self.clusters().find(|f| f.name == name) |
| 446 | + } |
| 447 | + |
| 448 | + /// Get mutable cluster by name |
| 449 | + pub fn get_mut_cluster(&mut self, name: &str) -> Option<&mut Cluster> { |
| 450 | + self.clusters_mut().find(|f| f.name == name) |
| 451 | + } |
432 | 452 | }
|
0 commit comments