From 70baa472b2bee69f205cc1aada304d597b858005 Mon Sep 17 00:00:00 2001 From: Alejandro Soto Date: Tue, 4 Jan 2022 06:49:48 -0600 Subject: Move crate::fuse::* to the top-level --- src/fuse/ops/mod.rs | 68 ----------------------------------------------------- 1 file changed, 68 deletions(-) delete mode 100644 src/fuse/ops/mod.rs (limited to 'src/fuse/ops/mod.rs') diff --git a/src/fuse/ops/mod.rs b/src/fuse/ops/mod.rs deleted file mode 100644 index 39a4ef0..0000000 --- a/src/fuse/ops/mod.rs +++ /dev/null @@ -1,68 +0,0 @@ -use std::{ - ffi::{CStr, OsStr}, - os::unix::ffi::OsStrExt, -}; - -use crate::util::OutputChain; -use super::{private_trait::Sealed, Done, Operation, Reply, Request}; -use bytemuck::{bytes_of, Pod}; - -mod dir; -mod entry; -mod global; -mod open; -mod rw; -mod xattr; - -pub use dir::{BufferedReaddir, Lookup, Readdir}; -pub use entry::{Forget, Getattr}; -pub use global::{Init, Statfs}; -pub use open::{Access, Open, Opendir, Release, Releasedir}; -pub use rw::{Flush, Read, Readlink, Write}; -pub use xattr::{Getxattr, Listxattr, Removexattr, Setxattr}; - -pub(crate) use global::InitState; - -pub trait FromRequest<'o, O: Operation<'o>> { - //TODO: Shouldn't be public - fn from_request(request: &Request<'o, O>) -> Self; -} - -pub enum Any {} - -impl Sealed for Any {} - -impl<'o> Operation<'o> for Any { - type RequestBody = (); - type ReplyTail = (); -} - -impl<'o, O: Operation<'o>> FromRequest<'o, O> for () { - fn from_request(_request: &Request<'o, O>) -> Self {} -} - -impl<'o, O: Operation<'o>> Reply<'o, O> { - fn empty(self) -> Done<'o> { - self.chain(OutputChain::empty()) - } - - fn single(self, single: &P) -> Done<'o> { - self.chain(OutputChain::tail(&[bytes_of(single)])) - } - - fn inner(self, deref: impl FnOnce(&Self) -> &[u8]) -> Done<'o> { - let result = self - .session - .ok(self.unique, OutputChain::tail(&[deref(&self)])); - self.finish(result) - } - - fn chain(self, chain: OutputChain<'_>) -> Done<'o> { - let result = self.session.ok(self.unique, chain); - self.finish(result) - } -} - -fn c_to_os(c_str: &CStr) -> &OsStr { - OsStr::from_bytes(c_str.to_bytes()) -} -- cgit v1.2.3