pub struct TempDir { /* private fields */ }
Expand description
The path of an existing writable directory in a system temporary directory.
Drop the struct to delete the directory and everything under it. Deletes symbolic links and does not follow them.
Ignores any error while deleting.
See TempDir::panic_on_cleanup_error
.
§Example
use temp_dir::TempDir;
let d = TempDir::new().unwrap();
// Prints "/tmp/t1a9b-0".
println!("{:?}", d.path());
let f = d.child("file1");
// Prints "/tmp/t1a9b-0/file1".
println!("{:?}", f);
std::fs::write(&f, b"abc").unwrap();
assert_eq!(
"abc",
std::fs::read_to_string(&f).unwrap(),
);
// Prints "/tmp/t1a9b-1".
println!("{:?}", TempDir::new().unwrap().path());
Implementations§
Source§impl TempDir
impl TempDir
Sourcepub fn new() -> Result<Self, Error>
pub fn new() -> Result<Self, Error>
Create a new empty directory in a system temporary directory.
Drop the struct to delete the directory and everything under it. Deletes symbolic links and does not follow them.
Ignores any error while deleting.
See TempDir::panic_on_cleanup_error
.
§Errors
Returns Err
when it fails to create the directory.
§Example
// Prints "/tmp/t1a9b-0".
println!("{:?}", temp_dir::TempDir::new().unwrap().path());
Sourcepub fn with_prefix(prefix: impl AsRef<str>) -> Result<Self, Error>
pub fn with_prefix(prefix: impl AsRef<str>) -> Result<Self, Error>
Create a new empty directory in a system temporary directory.
Use prefix
as the first part of the directory’s name.
Drop the struct to delete the directory and everything under it. Deletes symbolic links and does not follow them.
Ignores any error while deleting.
See TempDir::panic_on_cleanup_error
.
§Errors
Returns Err
when it fails to create the directory.
§Example
// Prints "/tmp/ok1a9b-0".
println!("{:?}", temp_dir::TempDir::with_prefix("ok").unwrap().path());
Sourcepub fn cleanup(self) -> Result<(), Error>
pub fn cleanup(self) -> Result<(), Error>
Remove the directory and its contents now.
§Errors
Returns an error if the directory exists and we fail to remove it and its contents.
Sourcepub fn panic_on_cleanup_error(self) -> Self
pub fn panic_on_cleanup_error(self) -> Self
Make the struct panic on drop if it hits an error while removing the directory or its contents.