d_major/
lib.rs

1/*
2 * Description: Traverse directory trees in parallel, using relative entries to minimize allocation
3 * and maximize parallelism.
4 *
5 * Copyright (C) 2025 d@nny mc² <dmc2@hypnicjerk.ai>
6 * SPDX-License-Identifier: LGPL-3.0-or-later
7 *
8 * This program is free software: you can redistribute it and/or modify
9 * it under the terms of the GNU Lesser General Public License as published
10 * by the Free Software Foundation, either version 3 of the License, or
11 * (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16 * GNU Lesser General Public License for more details.
17 *
18 * You should have received a copy of the GNU Lesser General Public License
19 * along with this program.  If not, see <https://www.gnu.org/licenses/>.
20 */
21
22//! Traverse directory trees in parallel, using relative entries to minimize allocation and
23//! maximize parallelism.
24
25/* Ensure any doctest warnings fail the doctest! */
26#![doc(test(attr(deny(warnings))))]
27/* #![warn(missing_docs)] */
28#![cfg_attr(docsrs, feature(doc_auto_cfg))]
29#![cfg_attr(feature = "nightly", feature(io_const_error))]
30#![cfg_attr(feature = "nightly", feature(raw_os_error_ty))]
31#![cfg_attr(feature = "nightly", feature(maybe_uninit_write_slice))]
32#![cfg_attr(feature = "nightly", feature(dir_entry_ext2))]
33
34pub mod c_string;
35pub mod crawl;
36pub mod errno;
37pub(crate) mod handles;
38pub(crate) mod libc_imports;
39#[deny(missing_docs)]
40pub mod null_term_str;
41pub mod vfs;
42pub mod visit;
43
44/// See [`usize`](primitive@usize).
45/// See [`slice`](primitive@slice).
46pub mod std_docs {
47  pub use ::memchr;
48  pub use ::parking_lot;
49  pub use ::std::{cell, iter, os::fd, pin};
50}