pub enum SdoClientError {
NoResponse,
MalformedResponse,
UnexpectedResponse {
expecting: String,
response: SdoResponse,
},
ServerAbort {
index: u16,
sub: u8,
abort_code: RawAbortCode,
},
ToggleNotAlternated,
MismatchedObjectIndex {
expected: (u16, u8),
received: (u16, u8),
},
UnexpectedSize,
SocketSendFailed {
message: String,
},
BlockSizeChangedTooSmall,
CrcMismatch,
}Expand description
Error returned by SdoClient methods
Variants§
NoResponse
Timeout while awaiting an expected response
MalformedResponse
Received a response that could not be interpreted
UnexpectedResponse
Received a valid SdoResponse, but with an unexpected command specifier
Fields
response: SdoResponseThe response which was received
ServerAbort
Received a ServerAbort response from the node
Fields
abort_code: RawAbortCodeReason for the abort
ToggleNotAlternated
Received a response with the wrong toggle bit
MismatchedObjectIndex
Received a response with a different index/sub value than was requested
Fields
UnexpectedSize
An SDO upload response had a size that did not match the expected size
SocketSendFailed
Failed to write a message to the socket
BlockSizeChangedTooSmall
An SDO server shrunk the block size while requesting retransmission
Hopefully no node will ever do this, but it’s a possible corner case, since servers are allowed to change the block size between each block, and can request resend of part of a block by not acknowledging all segments.
CrcMismatch
The CRC on a block upload did not match
Trait Implementations§
Source§impl Clone for SdoClientError
impl Clone for SdoClientError
Source§fn clone(&self) -> SdoClientError
fn clone(&self) -> SdoClientError
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SdoClientError
impl Debug for SdoClientError
Source§impl Display for SdoClientError
impl Display for SdoClientError
Source§impl Error for SdoClientError
impl Error for SdoClientError
Source§fn description(&self) -> &str
fn description(&self) -> &str
Source§fn cause(&self) -> Option<&dyn Error>
fn cause(&self) -> Option<&dyn Error>
Source§impl ErrorCompat for SdoClientError
impl ErrorCompat for SdoClientError
Source§fn iter_chain(&self) -> ChainCompat<'_, '_>where
Self: AsErrorSource,
fn iter_chain(&self) -> ChainCompat<'_, '_>where
Self: AsErrorSource,
Error::source. Read moreSource§impl PartialEq for SdoClientError
impl PartialEq for SdoClientError
impl StructuralPartialEq for SdoClientError
Auto Trait Implementations§
impl Freeze for SdoClientError
impl RefUnwindSafe for SdoClientError
impl Send for SdoClientError
impl Sync for SdoClientError
impl Unpin for SdoClientError
impl UnwindSafe for SdoClientError
Blanket Implementations§
Source§impl<T> AsErrorSource for Twhere
T: Error + 'static,
impl<T> AsErrorSource for Twhere
T: Error + 'static,
Source§fn as_error_source(&self) -> &(dyn Error + 'static)
fn as_error_source(&self) -> &(dyn Error + 'static)
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§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more