2018-10-28 21:14:05 -05:00

180 lines
14 KiB
HTML
Raw Permalink 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="API documentation for the Rust `parking_lot` crate."><meta name="keywords" content="rust, rustlang, rust-lang, parking_lot"><title>parking_lot - 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="../light.css" id="themeStyle"><script src="../storage.js"></script></head><body class="rustdoc mod"><!--[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><p class='location'>Crate parking_lot</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#structs">Structs</a></li><li><a href="#enums">Enums</a></li><li><a href="#constants">Constants</a></li><li><a href="#types">Type Definitions</a></li></ul></div><p class='location'></p><script>window.sidebarCurrent = {name: 'parking_lot', ty: 'mod', relpath: '../'};</script></div></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"><a id="settings-menu" href="../settings.html"><img src="../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='in-band'>Crate <a class="mod" href=''>parking_lot</a></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/parking_lot/lib.rs.html#8-44' title='goto source code'>[src]</a></span></h1><div class='docblock'><p>This library provides implementations of <code>Mutex</code>, <code>RwLock</code>, <code>Condvar</code> and
<code>Once</code> that are smaller, faster and more flexible than those in the Rust
standard library. It also provides a <code>ReentrantMutex</code> type.</p>
</div><h2 id='structs' class='section-header'><a href="#structs">Structs</a></h2>
<table>
<tr class=' module-item'>
<td><a class="struct" href="struct.Condvar.html"
title='struct parking_lot::Condvar'>Condvar</a></td>
<td class='docblock-short'>
<p>A Condition Variable</p>
</td>
</tr>
<tr class=' module-item'>
<td><a class="struct" href="struct.Once.html"
title='struct parking_lot::Once'>Once</a></td>
<td class='docblock-short'>
<p>A synchronization primitive which can be used to run a one-time
initialization. Useful for one-time initialization for globals, FFI or
related functionality.</p>
</td>
</tr>
<tr class=' module-item'>
<td><a class="struct" href="struct.RawMutex.html"
title='struct parking_lot::RawMutex'>RawMutex</a></td>
<td class='docblock-short'>
<p>Raw mutex type backed by the parking lot.</p>
</td>
</tr>
<tr class=' module-item'>
<td><a class="struct" href="struct.RawRwLock.html"
title='struct parking_lot::RawRwLock'>RawRwLock</a></td>
<td class='docblock-short'>
<p>Raw reader-writer lock type backed by the parking lot.</p>
</td>
</tr>
<tr class=' module-item'>
<td><a class="struct" href="struct.RawThreadId.html"
title='struct parking_lot::RawThreadId'>RawThreadId</a></td>
<td class='docblock-short'>
<p>Implementation of the <code>GetThreadId</code> trait for <code>lock_api::ReentrantMutex</code>.</p>
</td>
</tr>
<tr class=' module-item'>
<td><a class="struct" href="struct.WaitTimeoutResult.html"
title='struct parking_lot::WaitTimeoutResult'>WaitTimeoutResult</a></td>
<td class='docblock-short'>
<p>A type indicating whether a timed wait on a condition variable returned
due to a time out or not.</p>
</td>
</tr></table><h2 id='enums' class='section-header'><a href="#enums">Enums</a></h2>
<table>
<tr class=' module-item'>
<td><a class="enum" href="enum.OnceState.html"
title='enum parking_lot::OnceState'>OnceState</a></td>
<td class='docblock-short'>
<p>Current state of a <code>Once</code>.</p>
</td>
</tr></table><h2 id='constants' class='section-header'><a href="#constants">Constants</a></h2>
<table>
<tr class=' module-item'>
<td><a class="constant" href="constant.ONCE_INIT.html"
title='constant parking_lot::ONCE_INIT'>ONCE_INIT</a></td>
<td class='docblock-short'>
<p>Initialization value for static <code>Once</code> values.</p>
</td>
</tr></table><h2 id='types' class='section-header'><a href="#types">Type Definitions</a></h2>
<table>
<tr class=' module-item'>
<td><a class="type" href="type.MappedMutexGuard.html"
title='type parking_lot::MappedMutexGuard'>MappedMutexGuard</a></td>
<td class='docblock-short'>
<p>An RAII mutex guard returned by <code>MutexGuard::map</code>, which can point to a
subfield of the protected data.</p>
</td>
</tr>
<tr class=' module-item'>
<td><a class="type" href="type.MappedReentrantMutexGuard.html"
title='type parking_lot::MappedReentrantMutexGuard'>MappedReentrantMutexGuard</a></td>
<td class='docblock-short'>
<p>An RAII mutex guard returned by <code>ReentrantMutexGuard::map</code>, which can point to a
subfield of the protected data.</p>
</td>
</tr>
<tr class=' module-item'>
<td><a class="type" href="type.MappedRwLockReadGuard.html"
title='type parking_lot::MappedRwLockReadGuard'>MappedRwLockReadGuard</a></td>
<td class='docblock-short'>
<p>An RAII read lock guard returned by <code>RwLockReadGuard::map</code>, which can point to a
subfield of the protected data.</p>
</td>
</tr>
<tr class=' module-item'>
<td><a class="type" href="type.MappedRwLockWriteGuard.html"
title='type parking_lot::MappedRwLockWriteGuard'>MappedRwLockWriteGuard</a></td>
<td class='docblock-short'>
<p>An RAII write lock guard returned by <code>RwLockWriteGuard::map</code>, which can point to a
subfield of the protected data.</p>
</td>
</tr>
<tr class=' module-item'>
<td><a class="type" href="type.Mutex.html"
title='type parking_lot::Mutex'>Mutex</a></td>
<td class='docblock-short'>
<p>A mutual exclusion primitive useful for protecting shared data</p>
</td>
</tr>
<tr class=' module-item'>
<td><a class="type" href="type.MutexGuard.html"
title='type parking_lot::MutexGuard'>MutexGuard</a></td>
<td class='docblock-short'>
<p>An RAII implementation of a &quot;scoped lock&quot; of a mutex. When this structure is
dropped (falls out of scope), the lock will be unlocked.</p>
</td>
</tr>
<tr class=' module-item'>
<td><a class="type" href="type.ReentrantMutex.html"
title='type parking_lot::ReentrantMutex'>ReentrantMutex</a></td>
<td class='docblock-short'>
<p>A mutex which can be recursively locked by a single thread.</p>
</td>
</tr>
<tr class=' module-item'>
<td><a class="type" href="type.ReentrantMutexGuard.html"
title='type parking_lot::ReentrantMutexGuard'>ReentrantMutexGuard</a></td>
<td class='docblock-short'>
<p>An RAII implementation of a &quot;scoped lock&quot; of a reentrant mutex. When this structure
is dropped (falls out of scope), the lock will be unlocked.</p>
</td>
</tr>
<tr class=' module-item'>
<td><a class="type" href="type.RwLock.html"
title='type parking_lot::RwLock'>RwLock</a></td>
<td class='docblock-short'>
<p>A reader-writer lock</p>
</td>
</tr>
<tr class=' module-item'>
<td><a class="type" href="type.RwLockReadGuard.html"
title='type parking_lot::RwLockReadGuard'>RwLockReadGuard</a></td>
<td class='docblock-short'>
<p>RAII structure used to release the shared read access of a lock when
dropped.</p>
</td>
</tr>
<tr class=' module-item'>
<td><a class="type" href="type.RwLockUpgradableReadGuard.html"
title='type parking_lot::RwLockUpgradableReadGuard'>RwLockUpgradableReadGuard</a></td>
<td class='docblock-short'>
<p>RAII structure used to release the upgradable read access of a lock when
dropped.</p>
</td>
</tr>
<tr class=' module-item'>
<td><a class="type" href="type.RwLockWriteGuard.html"
title='type parking_lot::RwLockWriteGuard'>RwLockWriteGuard</a></td>
<td class='docblock-short'>
<p>RAII structure used to release the exclusive write access of a lock when
dropped.</p>
</td>
</tr></table></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><p>Search multiple things at once by splitting your query with comma (e.g. <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../";window.currentCrate = "parking_lot";</script><script src="../aliases.js"></script><script src="../main.js"></script><script defer src="../search-index.js"></script></body></html>