Initial docs commit

This commit is contained in:
Uttarayan Mondal
2021-03-15 01:27:34 +05:30
commit d5ecda4c73
20211 changed files with 1370362 additions and 0 deletions
+43
View File
@@ -0,0 +1,43 @@
<!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="A multi-producer, single-consumer queue for sending values across asynchronous tasks."><meta name="keywords" content="rust, rustlang, rust-lang, mpsc"><title>futures_channel::mpsc - 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="../../light.css" id="themeStyle"><link rel="stylesheet" type="text/css" href="../../dark.css" disabled ><link rel="stylesheet" type="text/css" href="../../ayu.css" disabled ><script id="default-settings"></script><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="icon" type="image/svg+xml" href="../../favicon.svg">
<link rel="alternate icon" type="image/png" href="../../favicon-16x16.png">
<link rel="alternate icon" type="image/png" href="../../favicon-32x32.png"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></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><a href='../../futures_channel/index.html'><div class='logo-container rust-logo'><img src='../../rust-logo.png' alt='logo'></div></a><p class="location">Module mpsc</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#structs">Structs</a></li><li><a href="#functions">Functions</a></li></ul></div><p class="location"><a href="../index.html">futures_channel</a></p><div id="sidebar-vars" data-name="mpsc" data-ty="mod" data-relpath="../"></div><script defer src="../sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices" role="menu"></div></div><script src="../../theme.js"></script><nav class="sub"><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" disabled autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><button type="button" class="help-button">?</button>
<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">Module <a href="../index.html">futures_channel</a>::<wbr><a class="mod" href="">mpsc</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/futures_channel/mpsc/mod.rs.html#1-1356" title="goto source code">[src]</a></span></h1><div class="docblock"><p>A multi-producer, single-consumer queue for sending values across
asynchronous tasks.</p>
<p>Similarly to the <code>std</code>, channel creation provides <a href="struct.Receiver.html"><code>Receiver</code></a> and
<a href="struct.Sender.html"><code>Sender</code></a> handles. <a href="struct.Receiver.html"><code>Receiver</code></a> implements <a href="../../futures_core/stream/trait.Stream.html"><code>Stream</code></a> and allows a task to
read values out of the channel. If there is no message to read from the
channel, the current task will be notified when a new value is sent.
<a href="struct.Sender.html"><code>Sender</code></a> implements the <code>Sink</code> trait and allows a task to send messages into
the channel. If the channel is at capacity, the send will be rejected and
the task will be notified when additional capacity is available. In other
words, the channel provides backpressure.</p>
<p>Unbounded channels are also available using the <code>unbounded</code> constructor.</p>
<h1 id="disconnection" class="section-header"><a href="#disconnection">Disconnection</a></h1>
<p>When all <a href="struct.Sender.html"><code>Sender</code></a> handles have been dropped, it is no longer
possible to send values into the channel. This is considered the termination
event of the stream. As such, <a href="../../futures_core/stream/trait.Stream.html#tymethod.poll_next"><code>Receiver::poll_next</code></a>
will return <code>Ok(Ready(None))</code>.</p>
<p>If the <a href="struct.Receiver.html"><code>Receiver</code></a> handle is dropped, then messages can no longer
be read out of the channel. In this case, all further attempts to send will
result in an error.</p>
<h1 id="clean-shutdown" class="section-header"><a href="#clean-shutdown">Clean Shutdown</a></h1>
<p>If the <a href="struct.Receiver.html"><code>Receiver</code></a> is simply dropped, then it is possible for
there to be messages still in the channel that will not be processed. As
such, it is usually desirable to perform a “clean” shutdown. To do this, the
receiver will first call <code>close</code>, which will prevent any further messages to
be sent into the channel. Then, the receiver consumes the channel to
completion, at which point the receiver can be dropped.</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.Receiver.html" title="futures_channel::mpsc::Receiver struct">Receiver</a></td><td class="docblock-short"><p>The receiving end of a bounded mpsc channel.</p>
</td></tr><tr class="module-item"><td><a class="struct" href="struct.SendError.html" title="futures_channel::mpsc::SendError struct">SendError</a></td><td class="docblock-short"><p>The error type for <a href="../../futures_channel/mpsc/struct.Sender.html"><code>Sender</code>s</a> used as <code>Sink</code>s.</p>
</td></tr><tr class="module-item"><td><a class="struct" href="struct.Sender.html" title="futures_channel::mpsc::Sender struct">Sender</a></td><td class="docblock-short"><p>The transmission end of a bounded mpsc channel.</p>
</td></tr><tr class="module-item"><td><a class="struct" href="struct.TryRecvError.html" title="futures_channel::mpsc::TryRecvError struct">TryRecvError</a></td><td class="docblock-short"><p>The error type returned from <a href="../../futures_channel/mpsc/struct.Receiver.html#method.try_next"><code>try_next</code></a>.</p>
</td></tr><tr class="module-item"><td><a class="struct" href="struct.TrySendError.html" title="futures_channel::mpsc::TrySendError struct">TrySendError</a></td><td class="docblock-short"><p>The error type returned from <a href="../../futures_channel/mpsc/struct.Sender.html#method.try_send"><code>try_send</code></a>.</p>
</td></tr><tr class="module-item"><td><a class="struct" href="struct.UnboundedReceiver.html" title="futures_channel::mpsc::UnboundedReceiver struct">UnboundedReceiver</a></td><td class="docblock-short"><p>The receiving end of an unbounded mpsc channel.</p>
</td></tr><tr class="module-item"><td><a class="struct" href="struct.UnboundedSender.html" title="futures_channel::mpsc::UnboundedSender struct">UnboundedSender</a></td><td class="docblock-short"><p>The transmission end of an unbounded mpsc channel.</p>
</td></tr></table><h2 id="functions" class="section-header"><a href="#functions">Functions</a></h2>
<table><tr class="module-item"><td><a class="fn" href="fn.channel.html" title="futures_channel::mpsc::channel fn">channel</a></td><td class="docblock-short"><p>Creates a bounded mpsc channel for communicating between asynchronous tasks.</p>
</td></tr><tr class="module-item"><td><a class="fn" href="fn.unbounded.html" title="futures_channel::mpsc::unbounded fn">unbounded</a></td><td class="docblock-short"><p>Creates an unbounded mpsc channel for communicating between asynchronous
tasks.</p>
</td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><div id="rustdoc-vars" data-root-path="../../" data-current-crate="futures_channel"></div>
<script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>