Files
GopherGate/target/doc/zstd_sys/fn.ZSTD_decompressStream.html
2026-02-26 12:00:21 -05:00

26 lines
5.3 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="ZSTD_decompressStream() : Streaming decompression function. Call repetitively to consume full input updating it as necessary. Function will update both input and output `pos` fields exposing current state via these fields:"><title>ZSTD_decompressStream in zstd_sys - 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="zstd_sys" 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="#">ZSTD_decompressStream</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../zstd_sys/index.html">zstd_<wbr>sys</a><span class="version">2.0.16+zstd.1.5.7</span></h2></div><div class="sidebar-elems"><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"><div class="rustdoc-breadcrumbs"><a href="index.html">zstd_sys</a></div><h1>Function <span class="fn">ZSTD_<wbr>decompress<wbr>Stream</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/zstd_sys/bindings_zstd.rs.html#443-447">Source</a> </span></div><pre class="rust item-decl"><code>pub unsafe extern &quot;C&quot; fn ZSTD_decompressStream(
zds: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/core/primitive.pointer.html">*mut </a><a class="type" href="type.ZSTD_DStream.html" title="type zstd_sys::ZSTD_DStream">ZSTD_DStream</a>,
output: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/core/primitive.pointer.html">*mut </a><a class="type" href="type.ZSTD_outBuffer.html" title="type zstd_sys::ZSTD_outBuffer">ZSTD_outBuffer</a>,
input: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/core/primitive.pointer.html">*mut </a><a class="type" href="type.ZSTD_inBuffer.html" title="type zstd_sys::ZSTD_inBuffer">ZSTD_inBuffer</a>,
) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.93.1/core/primitive.usize.html">usize</a></code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>ZSTD_decompressStream() :
Streaming decompression function.
Call repetitively to consume full input updating it as necessary.
Function will update both input and output <code>pos</code> fields exposing current state via these fields:</p>
<ul>
<li><code>input.pos &lt; input.size</code>, some input remaining and caller should provide remaining input
on the next call.</li>
<li><code>output.pos &lt; output.size</code>, decoder flushed internal output buffer.</li>
<li><code>output.pos == output.size</code>, unflushed data potentially present in the internal buffers,
check ZSTD_decompressStream() @return value,
if &gt; 0, invoke it again to flush remaining data to output.
Note : with no additional input, amount of data flushed &lt;= ZSTD_BLOCKSIZE_MAX.</li>
</ul>
<p>@return : 0 when a frame is completely decoded and fully flushed,
or an error code, which can be tested using ZSTD_isError(),
or any other value &gt; 0, which means there is some decoding or flushing to do to complete current frame.</p>
<p>Note: when an operation returns with an error code, the @zds state may be left in undefined state.
Its UB to invoke <code>ZSTD_decompressStream()</code> on such a state.
In order to re-use such a state, it must be first reset,
which can be done explicitly (<code>ZSTD_DCtx_reset()</code>),
or is implied for operations starting some new decompression job (<code>ZSTD_initDStream</code>, <code>ZSTD_decompressDCtx()</code>, <code>ZSTD_decompress_usingDict()</code>)</p>
</div></details></section></div></main></body></html>