openthread/ot/
multi_radio_neighbor_info.rs1use crate::prelude_internal::*;
6
7pub trait MultiRadioLink {
11 fn multi_radio_get_neighbor_info(
13 &self,
14 ext_addr: &ExtAddress,
15 ) -> Result<MultiRadioNeighborInfo>;
16}
17
18impl<T: MultiRadioLink + ot::Boxable> MultiRadioLink for ot::Box<T> {
19 fn multi_radio_get_neighbor_info(
20 &self,
21 ext_addr: &ExtAddress,
22 ) -> Result<MultiRadioNeighborInfo> {
23 self.as_ref().multi_radio_get_neighbor_info(ext_addr)
24 }
25}
26
27impl MultiRadioLink for Instance {
28 fn multi_radio_get_neighbor_info(
29 &self,
30 ext_addr: &ExtAddress,
31 ) -> Result<MultiRadioNeighborInfo> {
32 let mut info = MultiRadioNeighborInfo::default();
33 Error::from(unsafe {
34 otMultiRadioGetNeighborInfo(
35 self.as_ot_ptr(),
36 ext_addr.as_ot_ptr(),
37 info.as_ot_mut_ptr(),
38 )
39 })
40 .into_result()?;
41 Ok(info)
42 }
43}