diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/mod.rs | 39 |
1 files changed, 0 insertions, 39 deletions
diff --git a/src/mod.rs b/src/mod.rs deleted file mode 100644 index 98a9164..0000000 --- a/src/mod.rs +++ /dev/null @@ -1,39 +0,0 @@ -use crate::{proto, sealed::Sealed}; -use std::marker::PhantomData; - -pub mod io; -pub mod mount; -pub mod ops; -pub mod session; - -pub trait Operation<'o>: Sealed + Sized { - type RequestBody: crate::proto::Structured<'o>; - type ReplyState; -} - -pub type Op<'o, O = ops::Any> = (Request<'o, O>, Reply<'o, O>); - -pub struct Request<'o, O: Operation<'o>> { - header: proto::InHeader, - body: O::RequestBody, -} - -#[must_use] -pub struct Reply<'o, O: Operation<'o>> { - session: &'o session::Session, - unique: u64, - state: O::ReplyState, -} - -#[must_use] -pub struct Done<'o>(PhantomData<&'o mut &'o ()>); - -impl Done<'_> { - fn new() -> Self { - Done(PhantomData) - } - - fn consume(self) { - drop(self); - } -} |
