//! Error types returned by [`crate::Scdc`] operations.
/// Errors returned by [`Scdc`](crate::Scdc) register operations.
///
/// Two categories of failure are distinguished so that callers can handle them
/// separately: a transport failure means the I²C/DDC bus returned an error; a
/// protocol violation means the sink returned register content that does not
/// conform to the SCDC specification.
/// Protocol-level violations detected while decoding SCDC register content.