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

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,2 @@
<!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="Dont add padding when encoding, and require no padding when decoding."><title>NO_PAD in base64::engine::general_purpose - 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="base64" 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 constant"><!--[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="#">NO_PAD</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../base64/index.html">base64</a><span class="version">0.22.1</span></h2></div><div class="sidebar-elems"><div id="rustdoc-modnav"><h2><a href="index.html">In base64::<wbr>engine::<wbr>general_<wbr>purpose</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">base64</a>::<wbr><a href="../index.html">engine</a>::<wbr><a href="index.html">general_purpose</a></div><h1>Constant <span class="constant">NO_PAD</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/base64/engine/general_purpose/mod.rs.html#350-352">Source</a> </span></div><pre class="rust item-decl"><code>pub const NO_PAD: <a class="struct" href="struct.GeneralPurposeConfig.html" title="struct base64::engine::general_purpose::GeneralPurposeConfig">GeneralPurposeConfig</a>;</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Dont add padding when encoding, and require no padding when decoding.</p>
</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="Include padding bytes when encoding, and require that they be present when decoding."><title>PAD in base64::engine::general_purpose - 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="base64" 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 constant"><!--[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="#">PAD</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../base64/index.html">base64</a><span class="version">0.22.1</span></h2></div><div class="sidebar-elems"><div id="rustdoc-modnav"><h2><a href="index.html">In base64::<wbr>engine::<wbr>general_<wbr>purpose</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">base64</a>::<wbr><a href="../index.html">engine</a>::<wbr><a href="index.html">general_purpose</a></div><h1>Constant <span class="constant">PAD</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/base64/engine/general_purpose/mod.rs.html#347">Source</a> </span></div><pre class="rust item-decl"><code>pub const PAD: <a class="struct" href="struct.GeneralPurposeConfig.html" title="struct base64::engine::general_purpose::GeneralPurposeConfig">GeneralPurposeConfig</a>;</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Include padding bytes when encoding, and require that they be present when decoding.</p>
<p>This is the standard per the base64 RFC, but consider using <a href="constant.NO_PAD.html" title="constant base64::engine::general_purpose::NO_PAD">NO_PAD</a> instead as padding serves
little purpose in practice.</p>
</div></details></section></div></main></body></html>

View File

@@ -0,0 +1,2 @@
<!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 GeneralPurpose engine using the alphabet::STANDARD base64 alphabet and PAD config."><title>STANDARD in base64::engine::general_purpose - 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="base64" 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 constant"><!--[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="#">STANDARD</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../base64/index.html">base64</a><span class="version">0.22.1</span></h2></div><div class="sidebar-elems"><div id="rustdoc-modnav"><h2><a href="index.html">In base64::<wbr>engine::<wbr>general_<wbr>purpose</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">base64</a>::<wbr><a href="../index.html">engine</a>::<wbr><a href="index.html">general_purpose</a></div><h1>Constant <span class="constant">STANDARD</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/base64/engine/general_purpose/mod.rs.html#332">Source</a> </span></div><pre class="rust item-decl"><code>pub const STANDARD: <a class="struct" href="struct.GeneralPurpose.html" title="struct base64::engine::general_purpose::GeneralPurpose">GeneralPurpose</a>;</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A <a href="struct.GeneralPurpose.html" title="struct base64::engine::general_purpose::GeneralPurpose">GeneralPurpose</a> engine using the <a href="../../alphabet/constant.STANDARD.html" title="constant base64::alphabet::STANDARD">alphabet::STANDARD</a> base64 alphabet and <a href="constant.PAD.html" title="constant base64::engine::general_purpose::PAD">PAD</a> config.</p>
</div></details></section></div></main></body></html>

View File

@@ -0,0 +1,2 @@
<!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 GeneralPurpose engine using the alphabet::STANDARD base64 alphabet and NO_PAD config."><title>STANDARD_NO_PAD in base64::engine::general_purpose - 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="base64" 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 constant"><!--[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="#">STANDARD_NO_PAD</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../base64/index.html">base64</a><span class="version">0.22.1</span></h2></div><div class="sidebar-elems"><div id="rustdoc-modnav"><h2><a href="index.html">In base64::<wbr>engine::<wbr>general_<wbr>purpose</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">base64</a>::<wbr><a href="../index.html">engine</a>::<wbr><a href="index.html">general_purpose</a></div><h1>Constant <span class="constant">STANDARD_<wbr>NO_<wbr>PAD</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/base64/engine/general_purpose/mod.rs.html#335">Source</a> </span></div><pre class="rust item-decl"><code>pub const STANDARD_NO_PAD: <a class="struct" href="struct.GeneralPurpose.html" title="struct base64::engine::general_purpose::GeneralPurpose">GeneralPurpose</a>;</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A <a href="struct.GeneralPurpose.html" title="struct base64::engine::general_purpose::GeneralPurpose">GeneralPurpose</a> engine using the <a href="../../alphabet/constant.STANDARD.html" title="constant base64::alphabet::STANDARD">alphabet::STANDARD</a> base64 alphabet and <a href="constant.NO_PAD.html" title="constant base64::engine::general_purpose::NO_PAD">NO_PAD</a> config.</p>
</div></details></section></div></main></body></html>

View File

@@ -0,0 +1,2 @@
<!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 GeneralPurpose engine using the alphabet::URL_SAFE base64 alphabet and PAD config."><title>URL_SAFE in base64::engine::general_purpose - 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="base64" 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 constant"><!--[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="#">URL_SAFE</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../base64/index.html">base64</a><span class="version">0.22.1</span></h2></div><div class="sidebar-elems"><div id="rustdoc-modnav"><h2><a href="index.html">In base64::<wbr>engine::<wbr>general_<wbr>purpose</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">base64</a>::<wbr><a href="../index.html">engine</a>::<wbr><a href="index.html">general_purpose</a></div><h1>Constant <span class="constant">URL_<wbr>SAFE</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/base64/engine/general_purpose/mod.rs.html#338">Source</a> </span></div><pre class="rust item-decl"><code>pub const URL_SAFE: <a class="struct" href="struct.GeneralPurpose.html" title="struct base64::engine::general_purpose::GeneralPurpose">GeneralPurpose</a>;</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A <a href="struct.GeneralPurpose.html" title="struct base64::engine::general_purpose::GeneralPurpose">GeneralPurpose</a> engine using the <a href="../../alphabet/constant.URL_SAFE.html" title="constant base64::alphabet::URL_SAFE">alphabet::URL_SAFE</a> base64 alphabet and <a href="constant.PAD.html" title="constant base64::engine::general_purpose::PAD">PAD</a> config.</p>
</div></details></section></div></main></body></html>

View File

@@ -0,0 +1,2 @@
<!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 GeneralPurpose engine using the alphabet::URL_SAFE base64 alphabet and NO_PAD config."><title>URL_SAFE_NO_PAD in base64::engine::general_purpose - 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="base64" 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 constant"><!--[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="#">URL_SAFE_NO_PAD</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../base64/index.html">base64</a><span class="version">0.22.1</span></h2></div><div class="sidebar-elems"><div id="rustdoc-modnav"><h2><a href="index.html">In base64::<wbr>engine::<wbr>general_<wbr>purpose</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">base64</a>::<wbr><a href="../index.html">engine</a>::<wbr><a href="index.html">general_purpose</a></div><h1>Constant <span class="constant">URL_<wbr>SAFE_<wbr>NO_<wbr>PAD</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/base64/engine/general_purpose/mod.rs.html#341">Source</a> </span></div><pre class="rust item-decl"><code>pub const URL_SAFE_NO_PAD: <a class="struct" href="struct.GeneralPurpose.html" title="struct base64::engine::general_purpose::GeneralPurpose">GeneralPurpose</a>;</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A <a href="struct.GeneralPurpose.html" title="struct base64::engine::general_purpose::GeneralPurpose">GeneralPurpose</a> engine using the <a href="../../alphabet/constant.URL_SAFE.html" title="constant base64::alphabet::URL_SAFE">alphabet::URL_SAFE</a> base64 alphabet and <a href="constant.NO_PAD.html" title="constant base64::engine::general_purpose::NO_PAD">NO_PAD</a> config.</p>
</div></details></section></div></main></body></html>

View File

@@ -0,0 +1,2 @@
<!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="Provides the GeneralPurpose engine and associated config types."><title>base64::engine::general_purpose - 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="base64" 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 general_purpose</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../base64/index.html">base64</a><span class="version">0.22.1</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Module general_<wbr>purpose</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="#constants" title="Constants">Constants</a></li></ul></section><div id="rustdoc-modnav"><h2><a href="../index.html">In base64::<wbr>engine</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">base64</a>::<wbr><a href="../index.html">engine</a></div><h1>Module <span>general_<wbr>purpose</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/base64/engine/general_purpose/mod.rs.html#1-352">Source</a> </span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Provides the <a href="struct.GeneralPurpose.html" title="struct base64::engine::general_purpose::GeneralPurpose">GeneralPurpose</a> engine and associated config types.</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.GeneralPurpose.html" title="struct base64::engine::general_purpose::GeneralPurpose">General<wbr>Purpose</a></dt><dd>A general-purpose base64 engine.</dd><dt><a class="struct" href="struct.GeneralPurposeConfig.html" title="struct base64::engine::general_purpose::GeneralPurposeConfig">General<wbr>Purpose<wbr>Config</a></dt><dd>Contains configuration parameters for base64 encoding and decoding.</dd></dl><h2 id="constants" class="section-header">Constants<a href="#constants" class="anchor">§</a></h2><dl class="item-table"><dt><a class="constant" href="constant.NO_PAD.html" title="constant base64::engine::general_purpose::NO_PAD">NO_PAD</a></dt><dd>Dont add padding when encoding, and require no padding when decoding.</dd><dt><a class="constant" href="constant.PAD.html" title="constant base64::engine::general_purpose::PAD">PAD</a></dt><dd>Include padding bytes when encoding, and require that they be present when decoding.</dd><dt><a class="constant" href="constant.STANDARD.html" title="constant base64::engine::general_purpose::STANDARD">STANDARD</a></dt><dd>A <a href="struct.GeneralPurpose.html" title="struct base64::engine::general_purpose::GeneralPurpose">GeneralPurpose</a> engine using the <a href="../../alphabet/constant.STANDARD.html" title="constant base64::alphabet::STANDARD">alphabet::STANDARD</a> base64 alphabet and <a href="constant.PAD.html" title="constant base64::engine::general_purpose::PAD">PAD</a> config.</dd><dt><a class="constant" href="constant.STANDARD_NO_PAD.html" title="constant base64::engine::general_purpose::STANDARD_NO_PAD">STANDARD_<wbr>NO_<wbr>PAD</a></dt><dd>A <a href="struct.GeneralPurpose.html" title="struct base64::engine::general_purpose::GeneralPurpose">GeneralPurpose</a> engine using the <a href="../../alphabet/constant.STANDARD.html" title="constant base64::alphabet::STANDARD">alphabet::STANDARD</a> base64 alphabet and <a href="constant.NO_PAD.html" title="constant base64::engine::general_purpose::NO_PAD">NO_PAD</a> config.</dd><dt><a class="constant" href="constant.URL_SAFE.html" title="constant base64::engine::general_purpose::URL_SAFE">URL_<wbr>SAFE</a></dt><dd>A <a href="struct.GeneralPurpose.html" title="struct base64::engine::general_purpose::GeneralPurpose">GeneralPurpose</a> engine using the <a href="../../alphabet/constant.URL_SAFE.html" title="constant base64::alphabet::URL_SAFE">alphabet::URL_SAFE</a> base64 alphabet and <a href="constant.PAD.html" title="constant base64::engine::general_purpose::PAD">PAD</a> config.</dd><dt><a class="constant" href="constant.URL_SAFE_NO_PAD.html" title="constant base64::engine::general_purpose::URL_SAFE_NO_PAD">URL_<wbr>SAFE_<wbr>NO_<wbr>PAD</a></dt><dd>A <a href="struct.GeneralPurpose.html" title="struct base64::engine::general_purpose::GeneralPurpose">GeneralPurpose</a> engine using the <a href="../../alphabet/constant.URL_SAFE.html" title="constant base64::alphabet::URL_SAFE">alphabet::URL_SAFE</a> base64 alphabet and <a href="constant.NO_PAD.html" title="constant base64::engine::general_purpose::NO_PAD">NO_PAD</a> config.</dd></dl></section></div></main></body></html>

View File

@@ -0,0 +1 @@
window.SIDEBAR_ITEMS = {"constant":["NO_PAD","PAD","STANDARD","STANDARD_NO_PAD","URL_SAFE","URL_SAFE_NO_PAD"],"struct":["GeneralPurpose","GeneralPurposeConfig"]};

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,3 @@
<!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="Provides the Engine abstraction and out of the box implementations."><title>base64::engine - 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="base64" 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 engine</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../base64/index.html">base64</a><span class="version">0.22.1</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Module engine</a></h2><h3><a href="#reexports">Module Items</a></h3><ul class="block"><li><a href="#reexports" title="Re-exports">Re-exports</a></li><li><a href="#modules" title="Modules">Modules</a></li><li><a href="#structs" title="Structs">Structs</a></li><li><a href="#enums" title="Enums">Enums</a></li><li><a href="#traits" title="Traits">Traits</a></li></ul></section><div id="rustdoc-modnav"><h2 class="in-crate"><a href="../index.html">In crate base64</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">base64</a></div><h1>Module <span>engine</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/base64/engine/mod.rs.html#1-478">Source</a> </span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Provides the <a href="trait.Engine.html" title="trait base64::engine::Engine">Engine</a> abstraction and out of the box implementations.</p>
</div></details><h2 id="reexports" class="section-header">Re-exports<a href="#reexports" class="anchor">§</a></h2><dl class="item-table reexports"><dt id="reexport.GeneralPurpose"><code>pub use general_purpose::<a class="struct" href="general_purpose/struct.GeneralPurpose.html" title="struct base64::engine::general_purpose::GeneralPurpose">GeneralPurpose</a>;</code></dt><dt id="reexport.GeneralPurposeConfig"><code>pub use general_purpose::<a class="struct" href="general_purpose/struct.GeneralPurposeConfig.html" title="struct base64::engine::general_purpose::GeneralPurposeConfig">GeneralPurposeConfig</a>;</code></dt></dl><h2 id="modules" class="section-header">Modules<a href="#modules" class="anchor">§</a></h2><dl class="item-table"><dt><a class="mod" href="general_purpose/index.html" title="mod base64::engine::general_purpose">general_<wbr>purpose</a></dt><dd>Provides the <a href="general_purpose/struct.GeneralPurpose.html" title="struct base64::engine::general_purpose::GeneralPurpose">GeneralPurpose</a> engine and associated config types.</dd></dl><h2 id="structs" class="section-header">Structs<a href="#structs" class="anchor">§</a></h2><dl class="item-table"><dt><a class="struct" href="struct.DecodeMetadata.html" title="struct base64::engine::DecodeMetadata">Decode<wbr>Metadata</a></dt><dd>Metadata about the result of a decode operation</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.DecodePaddingMode.html" title="enum base64::engine::DecodePaddingMode">Decode<wbr>Padding<wbr>Mode</a></dt><dd>Controls how pad bytes are handled when decoding.</dd></dl><h2 id="traits" class="section-header">Traits<a href="#traits" class="anchor">§</a></h2><dl class="item-table"><dt><a class="trait" href="trait.Config.html" title="trait base64::engine::Config">Config</a></dt><dd>The minimal level of configuration that engines must support.</dd><dt><a class="trait" href="trait.DecodeEstimate.html" title="trait base64::engine::DecodeEstimate">Decode<wbr>Estimate</a></dt><dd>The decode estimate used by an engine implementation. Users do not need to interact with this;
it is only for engine implementors.</dd><dt><a class="trait" href="trait.Engine.html" title="trait base64::engine::Engine">Engine</a></dt><dd>An <code>Engine</code> provides low-level encoding and decoding operations that all other higher-level parts of the API use. Users of the library will generally not need to implement this.</dd></dl></section></div></main></body></html>

View File

@@ -0,0 +1 @@
window.SIDEBAR_ITEMS = {"enum":["DecodePaddingMode"],"mod":["general_purpose"],"struct":["DecodeMetadata"],"trait":["Config","DecodeEstimate","Engine"]};

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="The minimal level of configuration that engines must support."><title>Config in base64::engine - 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="base64" 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 trait"><!--[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="#">Config</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../base64/index.html">base64</a><span class="version">0.22.1</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Config</a></h2><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.encode_padding" title="encode_padding">encode_padding</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><div id="rustdoc-modnav"><h2><a href="index.html">In base64::<wbr>engine</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">base64</a>::<wbr><a href="index.html">engine</a></div><h1>Trait <span class="trait">Config</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/base64/engine/mod.rs.html#422-432">Source</a> </span></div><pre class="rust item-decl"><code>pub trait Config {
// Required method
fn <a href="#tymethod.encode_padding" class="fn">encode_padding</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a>;
}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>The minimal level of configuration that engines must support.</p>
</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.encode_padding" class="method"><a class="src rightside" href="../../src/base64/engine/mod.rs.html#431">Source</a><h4 class="code-header">fn <a href="#tymethod.encode_padding" class="fn">encode_padding</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a></h4></section></summary><div class="docblock"><p>Returns <code>true</code> if padding should be added after the encoded output.</p>
<p>Padding is added outside the engines encode() since the engine may be used
to encode only a chunk of the overall output, so it cant always know when
the output is “done” and would therefore need padding (if configured).</p>
</div></details></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><section id="impl-Config-for-GeneralPurposeConfig" class="impl"><a class="src rightside" href="../../src/base64/engine/general_purpose/mod.rs.html#325-329">Source</a><a href="#impl-Config-for-GeneralPurposeConfig" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Config.html" title="trait base64::engine::Config">Config</a> for <a class="struct" href="general_purpose/struct.GeneralPurposeConfig.html" title="struct base64::engine::general_purpose::GeneralPurposeConfig">GeneralPurposeConfig</a></h3></section></div><script src="../../trait.impl/base64/engine/trait.Config.js" async></script></section></div></main></body></html>

View File

@@ -0,0 +1,12 @@
<!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="The decode estimate used by an engine implementation. Users do not need to interact with this; it is only for engine implementors."><title>DecodeEstimate in base64::engine - 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="base64" 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 trait"><!--[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="#">DecodeEstimate</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../base64/index.html">base64</a><span class="version">0.22.1</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Decode<wbr>Estimate</a></h2><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.decoded_len_estimate" title="decoded_len_estimate">decoded_len_estimate</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><div id="rustdoc-modnav"><h2><a href="index.html">In base64::<wbr>engine</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">base64</a>::<wbr><a href="index.html">engine</a></div><h1>Trait <span class="trait">Decode<wbr>Estimate</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/base64/engine/mod.rs.html#439-446">Source</a> </span></div><pre class="rust item-decl"><code>pub trait DecodeEstimate {
// Required method
fn <a href="#tymethod.decoded_len_estimate" class="fn">decoded_len_estimate</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/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>The decode estimate used by an engine implementation. Users do not need to interact with this;
it is only for engine implementors.</p>
<p>Implementors may store relevant data here when constructing this to avoid having to calculate
them again during actual decoding.</p>
</div></details><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.decoded_len_estimate" class="method"><a class="src rightside" href="../../src/base64/engine/mod.rs.html#445">Source</a><h4 class="code-header">fn <a href="#tymethod.decoded_len_estimate" class="fn">decoded_len_estimate</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class="docblock"><p>Returns a conservative (err on the side of too big) estimate of the decoded length to use
for pre-allocating buffers, etc.</p>
<p>The estimate must be no larger than the next largest complete triple of decoded bytes.
That is, the final quad of tokens to decode may be assumed to be complete with no padding.</p>
</div></details></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"></div><script src="../../trait.impl/base64/engine/trait.DecodeEstimate.js" async></script></section></div></main></body></html>

View File

@@ -0,0 +1,153 @@
<!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="An `Engine` provides low-level encoding and decoding operations that all other higher-level parts of the API use. Users of the library will generally not need to implement this."><title>Engine in base64::engine - 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="base64" 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 trait"><!--[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="#">Engine</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../base64/index.html">base64</a><span class="version">0.22.1</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Engine</a></h2><h3><a href="#required-associated-types">Required Associated Types</a></h3><ul class="block"><li><a href="#associatedtype.Config" title="Config">Config</a></li><li><a href="#associatedtype.DecodeEstimate" title="DecodeEstimate">DecodeEstimate</a></li></ul><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.config" title="config">config</a></li></ul><h3><a href="#provided-methods">Provided Methods</a></h3><ul class="block"><li><a href="#method.decode" title="decode">decode</a></li><li><a href="#method.decode_slice" title="decode_slice">decode_slice</a></li><li><a href="#method.decode_slice_unchecked" title="decode_slice_unchecked">decode_slice_unchecked</a></li><li><a href="#method.decode_vec" title="decode_vec">decode_vec</a></li><li><a href="#method.encode" title="encode">encode</a></li><li><a href="#method.encode_slice" title="encode_slice">encode_slice</a></li><li><a href="#method.encode_string" title="encode_string">encode_string</a></li></ul><h3><a href="#dyn-compatibility">Dyn Compatibility</a></h3><h3><a href="#implementors">Implementors</a></h3></section><div id="rustdoc-modnav"><h2><a href="index.html">In base64::<wbr>engine</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">base64</a>::<wbr><a href="index.html">engine</a></div><h1>Trait <span class="trait">Engine</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/base64/engine/mod.rs.html#39-419">Source</a> </span></div><pre class="rust item-decl"><code>pub trait Engine: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> {
type <a href="#associatedtype.Config" class="associatedtype">Config</a>: <a class="trait" href="trait.Config.html" title="trait base64::engine::Config">Config</a>;
type <a href="#associatedtype.DecodeEstimate" class="associatedtype">DecodeEstimate</a>: <a class="trait" href="trait.DecodeEstimate.html" title="trait base64::engine::DecodeEstimate">DecodeEstimate</a>;
// Required method
fn <a href="#tymethod.config" class="fn">config</a>(&amp;self) -&gt; &amp;Self::<a class="associatedtype" href="trait.Engine.html#associatedtype.Config" title="type base64::engine::Engine::Config">Config</a>;
// Provided methods
fn <a href="#method.encode" class="fn">encode</a>&lt;T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>]&gt;&gt;(&amp;self, input: T) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a> { ... }
<span class="item-spacer"></span> fn <a href="#method.encode_string" class="fn">encode_string</a>&lt;T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>]&gt;&gt;(&amp;self, input: T, output_buf: &amp;mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>) { ... }
<span class="item-spacer"></span> fn <a href="#method.encode_slice" class="fn">encode_slice</a>&lt;T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>]&gt;&gt;(
&amp;self,
input: T,
output_buf: &amp;mut [<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>],
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>, <a class="enum" href="../enum.EncodeSliceError.html" title="enum base64::EncodeSliceError">EncodeSliceError</a>&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.decode" class="fn">decode</a>&lt;T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>]&gt;&gt;(&amp;self, input: T) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>&gt;, <a class="enum" href="../enum.DecodeError.html" title="enum base64::DecodeError">DecodeError</a>&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.decode_vec" class="fn">decode_vec</a>&lt;T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>]&gt;&gt;(
&amp;self,
input: T,
buffer: &amp;mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>&gt;,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.DecodeError.html" title="enum base64::DecodeError">DecodeError</a>&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.decode_slice" class="fn">decode_slice</a>&lt;T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>]&gt;&gt;(
&amp;self,
input: T,
output: &amp;mut [<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>],
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>, <a class="enum" href="../enum.DecodeSliceError.html" title="enum base64::DecodeSliceError">DecodeSliceError</a>&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.decode_slice_unchecked" class="fn">decode_slice_unchecked</a>&lt;T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>]&gt;&gt;(
&amp;self,
input: T,
output: &amp;mut [<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>],
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>, <a class="enum" href="../enum.DecodeError.html" title="enum base64::DecodeError">DecodeError</a>&gt; { ... }
}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>An <code>Engine</code> provides low-level encoding and decoding operations that all other higher-level parts of the API use. Users of the library will generally not need to implement this.</p>
<p>Different implementations offer different characteristics. The library currently ships with
<a href="general_purpose/struct.GeneralPurpose.html" title="struct base64::engine::general_purpose::GeneralPurpose">GeneralPurpose</a> that offers good speed and works on any CPU, with more choices
coming later, like a constant-time one when side channel resistance is called for, and vendor-specific vectorized ones for more speed.</p>
<p>See <a href="general_purpose/constant.STANDARD_NO_PAD.html" title="constant base64::engine::general_purpose::STANDARD_NO_PAD">general_purpose::STANDARD_NO_PAD</a> if you just want standard base64. Otherwise, when possible, its
recommended to store the engine in a <code>const</code> so that references to it wont pose any lifetime
issues, and to avoid repeating the cost of engine setup.</p>
<p>Since almost nobody will need to implement <code>Engine</code>, docs for internal methods are hidden.</p>
</div></details><h2 id="required-associated-types" class="section-header">Required Associated Types<a href="#required-associated-types" class="anchor">§</a></h2><div class="methods"><details class="toggle" open><summary><section id="associatedtype.Config" class="method"><a class="src rightside" href="../../src/base64/engine/mod.rs.html#41">Source</a><h4 class="code-header">type <a href="#associatedtype.Config" class="associatedtype">Config</a>: <a class="trait" href="trait.Config.html" title="trait base64::engine::Config">Config</a></h4></section></summary><div class="docblock"><p>The config type used by this engine</p>
</div></details><details class="toggle" open><summary><section id="associatedtype.DecodeEstimate" class="method"><a class="src rightside" href="../../src/base64/engine/mod.rs.html#43">Source</a><h4 class="code-header">type <a href="#associatedtype.DecodeEstimate" class="associatedtype">DecodeEstimate</a>: <a class="trait" href="trait.DecodeEstimate.html" title="trait base64::engine::DecodeEstimate">DecodeEstimate</a></h4></section></summary><div class="docblock"><p>The decode estimate used by this engine</p>
</div></details></div><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.config" class="method"><a class="src rightside" href="../../src/base64/engine/mod.rs.html#95">Source</a><h4 class="code-header">fn <a href="#tymethod.config" class="fn">config</a>(&amp;self) -&gt; &amp;Self::<a class="associatedtype" href="trait.Engine.html#associatedtype.Config" title="type base64::engine::Engine::Config">Config</a></h4></section></summary><div class="docblock"><p>Returns the config for this engine.</p>
</div></details></div><h2 id="provided-methods" class="section-header">Provided Methods<a href="#provided-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="method.encode" class="method"><a class="src rightside" href="../../src/base64/engine/mod.rs.html#115-131">Source</a><h4 class="code-header">fn <a href="#method.encode" class="fn">encode</a>&lt;T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>]&gt;&gt;(&amp;self, input: T) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></h4></section></summary><div class="docblock"><p>Encode arbitrary octets as base64 using the provided <code>Engine</code>.
Returns a <code>String</code>.</p>
<h5 id="example"><a class="doc-anchor" href="#example">§</a>Example</h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>base64::{Engine <span class="kw">as _</span>, engine::{<span class="self">self</span>, general_purpose}, alphabet};
<span class="kw">let </span>b64 = general_purpose::STANDARD.encode(<span class="string">b"hello world~"</span>);
<span class="macro">println!</span>(<span class="string">"{}"</span>, b64);
<span class="kw">const </span>CUSTOM_ENGINE: engine::GeneralPurpose =
engine::GeneralPurpose::new(<span class="kw-2">&amp;</span>alphabet::URL_SAFE, general_purpose::NO_PAD);
<span class="kw">let </span>b64_url = CUSTOM_ENGINE.encode(<span class="string">b"hello internet~"</span>);</code></pre></div></div></details><details class="toggle method-toggle" open><summary><section id="method.encode_string" class="method"><a class="src rightside" href="../../src/base64/engine/mod.rs.html#155-168">Source</a><h4 class="code-header">fn <a href="#method.encode_string" class="fn">encode_string</a>&lt;T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>]&gt;&gt;(&amp;self, input: T, output_buf: &amp;mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>)</h4></section></summary><div class="docblock"><p>Encode arbitrary octets as base64 into a supplied <code>String</code>.
Writes into the supplied <code>String</code>, which may allocate if its internal buffer isnt big enough.</p>
<h5 id="example-1"><a class="doc-anchor" href="#example-1">§</a>Example</h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>base64::{Engine <span class="kw">as _</span>, engine::{<span class="self">self</span>, general_purpose}, alphabet};
<span class="kw">const </span>CUSTOM_ENGINE: engine::GeneralPurpose =
engine::GeneralPurpose::new(<span class="kw-2">&amp;</span>alphabet::URL_SAFE, general_purpose::NO_PAD);
<span class="kw">fn </span>main() {
<span class="kw">let </span><span class="kw-2">mut </span>buf = String::new();
general_purpose::STANDARD.encode_string(<span class="string">b"hello world~"</span>, <span class="kw-2">&amp;mut </span>buf);
<span class="macro">println!</span>(<span class="string">"{}"</span>, buf);
buf.clear();
CUSTOM_ENGINE.encode_string(<span class="string">b"hello internet~"</span>, <span class="kw-2">&amp;mut </span>buf);
<span class="macro">println!</span>(<span class="string">"{}"</span>, buf);
}</code></pre></div></div></details><details class="toggle method-toggle" open><summary><section id="method.encode_slice" class="method"><a class="src rightside" href="../../src/base64/engine/mod.rs.html#194-222">Source</a><h4 class="code-header">fn <a href="#method.encode_slice" class="fn">encode_slice</a>&lt;T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>]&gt;&gt;(
&amp;self,
input: T,
output_buf: &amp;mut [<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>],
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>, <a class="enum" href="../enum.EncodeSliceError.html" title="enum base64::EncodeSliceError">EncodeSliceError</a>&gt;</h4></section></summary><div class="docblock"><p>Encode arbitrary octets as base64 into a supplied slice.
Writes into the supplied output buffer.</p>
<p>This is useful if you wish to avoid allocation entirely (e.g. encoding into a stack-resident
or statically-allocated buffer).</p>
<h5 id="example-2"><a class="doc-anchor" href="#example-2">§</a>Example</h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>base64::{Engine <span class="kw">as _</span>, engine::general_purpose};
<span class="kw">let </span>s = <span class="string">b"hello internet!"</span>;
<span class="kw">let </span><span class="kw-2">mut </span>buf = Vec::new();
<span class="comment">// make sure we'll have a slice big enough for base64 + padding
</span>buf.resize(s.len() * <span class="number">4 </span>/ <span class="number">3 </span>+ <span class="number">4</span>, <span class="number">0</span>);
<span class="kw">let </span>bytes_written = general_purpose::STANDARD.encode_slice(s, <span class="kw-2">&amp;mut </span>buf).unwrap();
<span class="comment">// shorten our vec down to just what was written
</span>buf.truncate(bytes_written);
<span class="macro">assert_eq!</span>(s, general_purpose::STANDARD.decode(<span class="kw-2">&amp;</span>buf).unwrap().as_slice());</code></pre></div></div></details><details class="toggle method-toggle" open><summary><section id="method.decode" class="method"><a class="src rightside" href="../../src/base64/engine/mod.rs.html#244-268">Source</a><h4 class="code-header">fn <a href="#method.decode" class="fn">decode</a>&lt;T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>]&gt;&gt;(&amp;self, input: T) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>&gt;, <a class="enum" href="../enum.DecodeError.html" title="enum base64::DecodeError">DecodeError</a>&gt;</h4></section></summary><div class="docblock"><p>Decode the input into a new <code>Vec</code>.</p>
<h5 id="example-3"><a class="doc-anchor" href="#example-3">§</a>Example</h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>base64::{Engine <span class="kw">as _</span>, alphabet, engine::{<span class="self">self</span>, general_purpose}};
<span class="kw">let </span>bytes = general_purpose::STANDARD
.decode(<span class="string">"aGVsbG8gd29ybGR+Cg=="</span>).unwrap();
<span class="macro">println!</span>(<span class="string">"{:?}"</span>, bytes);
<span class="comment">// custom engine setup
</span><span class="kw">let </span>bytes_url = engine::GeneralPurpose::new(
<span class="kw-2">&amp;</span>alphabet::URL_SAFE,
general_purpose::NO_PAD)
.decode(<span class="string">"aGVsbG8gaW50ZXJuZXR-Cg"</span>).unwrap();
<span class="macro">println!</span>(<span class="string">"{:?}"</span>, bytes_url);</code></pre></div></div></details><details class="toggle method-toggle" open><summary><section id="method.decode_vec" class="method"><a class="src rightside" href="../../src/base64/engine/mod.rs.html#302-339">Source</a><h4 class="code-header">fn <a href="#method.decode_vec" class="fn">decode_vec</a>&lt;T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>]&gt;&gt;(
&amp;self,
input: T,
buffer: &amp;mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>&gt;,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, <a class="enum" href="../enum.DecodeError.html" title="enum base64::DecodeError">DecodeError</a>&gt;</h4></section></summary><div class="docblock"><p>Decode the <code>input</code> into the supplied <code>buffer</code>.</p>
<p>Writes into the supplied <code>Vec</code>, which may allocate if its internal buffer isnt big enough.
Returns a <code>Result</code> containing an empty tuple, aka <code>()</code>.</p>
<h5 id="example-4"><a class="doc-anchor" href="#example-4">§</a>Example</h5>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>base64::{Engine <span class="kw">as _</span>, alphabet, engine::{<span class="self">self</span>, general_purpose}};
<span class="kw">const </span>CUSTOM_ENGINE: engine::GeneralPurpose =
engine::GeneralPurpose::new(<span class="kw-2">&amp;</span>alphabet::URL_SAFE, general_purpose::PAD);
<span class="kw">fn </span>main() {
<span class="kw">use </span>base64::Engine;
<span class="kw">let </span><span class="kw-2">mut </span>buffer = Vec::&lt;u8&gt;::new();
<span class="comment">// with the default engine
</span>general_purpose::STANDARD
.decode_vec(<span class="string">"aGVsbG8gd29ybGR+Cg=="</span>, <span class="kw-2">&amp;mut </span>buffer,).unwrap();
<span class="macro">println!</span>(<span class="string">"{:?}"</span>, buffer);
buffer.clear();
<span class="comment">// with a custom engine
</span>CUSTOM_ENGINE.decode_vec(
<span class="string">"aGVsbG8gaW50ZXJuZXR-Cg=="</span>,
<span class="kw-2">&amp;mut </span>buffer,
).unwrap();
<span class="macro">println!</span>(<span class="string">"{:?}"</span>, buffer);
}</code></pre></div></div></details><details class="toggle method-toggle" open><summary><section id="method.decode_slice" class="method"><a class="src rightside" href="../../src/base64/engine/mod.rs.html#353-376">Source</a><h4 class="code-header">fn <a href="#method.decode_slice" class="fn">decode_slice</a>&lt;T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>]&gt;&gt;(
&amp;self,
input: T,
output: &amp;mut [<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>],
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>, <a class="enum" href="../enum.DecodeSliceError.html" title="enum base64::DecodeSliceError">DecodeSliceError</a>&gt;</h4></section></summary><div class="docblock"><p>Decode the input into the provided output slice.</p>
<p>Returns the number of bytes written to the slice, or an error if <code>output</code> is smaller than
the estimated decoded length.</p>
<p>This will not write any bytes past exactly what is decoded (no stray garbage bytes at the end).</p>
<p>See <a href="../fn.decoded_len_estimate.html" title="fn base64::decoded_len_estimate">crate::decoded_len_estimate</a> for calculating buffer sizes.</p>
<p>See <a href="trait.Engine.html#method.decode_slice_unchecked" title="method base64::engine::Engine::decode_slice_unchecked">Engine::decode_slice_unchecked</a> for a version that panics instead of returning an error
if the output buffer is too small.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.decode_slice_unchecked" class="method"><a class="src rightside" href="../../src/base64/engine/mod.rs.html#393-418">Source</a><h4 class="code-header">fn <a href="#method.decode_slice_unchecked" class="fn">decode_slice_unchecked</a>&lt;T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a>&lt;[<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>]&gt;&gt;(
&amp;self,
input: T,
output: &amp;mut [<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>],
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>, <a class="enum" href="../enum.DecodeError.html" title="enum base64::DecodeError">DecodeError</a>&gt;</h4></section></summary><div class="docblock"><p>Decode the input into the provided output slice.</p>
<p>Returns the number of bytes written to the slice.</p>
<p>This will not write any bytes past exactly what is decoded (no stray garbage bytes at the end).</p>
<p>See <a href="../fn.decoded_len_estimate.html" title="fn base64::decoded_len_estimate">crate::decoded_len_estimate</a> for calculating buffer sizes.</p>
<p>See <a href="trait.Engine.html#method.decode_slice" title="method base64::engine::Engine::decode_slice">Engine::decode_slice</a> for a version that returns an error instead of panicking if the output
buffer is too small.</p>
<h5 id="panics"><a class="doc-anchor" href="#panics">§</a>Panics</h5>
<p>Panics if the provided output buffer is too small for the decoded data.</p>
</div></details></div><h2 id="dyn-compatibility" class="section-header">Dyn Compatibility<a href="#dyn-compatibility" class="anchor">§</a></h2><div class="dyn-compatibility-info"><p>This trait is <b>not</b> <a href="https://doc.rust-lang.org/1.93.1/reference/items/traits.html#dyn-compatibility">dyn compatible</a>.</p><p><i>In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.</i></p></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"><details class="toggle implementors-toggle"><summary><section id="impl-Engine-for-GeneralPurpose" class="impl"><a class="src rightside" href="../../src/base64/engine/general_purpose/mod.rs.html#44-190">Source</a><a href="#impl-Engine-for-GeneralPurpose" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="trait.Engine.html" title="trait base64::engine::Engine">Engine</a> for <a class="struct" href="general_purpose/struct.GeneralPurpose.html" title="struct base64::engine::general_purpose::GeneralPurpose">GeneralPurpose</a></h3></section></summary><div class="impl-items"><section id="associatedtype.Config-1" class="associatedtype trait-impl"><a class="src rightside" href="../../src/base64/engine/general_purpose/mod.rs.html#45">Source</a><a href="#associatedtype.Config-1" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.Config" class="associatedtype">Config</a> = <a class="struct" href="general_purpose/struct.GeneralPurposeConfig.html" title="struct base64::engine::general_purpose::GeneralPurposeConfig">GeneralPurposeConfig</a></h4></section><section id="associatedtype.DecodeEstimate-1" class="associatedtype trait-impl"><a class="src rightside" href="../../src/base64/engine/general_purpose/mod.rs.html#46">Source</a><a href="#associatedtype.DecodeEstimate-1" class="anchor">§</a><h4 class="code-header">type <a href="#associatedtype.DecodeEstimate" class="associatedtype">DecodeEstimate</a> = GeneralPurposeEstimate</h4></section></div></details></div><script src="../../trait.impl/base64/engine/trait.Engine.js" async></script></section></div></main></body></html>