dbc_rs/extended_multiplexing/
core.rs

1use super::ExtendedMultiplexing;
2use crate::{MAX_NAME_SIZE, compat::String, compat::Vec};
3
4impl ExtendedMultiplexing {
5    #[allow(dead_code)] // Used by builder/parser
6    pub(crate) fn new(
7        message_id: u32,
8        signal_name: String<{ MAX_NAME_SIZE }>,
9        multiplexer_switch: String<{ MAX_NAME_SIZE }>,
10        value_ranges: Vec<(u64, u64), 64>,
11    ) -> Self {
12        Self {
13            message_id,
14            signal_name,
15            multiplexer_switch,
16            value_ranges,
17        }
18    }
19
20    #[must_use = "return value should be used"]
21    pub fn message_id(&self) -> u32 {
22        self.message_id
23    }
24
25    #[must_use = "return value should be used"]
26    pub fn signal_name(&self) -> &str {
27        self.signal_name.as_str()
28    }
29
30    #[must_use = "return value should be used"]
31    pub fn multiplexer_switch(&self) -> &str {
32        self.multiplexer_switch.as_str()
33    }
34
35    #[must_use = "return value should be used"]
36    pub fn value_ranges(&self) -> &[(u64, u64)] {
37        self.value_ranges.as_slice()
38    }
39}