INNER CODE UNIT · Rust
write_multiple_coils
slowtec/tokio-modbus · src/client/mod.rs:311
async fn write_multiple_coils<'a>(&'a mut self, addr: Address, coils: &[Coil]) -> Result<()> {
let cnt = coils.len();
self.client
.call(Request::WriteMultipleCoils(addr, Cow::Borrowed(coils)))
.await
.map(|result| {
result.map(|response| match response {
Response::WriteMultipleCoils(rsp_addr, rsp_cnt) => {
debug_assert_eq!(addr, rsp_addr);
debug_assert_eq!(cnt, rsp_cnt.into());
}
_ => unreachable!("call() should reject mismatching responses"),
})
})
}
async fn write_single_register<'a>(&'a mut self, addr: Address, word: Word) -> Result<()> {
self.client