Sophie

Sophie

distrib > Mageia > 6 > x86_64 > media > core-updates > by-pkgid > fdedb3cf2140df9b6d419a2338ab1caa > files > 5543

rust-doc-1.25.0-1.mga6.x86_64.rpm

<!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="API documentation for the Rust `exit` fn in crate `std`.">
    <meta name="keywords" content="rust, rustlang, rust-lang, exit">

    <title>std::process::exit - Rust</title>

    <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="../../dark.css">
    <link rel="stylesheet" type="text/css" href="../../main.css" id="themeStyle">
    <script src="../../storage.js"></script>
    

    <link rel="shortcut icon" href="https://doc.rust-lang.org/favicon.ico">
    
</head>
<body class="rustdoc fn">
    <!--[if lte IE 8]>
    <div class="warning">
        This old browser is unsupported and will most likely display funky
        things.
    </div>
    <![endif]-->

    

    <nav class="sidebar">
        <div class="sidebar-menu">&#9776;</div>
        <a href='../../std/index.html'><img src='https://www.rust-lang.org/logos/rust-logo-128x128-blk-v2.png' alt='logo' width='100'></a>
        <p class='location'><a href='../index.html'>std</a>::<wbr><a href='index.html'>process</a></p><script>window.sidebarCurrent = {name: 'exit', ty: 'fn', relpath: ''};</script><script defer src="sidebar-items.js"></script>
    </nav>

    <div class="theme-picker">
        <button id="theme-picker" aria-label="Pick another theme!">
            <img src="../../brush.svg" width="18" alt="Pick another theme!">
        </button>
        <div id="theme-choices"></div>
    </div>
    <script src="../../theme.js"></script>
    <nav class="sub">
        <form class="search-form js-only">
            <div class="search-container">
                <input class="search-input" name="search"
                       autocomplete="off"
                       placeholder="Click or press ‘S’ to search, ‘?’ for more options…"
                       type="search">
            </div>
        </form>
    </nav>

    <section id='main' class="content">
<h1 class='fqn'><span class='in-band'>Function <a href='../index.html'>std</a>::<wbr><a href='index.html'>process</a>::<wbr><a class="fn" href=''>exit</a></span><span class='out-of-band'><span class='since' title='Stable since Rust version 1.0.0'>1.0.0</span><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/std/process.rs.html#1310-1313' title='goto source code'>[src]</a></span></h1>
<pre class='rust fn'>pub fn exit(code: <a class="primitive" href="../primitive.i32.html">i32</a>) -&gt; <a class="primitive" href="../primitive.never.html">!</a></pre><div class='docblock'><p>Terminates the current process with the specified exit code.</p>
<p>This function will never return and will immediately terminate the current
process. The exit code is passed through to the underlying OS and will be
available for consumption by another process.</p>
<p>Note that because this function never returns, and that it terminates the
process, no destructors on the current stack or any other thread's stack
will be run. If a clean shutdown is needed it is recommended to only call
this function at a known point where there are no more destructors left
to run.</p>
<h2 id="platform-specific-behavior" class="section-header"><a href="#platform-specific-behavior">Platform-specific behavior</a></h2>
<p><strong>Unix</strong>: On Unix-like platforms, it is unlikely that all 32 bits of <code>exit</code>
will be visible to a parent process inspecting the exit code. On most
Unix-like platforms, only the eight least-significant bits are considered.</p>
<h1 id="examples" class="section-header"><a href="#examples">Examples</a></h1>
<p>Due to this function’s behavior regarding destructors, a conventional way
to use the function is to extract the actual computation to another
function and compute the exit code from its return value:</p>

<pre class="rust rust-example-rendered">
<span class="kw">fn</span> <span class="ident">run_app</span>() <span class="op">-&gt;</span> <span class="prelude-ty">Result</span><span class="op">&lt;</span>(), ()<span class="op">&gt;</span> {
    <span class="comment">// Application logic here</span>
    <span class="prelude-val">Ok</span>(())
}

<span class="kw">fn</span> <span class="ident">main</span>() {
    ::<span class="ident">std</span>::<span class="ident">process</span>::<span class="ident">exit</span>(<span class="kw">match</span> <span class="ident">run_app</span>() {
       <span class="prelude-val">Ok</span>(_) <span class="op">=&gt;</span> <span class="number">0</span>,
       <span class="prelude-val">Err</span>(<span class="ident">err</span>) <span class="op">=&gt;</span> {
           <span class="macro">eprintln</span><span class="macro">!</span>(<span class="string">&quot;error: {:?}&quot;</span>, <span class="ident">err</span>);
           <span class="number">1</span>
       }
    });
}<a class="test-arrow" target="_blank" href="https://play.rust-lang.org/?code=%23!%5Ballow(unused)%5D%0Afn%20run_app()%20-%3E%20Result%3C()%2C%20()%3E%20%7B%0A%20%20%20%20%2F%2F%20Application%20logic%20here%0A%20%20%20%20Ok(())%0A%7D%0A%0Afn%20main()%20%7B%0A%20%20%20%20%3A%3Astd%3A%3Aprocess%3A%3Aexit(match%20run_app()%20%7B%0A%20%20%20%20%20%20%20Ok(_)%20%3D%3E%200%2C%0A%20%20%20%20%20%20%20Err(err)%20%3D%3E%20%7B%0A%20%20%20%20%20%20%20%20%20%20%20eprintln!(%22error%3A%20%7B%3A%3F%7D%22%2C%20err)%3B%0A%20%20%20%20%20%20%20%20%20%20%201%0A%20%20%20%20%20%20%20%7D%0A%20%20%20%20%7D)%3B%0A%7D%0A">Run</a></pre>
<p>Due to <a href="#platform-specific-behavior">platform-specific behavior</a>, the exit code for this example will be
<code>0</code> on Linux, but <code>256</code> on Windows:</p>

<pre class="rust rust-example-rendered">
<span class="kw">use</span> <span class="ident">std</span>::<span class="ident">process</span>;

<span class="ident">process</span>::<span class="ident">exit</span>(<span class="number">0x0100</span>);<a class="test-arrow" target="_blank" href="https://play.rust-lang.org/?code=%23!%5Ballow(unused)%5D%0Afn%20main()%20%7B%0Ause%20std%3A%3Aprocess%3B%0A%0Aprocess%3A%3Aexit(0x0100)%3B%0A%7D">Run</a></pre>
</div></section>
    <section id='search' class="content hidden"></section>

    <section class="footer"></section>

    <aside id="help" class="hidden">
        <div>
            <h1 class="hidden">Help</h1>

            <div class="shortcuts">
                <h2>Keyboard Shortcuts</h2>

                <dl>
                    <dt><kbd>?</kbd></dt>
                    <dd>Show this help dialog</dd>
                    <dt><kbd>S</kbd></dt>
                    <dd>Focus the search field</dd>
                    <dt><kbd>↑</kbd></dt>
                    <dd>Move up in search results</dd>
                    <dt><kbd>↓</kbd></dt>
                    <dd>Move down in search results</dd>
                    <dt><kbd>↹</kbd></dt>
                    <dd>Switch tab</dd>
                    <dt><kbd>&#9166;</kbd></dt>
                    <dd>Go to active search result</dd>
                    <dt><kbd>+</kbd></dt>
                    <dd>Expand all sections</dd>
                    <dt><kbd>-</kbd></dt>
                    <dd>Collapse all sections</dd>
                </dl>
            </div>

            <div class="infos">
                <h2>Search Tricks</h2>

                <p>
                    Prefix searches with a type followed by a colon (e.g.
                    <code>fn:</code>) to restrict the search to a given type.
                </p>

                <p>
                    Accepted types are: <code>fn</code>, <code>mod</code>,
                    <code>struct</code>, <code>enum</code>,
                    <code>trait</code>, <code>type</code>, <code>macro</code>,
                    and <code>const</code>.
                </p>

                <p>
                    Search functions by type signature (e.g.
                    <code>vec -> usize</code> or <code>* -> vec</code>)
                </p>
            </div>
        </div>
    </aside>

    

    <script>
        window.rootPath = "../../";
        window.currentCrate = "std";
    </script>
    <script src="../../main.js"></script>
    <script defer src="../../search-index.js"></script>
</body>
</html>