fast-fs 0.2.1

High-speed async file system traversal library with batteries-included file browser component
Documentation
// <FILE>crates/fast-fs/src/models/mod.rs</FILE> - <DESC>Models module</DESC>
// <VERS>VERSION: 0.5.0</VERS>
// <WCTX>Preparing for crates.io release</WCTX>
// <CLOG>Added module documentation</CLOG>

//! Core data types for file system operations.
//!
//! This module contains the fundamental types used throughout fast-fs:
//!
//! - [`FileEntry`] - Represents a file or directory with cached metadata
//! - [`FileList`] - Versioned file list with deferred sorting
//! - [`TraversalOptions`] - Configuration for directory traversal
//! - [`SortBy`] - Sort order variants for file lists
//!
//! # FileEntry
//!
//! [`FileEntry`] caches common metadata at construction time and provides
//! lazy methods for expensive operations like symlink resolution:
//!
//! ```no_run
//! # use fast_fs::FileEntry;
//! # fn example(entry: &FileEntry) {
//! // Cached (fast)
//! let name = &entry.name;
//! let is_dir = entry.is_dir;
//!
//! // Lazy (syscall on demand)
//! let is_exec = entry.is_executable();
//! let target = entry.resolve_symlink();
//! # }
//! ```

/// File entry representation with cached metadata
pub mod cls_file_entry;
/// Versioned file list with deferred sorting
pub mod cls_file_list;
/// Sort order variants for file lists
pub mod cls_sort_by;
/// Traversal configuration options
pub mod cls_traversal_options;

// Re-export commonly used types
pub use cls_file_entry::FileEntry;
pub use cls_file_list::FileList;
pub use cls_sort_by::SortBy;
pub use cls_traversal_options::TraversalOptions;

// <FILE>crates/fast-fs/src/models/mod.rs</FILE> - <DESC>Models module</DESC>
// <VERS>END OF VERSION: 0.4.0</VERS>