yggdrasil/lib/vfs/src/lib.rs

38 lines
1.1 KiB
Rust

//! Virtual filesystem interfaces and driver implementation
#![cfg_attr(not(test), no_std)]
#![allow(clippy::new_ret_no_self, clippy::new_without_default)]
#![deny(missing_docs)]
#![feature(if_let_guard, maybe_uninit_slice, trait_alias, let_chains, new_uninit)]
#[cfg(test)]
extern crate hosted_tests;
extern crate alloc;
pub(crate) mod channel;
pub(crate) mod device;
pub(crate) mod file;
pub(crate) mod ioctx;
pub(crate) mod node;
pub(crate) mod path;
pub(crate) mod poll;
pub(crate) mod pty;
pub(crate) mod shared_memory;
pub(crate) mod socket;
pub(crate) mod traits;
pub use channel::MessagePayload;
pub use device::CharDevice;
pub use file::{DirectoryOpenPosition, File, FileRef, FileSet, InstanceData};
pub use ioctx::{Action, IoContext};
pub use node::{
impls, AccessToken, CommonImpl, CreateInfo, DirectoryImpl, Metadata, Node, NodeFlags, NodeRef,
RegularImpl, SymlinkImpl,
};
pub use poll::FdPoll;
pub use pty::{PseudoTerminal, PseudoTerminalMaster, PseudoTerminalSlave};
pub use shared_memory::SharedMemory;
pub use socket::{ConnectionSocket, ListenerSocket, PacketSocket, Socket};
pub use traits::{FileReadiness, Read, Seek, Write};