#[non_exhaustive]pub enum GcsError {
Io(Error),
Json(Error),
Hvsock(String),
Protocol(String),
Negotiation(String),
Timeout,
Closed,
}Expand description
Errors that can occur while talking to a UVM’s Guest Compute Service.
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.
Io(Error)
Underlying I/O failure on the hvsock transport (read/write/connect).
Json(Error)
JSON encode/decode failure on a GCS protocol message payload.
Hvsock(String)
Hyper-V socket (AF_HYPERV) setup or address resolution failure.
Protocol(String)
Generic protocol-layer violation — unexpected message type, bad sequence number, frame length out of range, etc.
Negotiation(String)
Capability/version negotiation with the in-guest GCS failed.
Timeout
An RPC or read/write operation exceeded its deadline.
Closed
The bridge connection has been closed (cleanly or by the peer).
Trait Implementations§
Source§impl Error for GcsError
impl Error for GcsError
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 GcsError
impl !UnwindSafe for GcsError
impl Freeze for GcsError
impl Send for GcsError
impl Sync for GcsError
impl Unpin for GcsError
impl UnsafeUnpin for GcsError
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