Enum tokio_modbus::Response
source · pub enum Response {
ReadCoils(Vec<bool>),
ReadDiscreteInputs(Vec<bool>),
WriteSingleCoil(Address, bool),
WriteMultipleCoils(Address, Quantity),
ReadInputRegisters(Vec<u16>),
ReadHoldingRegisters(Vec<u16>),
WriteSingleRegister(Address, u16),
WriteMultipleRegisters(Address, Quantity),
MaskWriteRegister(Address, u16, u16),
ReadWriteMultipleRegisters(Vec<u16>),
Custom(u8, Bytes),
}
Expand description
The data of a successful request.
ReadCoils/ReadDiscreteInputs: The length of the result Vec is always a multiple of 8. Only the values of the first bits/coils that have actually been requested are defined. The value of the remaining bits depend on the server implementation and those coils should be should be ignored.
Variants§
ReadCoils(Vec<bool>)
Response to a ReadCoils
request
The parameter contains the coil values that have been read
See also the note above regarding the vector length
ReadDiscreteInputs(Vec<bool>)
Response to a ReadDiscreteInputs
request
The parameter contains the discrete input values that have been read
See also the note above regarding the vector length
WriteSingleCoil(Address, bool)
Response to a WriteSingleCoil
request
The first parameter contains the address of the coil that has been written to
The second parameter contains the value that has been written to the coil the given address
WriteMultipleCoils(Address, Quantity)
Response to a WriteMultipleCoils
request
The first parameter contains the address at the start of the range that has been written to
The second parameter contains the amount of values that have been written
ReadInputRegisters(Vec<u16>)
Response to a ReadInputRegisters
request
The parameter contains the register values that have been read
ReadHoldingRegisters(Vec<u16>)
Response to a ReadHoldingRegisters
request
The parameter contains the register values that have been read
WriteSingleRegister(Address, u16)
Response to a WriteSingleRegister
request
The first parameter contains the address of the register that has been written to
The second parameter contains the value that has been written to the register at the given address
WriteMultipleRegisters(Address, Quantity)
Response to a WriteMultipleRegisters
request
The first parameter contains the address at the start of the register range that has been written to
The second parameter contains the amount of register that have been written
MaskWriteRegister(Address, u16, u16)
Response MaskWriteRegister
The first parameter is the address of the holding register.
The second parameter is the AND mask.
The third parameter is the OR mask.
ReadWriteMultipleRegisters(Vec<u16>)
Response to a ReadWriteMultipleRegisters
request
The parameter contains the register values that have been read as part of the read instruction
Custom(u8, Bytes)
Response to a raw Modbus request The first parameter contains the returned Modbus function code The second parameter contains the bytes read following the function code
Implementations§
source§impl Response
impl Response
sourcepub const fn function_code(&self) -> FunctionCode
pub const fn function_code(&self) -> FunctionCode
Get the FunctionCode
of the Response
.
Trait Implementations§
source§impl PartialEq for Response
impl PartialEq for Response
impl Eq for Response
impl StructuralPartialEq for Response
Auto Trait Implementations§
impl !Freeze for Response
impl RefUnwindSafe for Response
impl Send for Response
impl Sync for Response
impl Unpin for Response
impl UnwindSafe for Response
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)