rusmpp_core/values/
its_session_info.rs

1use rusmpp_macros::Rusmpp;
2
3#[derive(Debug, Copy, Clone, PartialEq, Eq, Hash, PartialOrd, Ord, Default, Rusmpp)]
4#[cfg_attr(feature = "arbitrary", derive(::arbitrary::Arbitrary))]
5#[cfg_attr(feature = "serde", derive(::serde::Serialize))]
6#[cfg_attr(feature = "serde-deserialize-unchecked", derive(::serde::Deserialize))]
7pub struct ItsSessionInfo {
8    pub session_number: u8,
9    pub sequence_number: u8,
10}
11
12impl ItsSessionInfo {
13    pub fn new(session_number: u8, sequence_number: u8) -> Self {
14        Self {
15            session_number,
16            sequence_number,
17        }
18    }
19}
20
21#[cfg(test)]
22mod tests {
23    use super::*;
24
25    #[test]
26    fn encode_decode() {
27        #[cfg(feature = "alloc")]
28        crate::tests::owned::encode_decode_test_instances::<ItsSessionInfo>();
29        crate::tests::borrowed::encode_decode_test_instances::<ItsSessionInfo>();
30    }
31}