trash_parallelism 0.1.102

Azzybana Raccoon's comprehensive parallelism library.
Documentation
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="File System and Path Utilities"><title>trash_utilities::sys::path - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2"href="../../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../../static.files/rustdoc-ca0dd0c4.css"><script id="default-settings" 
data-use_system_theme="false"
data-theme="trash"></script><meta name="rustdoc-vars" data-root-path="../../../" data-static-root-path="../../../static.files/" data-current-crate="trash_utilities" data-themes="trash" data-resource-suffix="" data-rustdoc-version="1.92.0-nightly (b925a865e 2025-10-09)" data-channel="nightly" data-search-js="search-8d3311b9.js" data-stringdex-js="stringdex-828709d0.js" data-settings-js="settings-c38705f0.js" ><script src="../../../static.files/storage-e2aeef58.js"></script><script defer src="../sidebar-items.js"></script><script defer src="../../../static.files/main-ce535bd0.js"></script><noscript><link rel="stylesheet" href="../../../static.files/noscript-263c88ec.css"></noscript><link rel="alternate icon" type="image/png" href="../../../static.files/favicon-32x32-eab170b8.png"><link rel="icon" type="image/svg+xml" href="../../../static.files/favicon-044be391.svg"></head><body class="rustdoc mod"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><rustdoc-topbar><h2><a href="#">Module path</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><a class="logo-container" href="../../../trash_utilities/index.html"><img src="https://avatars.githubusercontent.com/u/121582001?v=4&#38;size=64" alt="logo"></a><h2><a href="../../../trash_utilities/index.html">trash_<wbr>utilities</a><span class="version">0.1.0</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Module path</a></h2><h3><a href="#">Sections</a></h3><ul class="block top-toc"><li><a href="#file-system-and-path-utilities" title="File System and Path Utilities">File System and Path Utilities</a><ul><li><a href="#overview" title="Overview">Overview</a></li><li><a href="#usage-patterns" title="Usage Patterns">Usage Patterns</a></li></ul></li></ul><h3><a href="#functions">Module Items</a></h3><ul class="block"><li><a href="#functions" title="Functions">Functions</a></li></ul></section><div id="rustdoc-modnav"><h2><a href="../index.html">In trash_<wbr>utilities::<wbr>sys</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="../../index.html">trash_utilities</a>::<wbr><a href="../index.html">sys</a></div><h1>Module <span>path</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../../../src/trash_utilities/sys/path.rs.html#1-519">Source</a> </span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><h2 id="file-system-and-path-utilities"><a class="doc-anchor" href="#file-system-and-path-utilities">§</a>File System and Path Utilities</h2>
<p>This module provides comprehensive file system operations with parallel processing,
serialization support, and async I/O capabilities.</p>
<h3 id="overview"><a class="doc-anchor" href="#overview">§</a>Overview</h3>
<p>The <code>path</code> module offers:</p>
<ul>
<li><strong>Path Manipulation</strong>: Normalization, joining, extension extraction</li>
<li><strong>File Metadata</strong>: Size, modification time, type checking</li>
<li><strong>Parallel Operations</strong>: Batch metadata retrieval and file searching</li>
<li><strong>Serialization</strong>: JSON serialization for file information</li>
<li><strong>Async I/O</strong>: Non-blocking file operations</li>
<li><strong>Recursive Operations</strong>: Directory traversal and file discovery</li>
</ul>
<h3 id="usage-patterns"><a class="doc-anchor" href="#usage-patterns">§</a>Usage Patterns</h3><h4 id="basic-path-operations"><a class="doc-anchor" href="#basic-path-operations">§</a>Basic Path Operations</h4>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>trash_analyzer::sys::path::<span class="kw-2">*</span>;

<span class="kw">let </span>normalized = normalize_path(<span class="string">"./foo/../bar"</span>);
<span class="kw">let </span>joined = join_paths(<span class="string">"home"</span>, <span class="kw-2">&amp;</span>[<span class="string">"user"</span>, <span class="string">"docs"</span>]);
<span class="kw">let </span>ext = get_file_extension(<span class="string">"file.txt"</span>);</code></pre><a class="test-arrow" target="_blank" title="Run code" href="https://play.rust-lang.org/?code=%23!%5Ballow(unused)%5D%0Afn+main()+%7B%0A++++use+trash_analyzer::sys::path::*;%0A++++%0A++++let+normalized+=+normalize_path(%22./foo/../bar%22);%0A++++let+joined+=+join_paths(%22home%22,+%26%5B%22user%22,+%22docs%22%5D);%0A++++let+ext+=+get_file_extension(%22file.txt%22);%0A%7D&amp;edition=2024"></a></div><h4 id="file-metadata"><a class="doc-anchor" href="#file-metadata">§</a>File Metadata</h4>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>trash_analyzer::sys::path::<span class="kw-2">*</span>;

<span class="kw">let </span>size = get_file_size(<span class="string">"file.txt"</span>).unwrap();
<span class="kw">let </span>modified = get_file_modified_time(<span class="string">"file.txt"</span>).unwrap();
<span class="kw">let </span>is_file = is_file(<span class="string">"file.txt"</span>);</code></pre><a class="test-arrow" target="_blank" title="Run code" href="https://play.rust-lang.org/?code=%23!%5Ballow(unused)%5D%0Afn+main()+%7B%0A++++use+trash_analyzer::sys::path::*;%0A++++%0A++++let+size+=+get_file_size(%22file.txt%22).unwrap();%0A++++let+modified+=+get_file_modified_time(%22file.txt%22).unwrap();%0A++++let+is_file+=+is_file(%22file.txt%22);%0A%7D&amp;edition=2024"></a></div></div></details><h2 id="functions" class="section-header">Functions<a href="#functions" class="anchor">§</a></h2><dl class="item-table"><dt><a class="fn" href="fn.create_temp_file.html" title="fn trash_utilities::sys::path::create_temp_file">create_<wbr>temp_<wbr>file</a></dt><dd>Creates a new temporary file.</dd><dt><a class="fn" href="fn.deserialize_file_info.html" title="fn trash_utilities::sys::path::deserialize_file_info">deserialize_<wbr>file_<wbr>info</a></dt><dd>Deserializes JSON to file info (for completeness, though metadata can’t be fully reconstructed).</dd><dt><a class="fn" href="fn.find_files_parallel.html" title="fn trash_utilities::sys::path::find_files_parallel">find_<wbr>files_<wbr>parallel</a></dt><dd>Finds files matching a pattern in parallel using our parallel module.</dd><dt><a class="fn" href="fn.get_file_extension.html" title="fn trash_utilities::sys::path::get_file_extension">get_<wbr>file_<wbr>extension</a></dt><dd>Gets the file extension from a path.</dd><dt><a class="fn" href="fn.get_file_metadata.html" title="fn trash_utilities::sys::path::get_file_metadata">get_<wbr>file_<wbr>metadata</a></dt><dd>Gets file metadata synchronously.</dd><dt><a class="fn" href="fn.get_file_metadata_sync.html" title="fn trash_utilities::sys::path::get_file_metadata_sync">get_<wbr>file_<wbr>metadata_<wbr>sync</a></dt><dd>Gets file metadata synchronously (placeholder for future async version).</dd><dt><a class="fn" href="fn.get_file_modified_time.html" title="fn trash_utilities::sys::path::get_file_modified_time">get_<wbr>file_<wbr>modified_<wbr>time</a></dt><dd>Gets the last modified time of a file.</dd><dt><a class="fn" href="fn.get_file_size.html" title="fn trash_utilities::sys::path::get_file_size">get_<wbr>file_<wbr>size</a></dt><dd>Gets file size.</dd><dt><a class="fn" href="fn.get_file_stem.html" title="fn trash_utilities::sys::path::get_file_stem">get_<wbr>file_<wbr>stem</a></dt><dd>Gets the file name without extension.</dd><dt><a class="fn" href="fn.get_files_metadata_parallel.html" title="fn trash_utilities::sys::path::get_files_metadata_parallel">get_<wbr>files_<wbr>metadata_<wbr>parallel</a></dt><dd>Gets metadata for multiple files in parallel using our parallel module.</dd><dt><a class="fn" href="fn.is_directory.html" title="fn trash_utilities::sys::path::is_directory">is_<wbr>directory</a></dt><dd>Checks if a path exists and is a directory.</dd><dt><a class="fn" href="fn.is_file.html" title="fn trash_utilities::sys::path::is_file">is_file</a></dt><dd>Checks if a path exists and is a file.</dd><dt><a class="fn" href="fn.join_paths.html" title="fn trash_utilities::sys::path::join_paths">join_<wbr>paths</a></dt><dd>Joins multiple path components into a single path.</dd><dt><a class="fn" href="fn.list_directory.html" title="fn trash_utilities::sys::path::list_directory">list_<wbr>directory</a></dt><dd>Lists directory contents synchronously.</dd><dt><a class="fn" href="fn.normalize_path.html" title="fn trash_utilities::sys::path::normalize_path">normalize_<wbr>path</a></dt><dd>Normalizes a file path, resolving <code>.</code> and <code>..</code> components.</dd><dt><a class="fn" href="fn.serialize_file_info.html" title="fn trash_utilities::sys::path::serialize_file_info">serialize_<wbr>file_<wbr>info</a></dt><dd>Serializes file metadata to JSON using our serde module.</dd><dt><a class="fn" href="fn.walk_directory.html" title="fn trash_utilities::sys::path::walk_directory">walk_<wbr>directory</a></dt><dd>Recursively walks a directory and returns all file paths.</dd></dl></section></div></main></body></html>