1use std::path::{Path, PathBuf};
8
9pub use vfsi_core::*;
10
11#[doc(hidden)]
12pub mod path {
13 pub use vfsi_core::path::*;
14}
15
16mod traits;
17pub use traits::{
18 DEFAULT_DIRECTORY_MAX_ENTRIES, DEFAULT_DIRECTORY_MAX_PATH_BYTES,
19 DEFAULT_READ_ALLV_MAX_TOTAL_BYTES, DEFAULT_READ_MAX_BYTES, DEFAULT_READ_STREAM_CHUNK_BYTES,
20 DEFAULT_WALK_MAX_DEPTH, DirPageCursor, ReadAllOptions, ReadDirOptions, ReadStreamOptions,
21 VecFs, VecFsExt, WalkOptions, rm_recursive,
22};
23mod io;
24pub use io::{VfFileHandle, VfOpenOptions};
25mod client;
26mod traversal;
27pub use client::{
28 DEFAULT_READV_MAX_TOTAL_BYTES, DirectoryListing, FsClient, FsDir, FsFile, FsRead, FsReadInto,
29 FsReadIntoResult, FsReadResult, FsWrite, FsWriteResult, OpenOptions, ResourceLimits,
30 SetMetadata, StreamCompletion, TraversalCompletion,
31};
32pub use traversal::{WalkControl, WalkEvent, WalkEventKind, walk_events};
33mod native;
34pub use native::{
35 CopyFileSystem, DirectoryFileSystem, FileSystem, LinkFileSystem, MetadataFileSystem,
36 NamespaceFileSystem, NativeFileSystem, VectorFileSystem,
37};
38
39pub mod sfsi {
41 pub use crate::{
42 CopyFileSystem, DirPageCursor, DirectoryFileSystem, FileSystem, FsClient, FsFile,
43 LinkFileSystem, MetadataFileSystem, NamespaceFileSystem, NativeFileSystem, OpenOptions,
44 ReadDirOptions, ReadStreamOptions, WalkOptions,
45 };
46 pub use vfsi_core::{Fd, VfAttrs, VfError, VfFile, VfOffset, VfResult, VfType};
47}
48
49pub mod vfsi {
51 pub use crate::{
52 DEFAULT_DIRECTORY_MAX_ENTRIES, DEFAULT_DIRECTORY_MAX_PATH_BYTES,
53 DEFAULT_READ_ALLV_MAX_TOTAL_BYTES, DEFAULT_READ_MAX_BYTES, DEFAULT_READ_STREAM_CHUNK_BYTES,
54 DEFAULT_WALK_MAX_DEPTH, DirPageCursor, ReadAllOptions, ReadDirOptions, ReadStreamOptions,
55 VecFs, VecFsExt, VectorFileSystem, WalkOptions, rm_recursive,
56 };
57 pub use vfsi_core::*;
58}
59
60#[cfg(feature = "test-support")]
61#[doc(hidden)]
62pub mod test_support;