Function glib::file_open_tmp

source ·
pub fn file_open_tmp(
    tmpl: Option<impl AsRef<Path>>
) -> Result<(RawFd, PathBuf), Error>
Expand description

Opens a file for writing in the preferred directory for temporary files (as returned by g_get_tmp_dir()).

@tmpl should be a string in the GLib file name encoding containing a sequence of six ‘X’ characters, as the parameter to g_mkstemp(). However, unlike these functions, the template should only be a basename, no directory components are allowed. If template is None, a default template is used.

Note that in contrast to g_mkstemp() (and mkstemp()) @tmpl is not modified, and might thus be a read-only literal string.

Upon success, and if @name_used is non-None, the actual name used is returned in @name_used. This string should be freed with g_free() when not needed any longer. The returned name is in the GLib file name encoding.

§tmpl

Template for file name, as in g_mkstemp(), basename only, or None for a default template

§Returns

A file handle (as from open()) to the file opened for reading and writing. The file is opened in binary mode on platforms where there is a difference. The file handle should be closed with close(). In case of errors, -1 is returned and @error will be set.

§name_used

location to store actual name used, or None