xwt_error/
lib.rs

1//! A suite of reusable error types that naturally emerge from the `xwt` API.
2//! Use when you don't want/need your own more precise types.
3
4#![allow(missing_docs, clippy::missing_docs_in_private_items)]
5
6mod impls;
7
8use xwt_core::prelude::*;
9
10pub enum Connect<Endpoint>
11where
12    Endpoint: xwt_core::endpoint::Connect,
13{
14    Connect(Endpoint::Error),
15    Connecting(<Endpoint::Connecting as xwt_core::endpoint::connect::Connecting>::Error),
16}
17
18pub enum Accept<Endpoint>
19where
20    Endpoint: xwt_core::endpoint::Accept,
21{
22    Accept(Endpoint::Error),
23}
24
25pub enum Accepting<TAccepting>
26where
27    TAccepting: xwt_core::endpoint::accept::Accepting,
28{
29    Accepting(TAccepting::Error),
30    RequestOk(<TAccepting::Request as xwt_core::endpoint::accept::Request>::OkError),
31    RequestClose(<TAccepting::Request as xwt_core::endpoint::accept::Request>::CloseError),
32}
33
34pub enum OpenBi<Session>
35where
36    Session: xwt_core::session::stream::OpenBi,
37{
38    Open(<Session as xwt_core::session::stream::OpenBi>::Error),
39    Opening(BiStreamOpeningErrorFor<Session>),
40}
41
42pub enum OpenUni<Session>
43where
44    Session: xwt_core::session::stream::OpenUni,
45{
46    Open(<Session as xwt_core::session::stream::OpenUni>::Error),
47    Opening(UniStreamOpeningErrorFor<Session>),
48}