Adding large folders

This commit is contained in:
2026-02-26 12:00:21 -05:00
parent 5400d82acd
commit 49701c85ad
47332 changed files with 1942573 additions and 0 deletions

View File

@@ -0,0 +1 @@
<!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="List of all items in this crate"><title>List of all items in this crate</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2"href="../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../static.files/rustdoc-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="futures_channel" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.js" data-settings-js="settings-c38705f0.js" ><script src="../static.files/storage-e2aeef58.js"></script><script defer src="../static.files/main-a410ff4d.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-263c88ec.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-eab170b8.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-044be391.svg"></head><body class="rustdoc mod sys"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><rustdoc-topbar><h2><a href="#">All</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../futures_channel/index.html">futures_<wbr>channel</a><span class="version">0.3.32</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h3><a href="#structs">Crate Items</a></h3><ul class="block"><li><a href="#structs" title="Structs">Structs</a></li><li><a href="#enums" title="Enums">Enums</a></li><li><a href="#functions" title="Functions">Functions</a></li></ul></section><div id="rustdoc-modnav"></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><section id="main-content" class="content"><div class="main-heading"><h1>List of all items</h1><rustdoc-toolbar></rustdoc-toolbar></div><h3 id="structs">Structs</h3><ul class="all-items"><li><a href="mpsc/struct.Receiver.html">mpsc::Receiver</a></li><li><a href="mpsc/struct.Recv.html">mpsc::Recv</a></li><li><a href="mpsc/struct.RecvError.html">mpsc::RecvError</a></li><li><a href="mpsc/struct.SendError.html">mpsc::SendError</a></li><li><a href="mpsc/struct.Sender.html">mpsc::Sender</a></li><li><a href="mpsc/struct.TrySendError.html">mpsc::TrySendError</a></li><li><a href="mpsc/struct.UnboundedReceiver.html">mpsc::UnboundedReceiver</a></li><li><a href="mpsc/struct.UnboundedSender.html">mpsc::UnboundedSender</a></li><li><a href="oneshot/struct.Canceled.html">oneshot::Canceled</a></li><li><a href="oneshot/struct.Cancellation.html">oneshot::Cancellation</a></li><li><a href="oneshot/struct.Receiver.html">oneshot::Receiver</a></li><li><a href="oneshot/struct.Sender.html">oneshot::Sender</a></li></ul><h3 id="enums">Enums</h3><ul class="all-items"><li><a href="mpsc/enum.TryRecvError.html">mpsc::TryRecvError</a></li></ul><h3 id="functions">Functions</h3><ul class="all-items"><li><a href="mpsc/fn.channel.html">mpsc::channel</a></li><li><a href="mpsc/fn.unbounded.html">mpsc::unbounded</a></li><li><a href="oneshot/fn.channel.html">oneshot::channel</a></li></ul></section></div></main></body></html>

View File

@@ -0,0 +1,13 @@
<!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="Asynchronous channels."><title>futures_channel - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2"href="../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../static.files/rustdoc-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="futures_channel" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.js" data-settings-js="settings-c38705f0.js" ><script src="../static.files/storage-e2aeef58.js"></script><script defer src="../crates.js"></script><script defer src="../static.files/main-a410ff4d.js"></script><noscript><link rel="stylesheet" href="../static.files/noscript-263c88ec.css"></noscript><link rel="alternate icon" type="image/png" href="../static.files/favicon-32x32-eab170b8.png"><link rel="icon" type="image/svg+xml" href="../static.files/favicon-044be391.svg"></head><body class="rustdoc mod crate"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><rustdoc-topbar><h2><a href="#">Crate futures_channel</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../futures_channel/index.html">futures_<wbr>channel</a><span class="version">0.3.32</span></h2></div><div class="sidebar-elems"><ul class="block"><li><a id="all-types" href="all.html">All Items</a></li></ul><section id="rustdoc-toc"><h3><a href="#modules">Crate Items</a></h3><ul class="block"><li><a href="#modules" title="Modules">Modules</a></li></ul></section><div id="rustdoc-modnav"></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><section id="main-content" class="content"><div class="main-heading"><h1>Crate <span>futures_<wbr>channel</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/futures_channel/lib.rs.html#1-38">Source</a> </span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Asynchronous channels.</p>
<p>Like threads, concurrent tasks sometimes need to communicate with each
other. This module contains two basic abstractions for doing so:</p>
<ul>
<li><a href="oneshot/index.html" title="mod futures_channel::oneshot">oneshot</a>, a way of sending a single value from one task to another.</li>
<li><a href="mpsc/index.html" title="mod futures_channel::mpsc">mpsc</a>, a multi-producer, single-consumer channel for sending values
between tasks, analogous to the similarly-named structure in the standard
library.</li>
</ul>
<p>All items are only available when the <code>std</code> or <code>alloc</code> feature of this
library is activated, and it is activated by default.</p>
</div></details><h2 id="modules" class="section-header">Modules<a href="#modules" class="anchor">§</a></h2><dl class="item-table"><dt><a class="mod" href="mpsc/index.html" title="mod futures_channel::mpsc">mpsc</a></dt><dd>A multi-producer, single-consumer queue for sending values across
asynchronous tasks.</dd><dt><a class="mod" href="oneshot/index.html" title="mod futures_channel::oneshot">oneshot</a></dt><dd>A channel for sending a single message between asynchronous tasks.</dd></dl></section></div></main></body></html>

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,9 @@
<!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="Creates a bounded mpsc channel for communicating between asynchronous tasks."><title>channel in futures_channel::mpsc - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2"href="../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../static.files/rustdoc-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="futures_channel" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.js" data-settings-js="settings-c38705f0.js" ><script src="../../static.files/storage-e2aeef58.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-a410ff4d.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-263c88ec.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-eab170b8.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-044be391.svg"></head><body class="rustdoc fn"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><rustdoc-topbar><h2><a href="#">channel</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../futures_channel/index.html">futures_<wbr>channel</a><span class="version">0.3.32</span></h2></div><div class="sidebar-elems"><div id="rustdoc-modnav"><h2><a href="index.html">In futures_<wbr>channel::<wbr>mpsc</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="../index.html">futures_channel</a>::<wbr><a href="index.html">mpsc</a></div><h1>Function <span class="fn">channel</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../../src/futures_channel/mpsc/mod.rs.html#385-408">Source</a> </span></div><pre class="rust item-decl"><code>pub fn channel&lt;T&gt;(buffer: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -&gt; (<a class="struct" href="struct.Sender.html" title="struct futures_channel::mpsc::Sender">Sender</a>&lt;T&gt;, <a class="struct" href="struct.Receiver.html" title="struct futures_channel::mpsc::Receiver">Receiver</a>&lt;T&gt;)</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Creates a bounded mpsc channel for communicating between asynchronous tasks.</p>
<p>Being bounded, this channel provides backpressure to ensure that the sender
outpaces the receiver by only a limited amount. The channels capacity is
equal to <code>buffer + num-senders</code>. In other words, each sender gets a
guaranteed slot in the channel capacity, and on top of that there are
<code>buffer</code> “first come, first serve” slots available to all senders.</p>
<p>The <a href="struct.Receiver.html" title="struct futures_channel::mpsc::Receiver"><code>Receiver</code></a> returned implements the <a href="../../futures_core/stream/trait.Stream.html" title="trait futures_core::stream::Stream"><code>Stream</code></a> trait, while <a href="struct.Sender.html" title="struct futures_channel::mpsc::Sender"><code>Sender</code></a>
implements <code>Sink</code>.</p>
</div></details></section></div></main></body></html>

View File

@@ -0,0 +1,9 @@
<!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="Creates an unbounded mpsc channel for communicating between asynchronous tasks."><title>unbounded in futures_channel::mpsc - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2"href="../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../static.files/rustdoc-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="futures_channel" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.js" data-settings-js="settings-c38705f0.js" ><script src="../../static.files/storage-e2aeef58.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-a410ff4d.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-263c88ec.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-eab170b8.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-044be391.svg"></head><body class="rustdoc fn"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><rustdoc-topbar><h2><a href="#">unbounded</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../futures_channel/index.html">futures_<wbr>channel</a><span class="version">0.3.32</span></h2></div><div class="sidebar-elems"><div id="rustdoc-modnav"><h2><a href="index.html">In futures_<wbr>channel::<wbr>mpsc</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="../index.html">futures_channel</a>::<wbr><a href="index.html">mpsc</a></div><h1>Function <span class="fn">unbounded</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../../src/futures_channel/mpsc/mod.rs.html#420-433">Source</a> </span></div><pre class="rust item-decl"><code>pub fn unbounded&lt;T&gt;() -&gt; (<a class="struct" href="struct.UnboundedSender.html" title="struct futures_channel::mpsc::UnboundedSender">UnboundedSender</a>&lt;T&gt;, <a class="struct" href="struct.UnboundedReceiver.html" title="struct futures_channel::mpsc::UnboundedReceiver">UnboundedReceiver</a>&lt;T&gt;)</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Creates an unbounded mpsc channel for communicating between asynchronous
tasks.</p>
<p>A <code>send</code> on this channel will always succeed as long as the receive half has
not been closed. If the receiver falls behind, messages will be arbitrarily
buffered.</p>
<p><strong>Note</strong> that the amount of available system memory is an implicit bound to
the channel. Using an <code>unbounded</code> channel has the ability of causing the
process to run out of memory. In this case, the process will be aborted.</p>
</div></details></section></div></main></body></html>

View File

@@ -0,0 +1,29 @@
<!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."><title>futures_channel::mpsc - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2"href="../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../static.files/rustdoc-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="futures_channel" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.js" data-settings-js="settings-c38705f0.js" ><script src="../../static.files/storage-e2aeef58.js"></script><script defer src="../sidebar-items.js"></script><script defer src="../../static.files/main-a410ff4d.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-263c88ec.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-eab170b8.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-044be391.svg"></head><body class="rustdoc mod"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><rustdoc-topbar><h2><a href="#">Module mpsc</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../futures_channel/index.html">futures_<wbr>channel</a><span class="version">0.3.32</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Module mpsc</a></h2><h3><a href="#">Sections</a></h3><ul class="block top-toc"><li><a href="#disconnection" title="Disconnection">Disconnection</a></li><li><a href="#clean-shutdown" title="Clean Shutdown">Clean Shutdown</a></li></ul><h3><a href="#structs">Module Items</a></h3><ul class="block"><li><a href="#structs" title="Structs">Structs</a></li><li><a href="#enums" title="Enums">Enums</a></li><li><a href="#functions" title="Functions">Functions</a></li></ul></section><div id="rustdoc-modnav"><h2 class="in-crate"><a href="../index.html">In crate futures_<wbr>channel</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="../index.html">futures_channel</a></div><h1>Module <span>mpsc</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../../src/futures_channel/mpsc/mod.rs.html#1-1468">Source</a> </span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><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>
<h2 id="disconnection"><a class="doc-anchor" href="#disconnection">§</a>Disconnection</h2>
<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>
<h2 id="clean-shutdown"><a class="doc-anchor" href="#clean-shutdown">§</a>Clean Shutdown</h2>
<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></details><h2 id="structs" class="section-header">Structs<a href="#structs" class="anchor">§</a></h2><dl class="item-table"><dt><a class="struct" href="struct.Receiver.html" title="struct futures_channel::mpsc::Receiver">Receiver</a></dt><dd>The receiving end of a bounded mpsc channel.</dd><dt><a class="struct" href="struct.Recv.html" title="struct futures_channel::mpsc::Recv">Recv</a></dt><dd>Future returned by <a href="struct.Receiver.html#method.recv" title="method futures_channel::mpsc::Receiver::recv"><code>Receiver::recv()</code></a> or <a href="struct.UnboundedReceiver.html#method.recv" title="method futures_channel::mpsc::UnboundedReceiver::recv"><code>UnboundedReceiver::recv()</code></a>.</dd><dt><a class="struct" href="struct.RecvError.html" title="struct futures_channel::mpsc::RecvError">Recv<wbr>Error</a></dt><dd>Error returned by the future returned by <a href="struct.Receiver.html#method.recv" title="method futures_channel::mpsc::Receiver::recv"><code>Receiver::recv()</code></a> or <a href="struct.UnboundedReceiver.html#method.recv" title="method futures_channel::mpsc::UnboundedReceiver::recv"><code>UnboundedReceiver::recv()</code></a>.
Received when the channel is empty and closed.</dd><dt><a class="struct" href="struct.SendError.html" title="struct futures_channel::mpsc::SendError">Send<wbr>Error</a></dt><dd>The error type for <a href="struct.Sender.html" title="struct futures_channel::mpsc::Sender"><code>Sender</code>s</a> used as <code>Sink</code>s.</dd><dt><a class="struct" href="struct.Sender.html" title="struct futures_channel::mpsc::Sender">Sender</a></dt><dd>The transmission end of a bounded mpsc channel.</dd><dt><a class="struct" href="struct.TrySendError.html" title="struct futures_channel::mpsc::TrySendError">TrySend<wbr>Error</a></dt><dd>The error type returned from <a href="struct.Sender.html#method.try_send" title="method futures_channel::mpsc::Sender::try_send"><code>try_send</code></a>.</dd><dt><a class="struct" href="struct.UnboundedReceiver.html" title="struct futures_channel::mpsc::UnboundedReceiver">Unbounded<wbr>Receiver</a></dt><dd>The receiving end of an unbounded mpsc channel.</dd><dt><a class="struct" href="struct.UnboundedSender.html" title="struct futures_channel::mpsc::UnboundedSender">Unbounded<wbr>Sender</a></dt><dd>The transmission end of an unbounded mpsc channel.</dd></dl><h2 id="enums" class="section-header">Enums<a href="#enums" class="anchor">§</a></h2><dl class="item-table"><dt><a class="enum" href="enum.TryRecvError.html" title="enum futures_channel::mpsc::TryRecvError">TryRecv<wbr>Error</a></dt><dd>Error returned by <a href="struct.Receiver.html#method.try_recv" title="method futures_channel::mpsc::Receiver::try_recv"><code>Receiver::try_recv</code></a> or <a href="struct.UnboundedReceiver.html#method.try_recv" title="method futures_channel::mpsc::UnboundedReceiver::try_recv"><code>UnboundedReceiver::try_recv</code></a>.</dd></dl><h2 id="functions" class="section-header">Functions<a href="#functions" class="anchor">§</a></h2><dl class="item-table"><dt><a class="fn" href="fn.channel.html" title="fn futures_channel::mpsc::channel">channel</a></dt><dd>Creates a bounded mpsc channel for communicating between asynchronous tasks.</dd><dt><a class="fn" href="fn.unbounded.html" title="fn futures_channel::mpsc::unbounded">unbounded</a></dt><dd>Creates an unbounded mpsc channel for communicating between asynchronous
tasks.</dd></dl></section></div></main></body></html>

View File

@@ -0,0 +1 @@
window.SIDEBAR_ITEMS = {"enum":["TryRecvError"],"fn":["channel","unbounded"],"struct":["Receiver","Recv","RecvError","SendError","Sender","TrySendError","UnboundedReceiver","UnboundedSender"]};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,27 @@
<!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="Creates a new one-shot channel for sending a single value across asynchronous tasks."><title>channel in futures_channel::oneshot - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2"href="../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../static.files/rustdoc-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="futures_channel" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.js" data-settings-js="settings-c38705f0.js" ><script src="../../static.files/storage-e2aeef58.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-a410ff4d.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-263c88ec.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-eab170b8.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-044be391.svg"></head><body class="rustdoc fn"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><rustdoc-topbar><h2><a href="#">channel</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../futures_channel/index.html">futures_<wbr>channel</a><span class="version">0.3.32</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">channel</a></h2><h3><a href="#">Sections</a></h3><ul class="block top-toc"><li><a href="#examples" title="Examples">Examples</a></li></ul></section><div id="rustdoc-modnav"><h2><a href="index.html">In futures_<wbr>channel::<wbr>oneshot</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="../index.html">futures_channel</a>::<wbr><a href="index.html">oneshot</a></div><h1>Function <span class="fn">channel</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../../src/futures_channel/oneshot.rs.html#104-109">Source</a> </span></div><pre class="rust item-decl"><code>pub fn channel&lt;T&gt;() -&gt; (<a class="struct" href="struct.Sender.html" title="struct futures_channel::oneshot::Sender">Sender</a>&lt;T&gt;, <a class="struct" href="struct.Receiver.html" title="struct futures_channel::oneshot::Receiver">Receiver</a>&lt;T&gt;)</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Creates a new one-shot channel for sending a single value across asynchronous tasks.</p>
<p>The channel works for a spsc (single-producer, single-consumer) scheme.</p>
<p>This function is similar to Rusts channel constructor found in the standard
library. Two halves are returned, the first of which is a <code>Sender</code> handle,
used to signal the end of a computation and provide its value. The second
half is a <code>Receiver</code> which implements the <code>Future</code> trait, resolving to the
value that was given to the <code>Sender</code> handle.</p>
<p>Each half can be separately owned and sent across tasks.</p>
<h2 id="examples"><a class="doc-anchor" href="#examples">§</a>Examples</h2>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>futures::channel::oneshot;
<span class="kw">use </span>std::{thread, time::Duration};
<span class="kw">let </span>(sender, receiver) = oneshot::channel::&lt;i32&gt;();
thread::spawn(|| {
<span class="macro">println!</span>(<span class="string">"THREAD: sleeping zzz..."</span>);
thread::sleep(Duration::from_millis(<span class="number">1000</span>));
<span class="macro">println!</span>(<span class="string">"THREAD: i'm awake! sending."</span>);
sender.send(<span class="number">3</span>).unwrap();
});
<span class="macro">println!</span>(<span class="string">"MAIN: doing some useful stuff"</span>);
futures::executor::block_on(<span class="kw">async </span>{
<span class="macro">println!</span>(<span class="string">"MAIN: waiting for msg..."</span>);
<span class="macro">println!</span>(<span class="string">"MAIN: got: {:?}"</span>, receiver.<span class="kw">await</span>)
});</code></pre></div></div></details></section></div></main></body></html>

View File

@@ -0,0 +1,4 @@
<!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 channel for sending a single message between asynchronous tasks."><title>futures_channel::oneshot - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2"href="../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../static.files/rustdoc-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="futures_channel" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.js" data-settings-js="settings-c38705f0.js" ><script src="../../static.files/storage-e2aeef58.js"></script><script defer src="../sidebar-items.js"></script><script defer src="../../static.files/main-a410ff4d.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-263c88ec.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-eab170b8.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-044be391.svg"></head><body class="rustdoc mod"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><rustdoc-topbar><h2><a href="#">Module oneshot</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../futures_channel/index.html">futures_<wbr>channel</a><span class="version">0.3.32</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Module oneshot</a></h2><h3><a href="#structs">Module Items</a></h3><ul class="block"><li><a href="#structs" title="Structs">Structs</a></li><li><a href="#functions" title="Functions">Functions</a></li></ul></section><div id="rustdoc-modnav"><h2 class="in-crate"><a href="../index.html">In crate futures_<wbr>channel</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="../index.html">futures_channel</a></div><h1>Module <span>oneshot</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../../src/futures_channel/oneshot.rs.html#1-488">Source</a> </span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A channel for sending a single message between asynchronous tasks.</p>
<p>This is a single-producer, single-consumer channel.</p>
</div></details><h2 id="structs" class="section-header">Structs<a href="#structs" class="anchor">§</a></h2><dl class="item-table"><dt><a class="struct" href="struct.Canceled.html" title="struct futures_channel::oneshot::Canceled">Canceled</a></dt><dd>Error returned from a <a href="struct.Receiver.html" title="struct futures_channel::oneshot::Receiver"><code>Receiver</code></a> when the corresponding <a href="struct.Sender.html" title="struct futures_channel::oneshot::Sender"><code>Sender</code></a> is
dropped.</dd><dt><a class="struct" href="struct.Cancellation.html" title="struct futures_channel::oneshot::Cancellation">Cancellation</a></dt><dd>A future that resolves when the receiving end of a channel has hung up.</dd><dt><a class="struct" href="struct.Receiver.html" title="struct futures_channel::oneshot::Receiver">Receiver</a></dt><dd>A future for a value that will be provided by another asynchronous task.</dd><dt><a class="struct" href="struct.Sender.html" title="struct futures_channel::oneshot::Sender">Sender</a></dt><dd>A means of transmitting a single value to another task.</dd></dl><h2 id="functions" class="section-header">Functions<a href="#functions" class="anchor">§</a></h2><dl class="item-table"><dt><a class="fn" href="fn.channel.html" title="fn futures_channel::oneshot::channel">channel</a></dt><dd>Creates a new one-shot channel for sending a single value across asynchronous tasks.</dd></dl></section></div></main></body></html>

View File

@@ -0,0 +1 @@
window.SIDEBAR_ITEMS = {"fn":["channel"],"struct":["Canceled","Cancellation","Receiver","Sender"]};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
window.SIDEBAR_ITEMS = {"mod":["mpsc","oneshot"]};