This repository has been archived on 2022-04-04. You can view files and clone it, but cannot push or open issues or pull requests.
ludum-dare-50/rustdoc/directories/struct.ProjectDirs.html

107 lines
43 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="`ProjectDirs` computes the location of cache, config or data directories for a specific application, which are derived from the standard directories and the name of the project&#x2F;organization."><meta name="keywords" content="rust, rustlang, rust-lang, ProjectDirs"><title>ProjectDirs in directories - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" type="text/css" href="../normalize.css"><link rel="stylesheet" type="text/css" href="../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../ayu.css" disabled><link rel="stylesheet" type="text/css" href="../dark.css" disabled><link rel="stylesheet" type="text/css" href="../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../storage.js"></script><script src="../crates.js"></script><script defer src="../main.js"></script>
<noscript><link rel="stylesheet" href="../noscript.css"></noscript><link rel="alternate icon" type="image/png" href="../favicon-16x16.png"><link rel="alternate icon" type="image/png" href="../favicon-32x32.png"><link rel="icon" type="image/svg+xml" href="../favicon.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu" role="button">&#9776;</div><a class="sidebar-logo" href="../directories/index.html"><div class="logo-container"><img class="rust-logo" src="../rust-logo.png" alt="logo"></div>
</a><h2 class="location">Struct ProjectDirs</h2><div class="sidebar-elems"><div class="block items"><h3 class="sidebar-title"><a href="#implementations">Methods</a></h3><div class="sidebar-links"><a href="#method.cache_dir">cache_dir</a><a href="#method.config_dir">config_dir</a><a href="#method.data_dir">data_dir</a><a href="#method.data_local_dir">data_local_dir</a><a href="#method.from">from</a><a href="#method.from_path">from_path</a><a href="#method.preference_dir">preference_dir</a><a href="#method.project_path">project_path</a><a href="#method.runtime_dir">runtime_dir</a><a href="#method.state_dir">state_dir</a></div><h3 class="sidebar-title"><a href="#trait-implementations">Trait Implementations</a></h3><div class="sidebar-links"><a href="#impl-Clone">Clone</a><a href="#impl-Debug">Debug</a></div><h3 class="sidebar-title"><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><div class="sidebar-links"><a href="#impl-RefUnwindSafe">RefUnwindSafe</a><a href="#impl-Send">Send</a><a href="#impl-Sync">Sync</a><a href="#impl-Unpin">Unpin</a><a href="#impl-UnwindSafe">UnwindSafe</a></div><h3 class="sidebar-title"><a href="#blanket-implementations">Blanket Implementations</a></h3><div class="sidebar-links"><a href="#impl-Any">Any</a><a href="#impl-Borrow%3CT%3E">Borrow&lt;T&gt;</a><a href="#impl-BorrowMut%3CT%3E">BorrowMut&lt;T&gt;</a><a href="#impl-From%3CT%3E">From&lt;T&gt;</a><a href="#impl-Into%3CU%3E">Into&lt;U&gt;</a><a href="#impl-ToOwned">ToOwned</a><a href="#impl-TryFrom%3CU%3E">TryFrom&lt;U&gt;</a><a href="#impl-TryInto%3CU%3E">TryInto&lt;U&gt;</a></div></div><h2 class="location">Other items in<br><a href="index.html">directories</a></h2><div id="sidebar-vars" data-name="ProjectDirs" data-ty="struct" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../directories/index.html"><img class="rust-logo" src="../rust-logo.png" alt="logo"></a><nav class="sub"><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="18" height="18" alt="Pick another theme!" src="../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../settings.html" title="settings"><img width="18" height="18" alt="Change settings" src="../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><h1 class="fqn"><span class="in-band">Struct <a href="index.html">directories</a>::<wbr><a class="struct" href="#">ProjectDirs</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span><a class="srclink" href="../src/directories/lib.rs.html#129-140" title="goto source code">[src]</a></span></h1><div class="docblock item-decl"><pre class="rust struct"><code>pub struct ProjectDirs { /* fields omitted */ }</code></pre></div><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p><code>ProjectDirs</code> computes the location of cache, config or data directories for a specific application,
which are derived from the standard directories and the name of the project/organization.</p>
<h2 id="examples" class="section-header"><a href="#examples">Examples</a></h2>
<p>All examples on this page are computed with a user named <em>Alice</em>,
and a <code>ProjectDirs</code> struct created with <code>ProjectDirs::from(&quot;com&quot;, &quot;Foo Corp&quot;, &quot;Bar App&quot;)</code>.</p>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use</span> <span class="ident">directories::ProjectDirs</span>;
<span class="kw">if</span> <span class="kw">let</span> <span class="prelude-val">Some</span>(<span class="ident">proj_dirs</span>) <span class="op">=</span> <span class="ident">ProjectDirs::from</span>(<span class="string">&quot;com&quot;</span>, <span class="string">&quot;Foo Corp&quot;</span>, <span class="string">&quot;Bar App&quot;</span>) {
<span class="ident">proj_dirs</span>.<span class="ident">config_dir</span>();
<span class="comment">// Linux: /home/alice/.config/barapp</span>
<span class="comment">// Windows: C:\Users\Alice\AppData\Roaming\Foo Corp\Bar App</span>
<span class="comment">// macOS: /Users/Alice/Library/Application Support/com.Foo-Corp.Bar-App</span>
}</code></pre></div>
</div></details><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor"></a></h2><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../src/directories/lib.rs.html#382-503" title="goto source code">[src]</a></div><a href="#impl" class="anchor"></a><h3 class="code-header in-band">impl <a class="struct" href="struct.ProjectDirs.html" title="struct directories::ProjectDirs">ProjectDirs</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.from_path" class="method has-srclink"><div class="rightside"><a class="srclink" href="../src/directories/lib.rs.html#390-392" title="goto source code">[src]</a></div><a href="#method.from_path" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.from_path" class="fnname">from_path</a>(project_path: <a class="struct" href="https://doc.rust-lang.org/1.59.0/std/path/struct.PathBuf.html" title="struct std::path::PathBuf">PathBuf</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.59.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="struct.ProjectDirs.html" title="struct directories::ProjectDirs">ProjectDirs</a>&gt;</h4></div></summary><div class="docblock"><p>Creates a <code>ProjectDirs</code> struct directly from a <code>PathBuf</code> value.
The argument is used verbatim and is not adapted to operating system standards.</p>
<p>The use of <code>ProjectDirs::from_path</code> is strongly discouraged, as its results will
not follow operating system standards on at least two of three platforms.</p>
<p>Use <a href="struct.ProjectDirs.html#method.from" title="ProjectDirs::from"><code>ProjectDirs::from</code></a> instead.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.from" class="method has-srclink"><div class="rightside"><a class="srclink" href="../src/directories/lib.rs.html#416-418" title="goto source code">[src]</a></div><a href="#method.from" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.from" class="fnname">from</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;qualifier: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.59.0/std/primitive.str.html">str</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;organization: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.59.0/std/primitive.str.html">str</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;application: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.59.0/std/primitive.str.html">str</a><br>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.59.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;<a class="struct" href="struct.ProjectDirs.html" title="struct directories::ProjectDirs">ProjectDirs</a>&gt;</h4></div></summary><div class="docblock"><p>Creates a <code>ProjectDirs</code> struct from values describing the project.</p>
<p>The returned value depends on the operating system and is either</p>
<ul>
<li><code>Some</code>, containing project directory paths based on the state of the systems paths at the time <code>new()</code> was invoked, or</li>
<li><code>None</code>, if no valid home directory path could be retrieved from the operating system.</li>
</ul>
<p>To determine whether a system provides a valid <code>$HOME</code> path, please refer to <a href="struct.BaseDirs.html#method.new" title="BaseDirs::new"><code>BaseDirs::new</code></a></p>
<p>The use of <code>ProjectDirs::from</code> (instead of <code>ProjectDirs::from_path</code>) is strongly encouraged,
as its results will follow operating system standards on Linux, macOS and Windows.</p>
<h5 id="parameters" class="section-header"><a href="#parameters">Parameters</a></h5>
<ul>
<li><code>qualifier</code> The reverse domain name notation of the application, excluding the organization or application name itself.<br/>
An empty string can be passed if no qualifier should be used (only affects macOS).<br/>
Example values: <code>&quot;com.example&quot;</code>, <code>&quot;org&quot;</code>, <code>&quot;uk.co&quot;</code>, <code>&quot;io&quot;</code>, <code>&quot;&quot;</code></li>
<li><code>organization</code> The name of the organization that develops this application, or for which the application is developed.<br/>
An empty string can be passed if no organization should be used (only affects macOS and Windows).<br/>
Example values: <code>&quot;Foo Corp&quot;</code>, <code>&quot;Alice and Bob Inc&quot;</code>, <code>&quot;&quot;</code></li>
<li><code>application</code> The name of the application itself.<br/>
Example values: <code>&quot;Bar App&quot;</code>, <code>&quot;ExampleProgram&quot;</code>, <code>&quot;Unicorn-Programme&quot;</code></li>
</ul>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.project_path" class="method has-srclink"><div class="rightside"><a class="srclink" href="../src/directories/lib.rs.html#421-423" title="goto source code">[src]</a></div><a href="#method.project_path" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.project_path" class="fnname">project_path</a>(&amp;self) -&gt; &amp;<a class="struct" href="https://doc.rust-lang.org/1.59.0/std/path/struct.Path.html" title="struct std::path::Path">Path</a></h4></div></summary><div class="docblock"><p>Returns the project path fragment used to compute the projects cache/config/data directories.
The value is derived from the <code>ProjectDirs::from</code> call and is platform-dependent.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.cache_dir" class="method has-srclink"><div class="rightside"><a class="srclink" href="../src/directories/lib.rs.html#431-433" title="goto source code">[src]</a></div><a href="#method.cache_dir" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.cache_dir" class="fnname">cache_dir</a>(&amp;self) -&gt; &amp;<a class="struct" href="https://doc.rust-lang.org/1.59.0/std/path/struct.Path.html" title="struct std::path::Path">Path</a></h4></div></summary><div class="docblock"><p>Returns the path to the projects cache directory.</p>
<div><table><thead><tr><th>Platform</th><th>Value</th><th>Example</th></tr></thead><tbody>
<tr><td>Linux</td><td><code>$XDG_CACHE_HOME</code>/<code>_project_path_</code> or <code>$HOME</code>/.cache/<code>_project_path_</code></td><td>/home/alice/.cache/barapp</td></tr>
<tr><td>macOS</td><td><code>$HOME</code>/Library/Caches/<code>_project_path_</code></td><td>/Users/Alice/Library/Caches/com.Foo-Corp.Bar-App</td></tr>
<tr><td>Windows</td><td><code>{FOLDERID_LocalAppData}</code>\<code>_project_path_</code>\cache</td><td>C:\Users\Alice\AppData\Local\Foo Corp\Bar App\cache</td></tr>
</tbody></table>
</div></div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.config_dir" class="method has-srclink"><div class="rightside"><a class="srclink" href="../src/directories/lib.rs.html#441-443" title="goto source code">[src]</a></div><a href="#method.config_dir" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.config_dir" class="fnname">config_dir</a>(&amp;self) -&gt; &amp;<a class="struct" href="https://doc.rust-lang.org/1.59.0/std/path/struct.Path.html" title="struct std::path::Path">Path</a></h4></div></summary><div class="docblock"><p>Returns the path to the projects config directory.</p>
<div><table><thead><tr><th>Platform</th><th>Value</th><th>Example</th></tr></thead><tbody>
<tr><td>Linux</td><td><code>$XDG_CONFIG_HOME</code>/<code>_project_path_</code> or <code>$HOME</code>/.config/<code>_project_path_</code></td><td>/home/alice/.config/barapp</td></tr>
<tr><td>macOS</td><td><code>$HOME</code>/Library/Application Support/<code>_project_path_</code></td><td>/Users/Alice/Library/Application Support/com.Foo-Corp.Bar-App</td></tr>
<tr><td>Windows</td><td><code>{FOLDERID_RoamingAppData}</code>\<code>_project_path_</code>\config</td><td>C:\Users\Alice\AppData\Roaming\Foo Corp\Bar App\config</td></tr>
</tbody></table>
</div></div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.data_dir" class="method has-srclink"><div class="rightside"><a class="srclink" href="../src/directories/lib.rs.html#451-453" title="goto source code">[src]</a></div><a href="#method.data_dir" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.data_dir" class="fnname">data_dir</a>(&amp;self) -&gt; &amp;<a class="struct" href="https://doc.rust-lang.org/1.59.0/std/path/struct.Path.html" title="struct std::path::Path">Path</a></h4></div></summary><div class="docblock"><p>Returns the path to the projects data directory.</p>
<div><table><thead><tr><th>Platform</th><th>Value</th><th>Example</th></tr></thead><tbody>
<tr><td>Linux</td><td><code>$XDG_DATA_HOME</code>/<code>_project_path_</code> or <code>$HOME</code>/.local/share/<code>_project_path_</code></td><td>/home/alice/.local/share/barapp</td></tr>
<tr><td>macOS</td><td><code>$HOME</code>/Library/Application Support/<code>_project_path_</code></td><td>/Users/Alice/Library/Application Support/com.Foo-Corp.Bar-App</td></tr>
<tr><td>Windows</td><td><code>{FOLDERID_RoamingAppData}</code>\<code>_project_path_</code>\data</td><td>C:\Users\Alice\AppData\Roaming\Foo Corp\Bar App\data</td></tr>
</tbody></table>
</div></div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.data_local_dir" class="method has-srclink"><div class="rightside"><a class="srclink" href="../src/directories/lib.rs.html#461-463" title="goto source code">[src]</a></div><a href="#method.data_local_dir" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.data_local_dir" class="fnname">data_local_dir</a>(&amp;self) -&gt; &amp;<a class="struct" href="https://doc.rust-lang.org/1.59.0/std/path/struct.Path.html" title="struct std::path::Path">Path</a></h4></div></summary><div class="docblock"><p>Returns the path to the projects local data directory.</p>
<div><table><thead><tr><th>Platform</th><th>Value</th><th>Example</th></tr></thead><tbody>
<tr><td>Linux</td><td><code>$XDG_DATA_HOME</code>/<code>_project_path_</code> or <code>$HOME</code>/.local/share/<code>_project_path_</code></td><td>/home/alice/.local/share/barapp</td></tr>
<tr><td>macOS</td><td><code>$HOME</code>/Library/Application Support/<code>_project_path_</code></td><td>/Users/Alice/Library/Application Support/com.Foo-Corp.Bar-App</td></tr>
<tr><td>Windows</td><td><code>{FOLDERID_LocalAppData}</code>\<code>_project_path_</code>\data</td><td>C:\Users\Alice\AppData\Local\Foo Corp\Bar App\data</td></tr>
</tbody></table>
</div></div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.preference_dir" class="method has-srclink"><div class="rightside"><a class="srclink" href="../src/directories/lib.rs.html#471-473" title="goto source code">[src]</a></div><a href="#method.preference_dir" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.preference_dir" class="fnname">preference_dir</a>(&amp;self) -&gt; &amp;<a class="struct" href="https://doc.rust-lang.org/1.59.0/std/path/struct.Path.html" title="struct std::path::Path">Path</a></h4></div></summary><div class="docblock"><p>Returns the path to the projects preference directory.</p>
<div><table><thead><tr><th>Platform</th><th>Value</th><th>Example</th></tr></thead><tbody>
<tr><td>Linux</td><td><code>$XDG_CONFIG_HOME</code>/<code>_project_path_</code> or <code>$HOME</code>/.config/<code>_project_path_</code></td><td>/home/alice/.config/barapp</td></tr>
<tr><td>macOS</td><td><code>$HOME</code>/Library/Preferences/<code>_project_path_</code></td><td>/Users/Alice/Library/Preferences/com.Foo-Corp.Bar-App</td></tr>
<tr><td>Windows</td><td><code>{FOLDERID_RoamingAppData}</code>\<code>_project_path_</code>\config</td><td>C:\Users\Alice\AppData\Roaming\Foo Corp\Bar App\config</td></tr>
</tbody></table>
</div></div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.runtime_dir" class="method has-srclink"><div class="rightside"><a class="srclink" href="../src/directories/lib.rs.html#484-486" title="goto source code">[src]</a></div><a href="#method.runtime_dir" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.runtime_dir" class="fnname">runtime_dir</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.59.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="struct" href="https://doc.rust-lang.org/1.59.0/std/path/struct.Path.html" title="struct std::path::Path">Path</a>&gt;</h4></div></summary><div class="docblock"><p>Returns the path to the projects runtime directory.</p>
<p>The runtime directory contains transient, non-essential data (like sockets or named pipes) that
is expected to be cleared when the users session ends.</p>
<div><table><thead><tr><th>Platform</th><th>Value</th><th>Example</th></tr></thead><tbody>
<tr><td>Linux</td><td><code>$XDG_RUNTIME_DIR</code>/<code>_project_path_</code></td><td>/run/user/1001/barapp</td></tr>
<tr><td>macOS</td><td></td><td></td></tr>
<tr><td>Windows</td><td></td><td></td></tr>
</tbody></table>
</div></div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.state_dir" class="method has-srclink"><div class="rightside"><a class="srclink" href="../src/directories/lib.rs.html#500-502" title="goto source code">[src]</a></div><a href="#method.state_dir" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.state_dir" class="fnname">state_dir</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.59.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="struct" href="https://doc.rust-lang.org/1.59.0/std/path/struct.Path.html" title="struct std::path::Path">Path</a>&gt;</h4></div></summary><div class="docblock"><p>Returns the path to the projects state directory.</p>
<p>The state directory contains data that should be retained between sessions (unlike the runtime
directory), but may not be important/portable enough to be synchronized across machines (unlike
the config/preferences/data directories).</p>
<p>The returned value depends on the operating system and is either a <code>Some</code>, containing a value from the following table, or a <code>None</code>.</p>
<div><table><thead><tr><th>Platform</th><th>Value</th><th>Example</th></tr></thead><tbody>
<tr><td>Linux</td><td><code>$XDG_STATE_HOME</code>/<code>_project_path_</code> or <code>$HOME</code>/.local/state/<code>_project_path_</code></td><td>/home/alice/.local/state/barapp</td></tr>
<tr><td>macOS</td><td></td><td></td></tr>
<tr><td>Windows</td><td></td><td></td></tr>
</tbody></table>
</div></div></details></div></details><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor"></a></h2><div id="trait-implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Clone" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../src/directories/lib.rs.html#128" title="goto source code">[src]</a></div><a href="#impl-Clone" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="struct" href="struct.ProjectDirs.html" title="struct directories::ProjectDirs">ProjectDirs</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.clone" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../src/directories/lib.rs.html#128" title="goto source code">[src]</a></div><a href="#method.clone" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.59.0/core/clone/trait.Clone.html#tymethod.clone" class="fnname">clone</a>(&amp;self) -&gt; <a class="struct" href="struct.ProjectDirs.html" title="struct directories::ProjectDirs">ProjectDirs</a></h4></div></summary><div class='docblock'><p>Returns a copy of the value. <a href="https://doc.rust-lang.org/1.59.0/core/clone/trait.Clone.html#tymethod.clone">Read more</a></p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.clone_from" class="method trait-impl has-srclink"><div class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/clone.rs.html#130" title="goto source code">[src]</a></div><a href="#method.clone_from" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.59.0/core/clone/trait.Clone.html#method.clone_from" class="fnname">clone_from</a>(&amp;mut self, source: <a class="primitive" href="https://doc.rust-lang.org/1.59.0/std/primitive.reference.html">&amp;</a>Self)</h4></div></summary><div class='docblock'><p>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.59.0/core/clone/trait.Clone.html#method.clone_from">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Debug" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../src/directories/lib.rs.html#128" title="goto source code">[src]</a></div><a href="#impl-Debug" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="struct.ProjectDirs.html" title="struct directories::ProjectDirs">ProjectDirs</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.fmt" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../src/directories/lib.rs.html#128" title="goto source code">[src]</a></div><a href="#method.fmt" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.59.0/core/fmt/trait.Debug.html#tymethod.fmt" class="fnname">fmt</a>(&amp;self, f: &amp;mut <a class="struct" href="https://doc.rust-lang.org/1.59.0/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a>&lt;'_&gt;) -&gt; <a class="type" href="https://doc.rust-lang.org/1.59.0/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></h4></div></summary><div class='docblock'><p>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/1.59.0/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></p>
</div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor"></a></h2><div id="synthetic-implementations-list"><div id="impl-RefUnwindSafe" class="impl has-srclink"><div class="rightside"></div><a href="#impl-RefUnwindSafe" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.ProjectDirs.html" title="struct directories::ProjectDirs">ProjectDirs</a></h3></div><div id="impl-Send" class="impl has-srclink"><div class="rightside"></div><a href="#impl-Send" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.ProjectDirs.html" title="struct directories::ProjectDirs">ProjectDirs</a></h3></div><div id="impl-Sync" class="impl has-srclink"><div class="rightside"></div><a href="#impl-Sync" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.ProjectDirs.html" title="struct directories::ProjectDirs">ProjectDirs</a></h3></div><div id="impl-Unpin" class="impl has-srclink"><div class="rightside"></div><a href="#impl-Unpin" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.ProjectDirs.html" title="struct directories::ProjectDirs">ProjectDirs</a></h3></div><div id="impl-UnwindSafe" class="impl has-srclink"><div class="rightside"></div><a href="#impl-UnwindSafe" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.ProjectDirs.html" title="struct directories::ProjectDirs">ProjectDirs</a></h3></div></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor"></a></h2><div id="blanket-implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Any" class="impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/any.rs.html#132-136" title="goto source code">[src]</a></div><a href="#impl-Any" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.type_id" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/any.rs.html#133" title="goto source code">[src]</a></div><a href="#method.type_id" class="anchor"></a><h4 class="code-header">pub fn <a href="https://doc.rust-lang.org/1.59.0/core/any/trait.Any.html#tymethod.type_id" class="fnname">type_id</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.59.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></div></summary><div class='docblock'><p>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.59.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Borrow%3CT%3E" class="impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/borrow.rs.html#209-214" title="goto source code">[src]</a></div><a href="#impl-Borrow%3CT%3E" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a>&lt;T&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: ?<a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.borrow" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/borrow.rs.html#211" title="goto source code">[src]</a></div><a href="#method.borrow" class="anchor"></a><h4 class="code-header">pub fn <a href="https://doc.rust-lang.org/1.59.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fnname">borrow</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.59.0/std/primitive.reference.html">&amp;</a>T</h4></div></summary><div class='docblock'><p>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.59.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-BorrowMut%3CT%3E" class="impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/borrow.rs.html#218-222" title="goto source code">[src]</a></div><a href="#impl-BorrowMut%3CT%3E" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a>&lt;T&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: ?<a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.borrow_mut" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/borrow.rs.html#219" title="goto source code">[src]</a></div><a href="#method.borrow_mut" class="anchor"></a><h4 class="code-header">pub fn <a href="https://doc.rust-lang.org/1.59.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fnname">borrow_mut</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.59.0/std/primitive.reference.html">&amp;mut </a>T</h4></div></summary><div class='docblock'><p>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.59.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-From%3CT%3E" class="impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/convert/mod.rs.html#550-554" title="goto source code">[src]</a></div><a href="#impl-From%3CT%3E" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt; for T</h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.from-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/convert/mod.rs.html#551" title="goto source code">[src]</a></div><a href="#method.from-1" class="anchor"></a><h4 class="code-header">pub fn <a href="https://doc.rust-lang.org/1.59.0/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(t: T) -&gt; T</h4></div></summary><div class='docblock'><p>Performs the conversion.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Into%3CU%3E" class="impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/convert/mod.rs.html#538-545" title="goto source code">[src]</a></div><a href="#impl-Into%3CU%3E" class="anchor"></a><h3 class="code-header in-band">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;U&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt;,&nbsp;</span></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.into" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/convert/mod.rs.html#542" title="goto source code">[src]</a></div><a href="#method.into" class="anchor"></a><h4 class="code-header">pub fn <a href="https://doc.rust-lang.org/1.59.0/core/convert/trait.Into.html#tymethod.into" class="fnname">into</a>(self) -&gt; U</h4></div></summary><div class='docblock'><p>Performs the conversion.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-ToOwned" class="impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/alloc/borrow.rs.html#84-96" title="goto source code">[src]</a></div><a href="#impl-ToOwned" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.59.0/alloc/borrow/trait.ToOwned.html" title="trait alloc::borrow::ToOwned">ToOwned</a> for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><div id="associatedtype.Owned" class="type trait-impl has-srclink"><a href="#associatedtype.Owned" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.59.0/alloc/borrow/trait.ToOwned.html#associatedtype.Owned" class="associatedtype">Owned</a> = T</h4></div></summary><div class='docblock'><p>The resulting type after obtaining ownership.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.to_owned" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/alloc/borrow.rs.html#89" title="goto source code">[src]</a></div><a href="#method.to_owned" class="anchor"></a><h4 class="code-header">pub fn <a href="https://doc.rust-lang.org/1.59.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned" class="fnname">to_owned</a>(&amp;self) -&gt; T</h4></div></summary><div class='docblock'><p>Creates owned data from borrowed data, usually by cloning. <a href="https://doc.rust-lang.org/1.59.0/alloc/borrow/trait.ToOwned.html#tymethod.to_owned">Read more</a></p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.clone_into" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/alloc/borrow.rs.html#93" title="goto source code">[src]</a></div><a href="#method.clone_into" class="anchor"></a><h4 class="code-header">pub fn <a href="https://doc.rust-lang.org/1.59.0/alloc/borrow/trait.ToOwned.html#method.clone_into" class="fnname">clone_into</a>(&amp;self, target: <a class="primitive" href="https://doc.rust-lang.org/1.59.0/std/primitive.reference.html">&amp;mut </a>T)</h4></div></summary><div class="item-info"><div class="stab unstable"><span class="emoji">🔬</span> This is a nightly-only experimental API. (<code>toowned_clone_into</code>)</div></div><div class='docblock'><p>Uses borrowed data to replace owned data, usually by cloning. <a href="https://doc.rust-lang.org/1.59.0/alloc/borrow/trait.ToOwned.html#method.clone_into">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-TryFrom%3CU%3E" class="impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/convert/mod.rs.html#588-597" title="goto source code">[src]</a></div><a href="#impl-TryFrom%3CU%3E" class="anchor"></a><h3 class="code-header in-band">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;T&gt;,&nbsp;</span></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><div id="associatedtype.Error-1" class="type trait-impl has-srclink"><a href="#associatedtype.Error-1" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.59.0/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/1.59.0/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></h4></div></summary><div class='docblock'><p>The type returned in the event of a conversion error.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.try_from" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/convert/mod.rs.html#594" title="goto source code">[src]</a></div><a href="#method.try_from" class="anchor"></a><h4 class="code-header">pub fn <a href="https://doc.rust-lang.org/1.59.0/core/convert/trait.TryFrom.html#tymethod.try_from" class="fnname">try_from</a>(value: U) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.59.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;T, &lt;T as <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.59.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</h4></div></summary><div class='docblock'><p>Performs the conversion.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-TryInto%3CU%3E" class="impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/convert/mod.rs.html#574-583" title="goto source code">[src]</a></div><a href="#impl-TryInto%3CU%3E" class="anchor"></a><h3 class="code-header in-band">impl&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a>&lt;U&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;U: <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;,&nbsp;</span></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle" open><summary><div id="associatedtype.Error" class="type trait-impl has-srclink"><a href="#associatedtype.Error" class="anchor"></a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.59.0/core/convert/trait.TryInto.html#associatedtype.Error" class="associatedtype">Error</a> = &lt;U as <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.59.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></h4></div></summary><div class='docblock'><p>The type returned in the event of a conversion error.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.try_into" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/convert/mod.rs.html#580" title="goto source code">[src]</a></div><a href="#method.try_into" class="anchor"></a><h4 class="code-header">pub fn <a href="https://doc.rust-lang.org/1.59.0/core/convert/trait.TryInto.html#tymethod.try_into" class="fnname">try_into</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.59.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;U, &lt;U as <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.59.0/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</h4></div></summary><div class='docblock'><p>Performs the conversion.</p>
</div></details></div></details></div></section><section id="search" class="content hidden"></section></div></main><div id="rustdoc-vars" data-root-path="../" data-current-crate="directories" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.59.0 (9d1b2106e 2022-02-23)" ></div>
</body></html>