#[non_exhaustive]pub enum ModelError {
Json(Error),
UnknownFormat(String),
MalformedUuid(String),
ValueType {
format: &'static str,
detail: String,
},
ValueRange {
format: &'static str,
value: String,
},
Base64(String),
CharacteristicStatus {
aid: u64,
iid: u64,
status: i64,
},
Executor(String),
}Expand description
All errors hap-model can produce.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
Json(Error)
The input was not valid JSON, or did not match the expected HAP shape.
UnknownFormat(String)
A characteristic declared a format string this crate does not know.
MalformedUuid(String)
A type string was neither a short HAP UUID nor a full 36-char UUID.
ValueType
A JSON value’s type did not match the characteristic’s declared format (e.g. a string where a number was required).
Fields
ValueRange
A numeric value did not fit the declared format’s range.
Fields
Base64(String)
A tlv8 / data value was not valid base64.
CharacteristicStatus
A /characteristics response carried a non-zero HAP status code for
the identified characteristic.
Fields
Executor(String)
The request executor (in crate::AccessoryDatabase) failed.
Implementations§
Source§impl ModelError
impl ModelError
Sourcepub fn hap_status(&self) -> Option<HapStatus>
pub fn hap_status(&self) -> Option<HapStatus>
The named HAP status if this is a per-characteristic status error.
Trait Implementations§
Source§impl Debug for ModelError
impl Debug for ModelError
Source§impl Display for ModelError
impl Display for ModelError
Source§impl Error for ModelError
impl Error for ModelError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
Auto Trait Implementations§
impl !RefUnwindSafe for ModelError
impl !UnwindSafe for ModelError
impl Freeze for ModelError
impl Send for ModelError
impl Sync for ModelError
impl Unpin for ModelError
impl UnsafeUnpin for ModelError
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
Mutably borrows from an owned value. Read more