[−][src]Struct tempfile::Builder
Create a new temporary file or directory with custom parameters.
Methods
impl<'a, 'b> Builder<'a, 'b>[src]
impl<'a, 'b> Builder<'a, 'b>pub fn new() -> Self[src]
pub fn new() -> SelfCreate a new Builder.
Examples
Create a named temporary file and write some data into it:
use tempfile::Builder; let named_tempfile = Builder::new() .prefix("my-temporary-note") .suffix(".txt") .rand_bytes(5) .tempfile()?; let name = named_tempfile .path() .file_name().and_then(OsStr::to_str); if let Some(name) = name { assert!(name.starts_with("my-temporary-note")); assert!(name.ends_with(".txt")); assert_eq!(name.len(), "my-temporary-note.txt".len() + 5); }
Create a temporary directory and add a file to it:
use tempfile::Builder; let dir = Builder::new() .prefix("my-temporary-dir") .rand_bytes(5) .tempdir()?; let file_path = dir.path().join("my-temporary-note.txt"); let mut file = File::create(file_path)?; writeln!(file, "Brian was here. Briefly.")?; // By closing the `TempDir` explicitly, we can check that it has // been deleted successfully. If we don't close it explicitly, // the directory will still be deleted when `dir` goes out // of scope, but we won't know whether deleting the directory // succeeded. drop(file); dir.close()?;
pub fn prefix(&mut self, prefix: &'a str) -> &mut Self[src]
pub fn prefix(&mut self, prefix: &'a str) -> &mut SelfSet a custom filename prefix.
Path separators are legal but not advisable.
Default: .tmp.
Examples
let named_tempfile = Builder::new() .prefix("my-temporary-note") .tempfile()?;
pub fn suffix(&mut self, suffix: &'b str) -> &mut Self[src]
pub fn suffix(&mut self, suffix: &'b str) -> &mut SelfSet a custom filename suffix.
Path separators are legal but not advisable. Default: empty.
Examples
let named_tempfile = Builder::new() .suffix(".txt") .tempfile()?;
pub fn rand_bytes(&mut self, rand: usize) -> &mut Self[src]
pub fn rand_bytes(&mut self, rand: usize) -> &mut SelfSet the number of random bytes.
Default: 6.
Examples
let named_tempfile = Builder::new() .rand_bytes(5) .tempfile()?;
pub fn tempfile(&self) -> Result<NamedTempFile>[src]
pub fn tempfile(&self) -> Result<NamedTempFile>Create the named temporary file.
Security
See the security docs on NamedTempFile.
Resource leaking
See the resource leaking docs on NamedTempFile.
Errors
If the file cannot be created, Err is returned.
Examples
let tempfile = Builder::new().tempfile()?;
pub fn tempfile_in<P: AsRef<Path>>(&self, dir: P) -> Result<NamedTempFile>[src]
pub fn tempfile_in<P: AsRef<Path>>(&self, dir: P) -> Result<NamedTempFile>Create the named temporary file in the specified directory.
Security
See the security docs on NamedTempFile.
Resource leaking
See the resource leaking docs on NamedTempFile.
Errors
If the file cannot be created, Err is returned.
Examples
let tempfile = Builder::new().tempfile_in("./")?;
pub fn tempdir(&self) -> Result<TempDir>[src]
pub fn tempdir(&self) -> Result<TempDir>Attempts to make a temporary directory inside of env::temp_dir() whose
name will have the prefix, prefix. The directory and
everything inside it will be automatically deleted once the
returned TempDir is destroyed.
Resource leaking
See the resource leaking docs on TempDir.
Errors
If the directory can not be created, Err is returned.
Examples
use std::fs::File; use std::io::Write; use tempfile::Builder; let tmp_dir = Builder::new().tempdir()?;
pub fn tempdir_in<P: AsRef<Path>>(&self, dir: P) -> Result<TempDir>[src]
pub fn tempdir_in<P: AsRef<Path>>(&self, dir: P) -> Result<TempDir>Attempts to make a temporary directory inside of dir.
The directory and everything inside it will be automatically
deleted once the returned TempDir is destroyed.
Resource leaking
See the resource leaking docs on TempDir.
Errors
If the directory can not be created, Err is returned.
Examples
use std::fs::{self, File}; use std::io::Write; use tempfile::Builder; let tmp_dir = Builder::new().tempdir_in("./")?;
Trait Implementations
impl<'a, 'b> Clone for Builder<'a, 'b>[src]
impl<'a, 'b> Clone for Builder<'a, 'b>fn clone(&self) -> Builder<'a, 'b>[src]
fn clone(&self) -> Builder<'a, 'b>Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)1.0.0[src]
fn clone_from(&mut self, source: &Self)Performs copy-assignment from source. Read more
impl<'a, 'b> Eq for Builder<'a, 'b>[src]
impl<'a, 'b> Eq for Builder<'a, 'b>impl<'a, 'b> Default for Builder<'a, 'b>[src]
impl<'a, 'b> Default for Builder<'a, 'b>impl<'a, 'b> PartialEq<Builder<'a, 'b>> for Builder<'a, 'b>[src]
impl<'a, 'b> PartialEq<Builder<'a, 'b>> for Builder<'a, 'b>fn eq(&self, other: &Builder<'a, 'b>) -> bool[src]
fn eq(&self, other: &Builder<'a, 'b>) -> boolThis method tests for self and other values to be equal, and is used by ==. Read more
fn ne(&self, other: &Builder<'a, 'b>) -> bool[src]
fn ne(&self, other: &Builder<'a, 'b>) -> boolThis method tests for !=.
impl<'a, 'b> Debug for Builder<'a, 'b>[src]
impl<'a, 'b> Debug for Builder<'a, 'b>Auto Trait Implementations
Blanket Implementations
impl<T> From for T[src]
impl<T> From for Timpl<T, U> Into for T where
U: From<T>, [src]
impl<T, U> Into for T where
U: From<T>, impl<T> ToOwned for T where
T: Clone, [src]
impl<T> ToOwned for T where
T: Clone, type Owned = T
fn to_owned(&self) -> T[src]
fn to_owned(&self) -> TCreates owned data from borrowed data, usually by cloning. Read more
fn clone_into(&self, target: &mut T)[src]
fn clone_into(&self, target: &mut T)🔬 This is a nightly-only experimental API. (toowned_clone_into)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more
impl<T, U> TryFrom for T where
T: From<U>, [src]
impl<T, U> TryFrom for T where
T: From<U>, type Error = !
try_from)The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>try_from)Performs the conversion.
impl<T> Borrow for T where
T: ?Sized, [src]
impl<T> Borrow for T where
T: ?Sized, impl<T> Any for T where
T: 'static + ?Sized, [src]
impl<T> Any for T where
T: 'static + ?Sized, fn get_type_id(&self) -> TypeId[src]
fn get_type_id(&self) -> TypeId🔬 This is a nightly-only experimental API. (get_type_id)
this method will likely be replaced by an associated static
Gets the TypeId of self. Read more
impl<T> BorrowMut for T where
T: ?Sized, [src]
impl<T> BorrowMut for T where
T: ?Sized, fn borrow_mut(&mut self) -> &mut T[src]
fn borrow_mut(&mut self) -> &mut TMutably borrows from an owned value. Read more
impl<T, U> TryInto for T where
U: TryFrom<T>, [src]
impl<T, U> TryInto for T where
U: TryFrom<T>,