temp v0.4.3 Temp

Summary

Functions

Cleans up the temporary files tracked

Returns {:ok, dir_path} where dir_path is the path is the path of the created temporary directory. Returns {:error, reason} if a failure occurs

Same as mkdir/1, but raises an exception on failure. Otherwise, returns a temporary directory path

Returns {:ok, fd, file_path} if no callback is passed, or {:ok, file_path} if callback is passed, where fd is the file descriptor of a temporary file and file_path is the path of the temporary file. When no callback is passed, the file descriptor should be closed. Returns {:error, reason} if a failure occurs

Same as open/1, but raises an exception on failure

Returns a {:ok, path} where path is a path that can be used freely in the system temporary directory, or {:error, reason} if it fails to get the system temporary directory

Same as path/1, but raises an exception on failure. Otherwise, returns a temporary path

Returns :ok when the tracking server used to track temporary files started properly

Same as track/1, but raises an exception on failure. Otherwise, returns :ok

Return the paths currently tracked

Types

options()
options() :: nil | Path.t | map

Functions

cleanup(tracker \\ get_tracker!(), opts \\ [])
cleanup(pid, Keyword.t) :: :ok | {:error, any}

Cleans up the temporary files tracked.

mkdir(options \\ %{})
mkdir(options) :: {:ok, Path.t} | {:error, any}

Returns {:ok, dir_path} where dir_path is the path is the path of the created temporary directory. Returns {:error, reason} if a failure occurs.

Options

See path/1.

mkdir!(options \\ %{})
mkdir!(options) :: Path.t

Same as mkdir/1, but raises an exception on failure. Otherwise, returns a temporary directory path.

open(options \\ nil, func \\ nil)
open(options, nil | (File.io_device -> any)) ::
  {:ok, File.io_device, Path.t} |
  {:error, any}

Returns {:ok, fd, file_path} if no callback is passed, or {:ok, file_path} if callback is passed, where fd is the file descriptor of a temporary file and file_path is the path of the temporary file. When no callback is passed, the file descriptor should be closed. Returns {:error, reason} if a failure occurs.

Options

See path/1.

open!(options \\ nil, func \\ nil)
open!(options, pid | nil) :: {File.io_device, Path.t}

Same as open/1, but raises an exception on failure.

path(options \\ nil)
path(options) :: {:ok, Path.t} | {:error, String.t}

Returns a {:ok, path} where path is a path that can be used freely in the system temporary directory, or {:error, reason} if it fails to get the system temporary directory.

Options

The following options can be used to customize the generated path

  • :prefix - prepends the given prefix to the path

  • :suffix - appends the given suffix to the path, this is useful to generate a file with a particular extension

path!(options \\ nil)
path!(options) :: Path.t

Same as path/1, but raises an exception on failure. Otherwise, returns a temporary path.

track()
track() :: Agent.on_start

Returns :ok when the tracking server used to track temporary files started properly.

track!()
track!() :: pid

Same as track/1, but raises an exception on failure. Otherwise, returns :ok

tracked(tracker \\ get_tracker!())

Return the paths currently tracked.