MCPcopy Create free account
hub / github.com/chirpstack/chirpstack / to_vec

Method to_vec

lrwn/src/fhdr.rs:68–84  ·  view source on GitHub ↗
(&self)

Source from the content-addressed store, hash-verified

66 }
67
68 pub fn to_vec(&self) -> Result<Vec<u8>> {
69 // clone FCtrl as mutable
70 let mut f_ctrl = self.f_ctrl.clone();
71
72 // get f_opts bytes and set f_opts_len to number of f_opts bytes
73 let f_opts = self.f_opts.to_vec()?;
74 f_ctrl.f_opts_len = f_opts.len() as u8;
75
76 let mut b = Vec::with_capacity(7 + f_opts.len());
77
78 b.extend_from_slice(&self.devaddr.to_le_bytes());
79 b.extend_from_slice(&f_ctrl.to_le_bytes()?);
80 b.extend_from_slice(&self.f_cnt.to_le_bytes()[0..2]); // only take the 16 lsb
81 b.extend_from_slice(&f_opts);
82
83 Ok(b)
84 }
85}
86
87#[derive(Default, Debug, PartialEq, Eq, Clone)]

Callers 6

newMethod · 0.45
from_bytesMethod · 0.45
into_iterMethod · 0.45
test_dev_addrFunction · 0.45
test_join_euiFunction · 0.45

Calls 1

to_le_bytesMethod · 0.45

Tested by 2

test_dev_addrFunction · 0.36
test_join_euiFunction · 0.36