1pub use embedded_can::{ExtendedId, Id, StandardId};
2
3pub fn raw_u32(id: Id) -> u32 {
4 match id {
5 Id::Standard(id) => id.as_raw() as u32,
6 Id::Extended(id) => id.as_raw(),
7 }
8}
9
10pub fn new_standard(id: u16) -> Option<Id> {
11 StandardId::new(id).map(|i| Id::Standard(i))
12}
13
14pub fn new_extended(id: u32) -> Option<Id> {
15 ExtendedId::new(id).map(|i| Id::Extended(i))
16}
17
18#[cfg(test)]
19mod test {
20 use super::*;
21
22 #[test]
23 fn id_validation() {
24 assert!(new_standard(0x800).is_none());
26 assert!(new_extended(0x2000_0000).is_none());
28 }
29}