Crate tokio_fs

source ·
Expand description

Asynchronous file and standard stream adaptation.

This module contains utility methods and adapter types for input/output to files or standard streams (Stdin, Stdout, Stderr), and filesystem manipulation, for use within (and only within) a Tokio runtime.

Tasks run by worker threads should not block, as this could delay servicing reactor events. Portable filesystem operations are blocking, however. This module offers adapters which use a blocking annotation to inform the runtime that a blocking operation is required. When necessary, this allows the runtime to convert the current thread from a worker to a backup thread, where blocking is acceptable.

Usage

Where possible, users should prefer the provided asynchronous-specific traits such as AsyncRead, or methods returning a Future or Poll type. Adaptions also extend to traits like std::io::Read where methods return std::io::Result. Be warned that these adapted methods may return std::io::ErrorKind::WouldBlock if a worker thread can not be converted to a backup thread immediately. See tokio-threadpool for more details of the threading model and blocking.

Re-exports

pub use file::File;

Modules

Types for working with File.
OS-specific functionality.

Structs

Future returned by create_dir_all.
Future returned by create_dir.
Entries returned by the ReadDir stream.
Future returned by hard_link.
Future returned by metadata.
Options and flags which can be used to configure how a file is opened.
Stream of the entries in a directory.
Future returned by read_dir.
Future returned by read_link.
Future returned by remove_dir.
Future returned by remove_file.
Future returned by rename.
Future returned by set_permissions.
A handle to the standard error stream of a process.
A handle to the standard input stream of a process.
A handle to the standard output stream of a process.
Future returned by symlink_metadata.

Functions

Creates a new, empty directory at the provided path
Recursively create a directory and all of its parent components if they are missing.
Creates a new hard link on the filesystem.
Queries the file system metadata for a path.
Returns a stream over the entries within a directory.
Reads a symbolic link, returning the file that the link points to.
Removes an existing, empty directory.
Removes a file from the filesystem.
Rename a file or directory to a new name, replacing the original file if to already exists.
Changes the permissions found on a file or a directory.
Constructs a new handle to the standard error of the current process.
Constructs a new handle to the standard input of the current process.
Constructs a new handle to the standard output of the current process.
Queries the file system metadata for a path.