blob: 356ad0ae5f4331c153ed73c20f82abc301158c1a [file] [log] [blame]
<!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="Things we can encode and read from a Reader."><meta name="keywords" content="rust, rustlang, rust-lang, Codec"><title>Codec in rustls::internal::msgs::codec - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" href="../../../../normalize.css"><link rel="stylesheet" href="../../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" href="../../../../ayu.css" disabled><link rel="stylesheet" href="../../../../dark.css" disabled><link rel="stylesheet" href="../../../../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../../../../storage.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../../../main.js"></script><noscript><link rel="stylesheet" href="../../../../noscript.css"></noscript><link rel="alternate icon" type="image/png" href="../../../../favicon-16x16.png"><link rel="alternate icon" type="image/png" href="../../../../favicon-32x32.png"><link rel="icon" type="image/svg+xml" href="../../../../favicon.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]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle">&#9776;</button><a class="sidebar-logo" href="../../../../rustls/index.html"><div class="logo-container"><img class="rust-logo" src="../../../../rust-logo.svg" alt="logo"></div></a><h2></h2></nav><nav class="sidebar"><a class="sidebar-logo" href="../../../../rustls/index.html"><div class="logo-container"><img class="rust-logo" src="../../../../rust-logo.svg" alt="logo"></div></a><h2 class="location"><a href="#">Codec</a></h2><div class="sidebar-elems"><section><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.encode">encode</a></li><li><a href="#tymethod.read">read</a></li></ul><h3><a href="#provided-methods">Provided Methods</a></h3><ul class="block"><li><a href="#method.get_encoding">get_encoding</a></li><li><a href="#method.read_bytes">read_bytes</a></li></ul><h3><a href="#foreign-impls">Implementations on Foreign Types</a></h3><ul class="block"><li><a href="#impl-Codec-for-u16">u16</a></li><li><a href="#impl-Codec-for-u32">u32</a></li><li><a href="#impl-Codec-for-u64">u64</a></li><li><a href="#impl-Codec-for-u8">u8</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><h2><a href="index.html">In rustls::internal::msgs::codec</a></h2></div></nav><main><div class="width-limiter"><nav class="sub"><form class="search-form"><div class="search-container"><span></span><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"><div id="help-button" title="help" tabindex="-1"><a href="../../../../help.html">?</a></div><div id="settings-menu" tabindex="-1"><a href="../../../../settings.html" title="settings"><img width="22" height="22" alt="Change settings" src="../../../../wheel.svg"></a></div></div></form></nav><section id="main-content" class="content"><div class="main-heading"><h1 class="fqn">Trait <a href="../../../index.html">rustls</a>::<wbr><a href="../../index.html">internal</a>::<wbr><a href="../index.html">msgs</a>::<wbr><a href="index.html">codec</a>::<wbr><a class="trait" href="#">Codec</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></h1><span class="out-of-band"><a class="srclink" href="../../../../src/rustls/msgs/codec.rs.html#51-72">source</a> · <a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span></div><div class="item-decl"><pre class="rust trait"><code>pub trait Codec: Debug + Sized {
fn <a href="#tymethod.encode" class="fnname">encode</a>(&amp;self, bytes: &amp;mut Vec&lt;u8&gt;);
<span class="item-spacer"></span> fn <a href="#tymethod.read" class="fnname">read</a>(_: &amp;mut <a class="struct" href="struct.Reader.html" title="struct rustls::internal::msgs::codec::Reader">Reader</a>&lt;'_&gt;) -&gt; Option&lt;Self&gt;;
fn <a href="#method.get_encoding" class="fnname">get_encoding</a>(&amp;self) -&gt; Vec&lt;u8&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.read_bytes" class="fnname">read_bytes</a>(bytes: &amp;[u8]) -&gt; Option&lt;Self&gt; { ... }
}</code></pre></div><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Things we can encode and read from a Reader.</p>
</div></details><h2 id="required-methods" class="small-section-header">Required Methods<a href="#required-methods" class="anchor"></a></h2><div class="methods"><details class="rustdoc-toggle method-toggle" open><summary><section id="tymethod.encode" class="method has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/codec.rs.html#53">source</a><h4 class="code-header">fn <a href="#tymethod.encode" class="fnname">encode</a>(&amp;self, bytes: &amp;mut Vec&lt;u8&gt;)</h4></section></summary><div class="docblock"><p>Encode yourself by appending onto <code>bytes</code>.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="tymethod.read" class="method has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/codec.rs.html#57">source</a><h4 class="code-header">fn <a href="#tymethod.read" class="fnname">read</a>(_: &amp;mut <a class="struct" href="struct.Reader.html" title="struct rustls::internal::msgs::codec::Reader">Reader</a>&lt;'_&gt;) -&gt; Option&lt;Self&gt;</h4></section></summary><div class="docblock"><p>Decode yourself by fiddling with the <code>Reader</code>.
Return Some if it worked, None if not.</p>
</div></details></div><h2 id="provided-methods" class="small-section-header">Provided Methods<a href="#provided-methods" class="anchor"></a></h2><div class="methods"><details class="rustdoc-toggle method-toggle" open><summary><section id="method.get_encoding" class="method has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/codec.rs.html#60-64">source</a><h4 class="code-header">fn <a href="#method.get_encoding" class="fnname">get_encoding</a>(&amp;self) -&gt; Vec&lt;u8&gt;</h4></section></summary><div class="docblock"><p>Convenience function to get the results of <code>encode()</code>.</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><section id="method.read_bytes" class="method has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/codec.rs.html#68-71">source</a><h4 class="code-header">fn <a href="#method.read_bytes" class="fnname">read_bytes</a>(bytes: &amp;[u8]) -&gt; Option&lt;Self&gt;</h4></section></summary><div class="docblock"><p>Read one of these from the front of <code>bytes</code> and
return it.</p>
</div></details></div><h2 id="foreign-impls" class="small-section-header">Implementations on Foreign Types<a href="#foreign-impls" class="anchor"></a></h2><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-Codec-for-u8" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/codec.rs.html#79-86">source</a><a href="#impl-Codec-for-u8" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for u8</h3></section></summary><div class="impl-items"><section id="method.encode" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/codec.rs.html#80-82">source</a><a href="#method.encode" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.encode" class="fnname">encode</a>(&amp;self, bytes: &amp;mut Vec&lt;u8&gt;)</h4></section><section id="method.read" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/codec.rs.html#83-85">source</a><a href="#method.read" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.read" class="fnname">read</a>(r: &amp;mut <a class="struct" href="struct.Reader.html" title="struct rustls::internal::msgs::codec::Reader">Reader</a>&lt;'_&gt;) -&gt; Option&lt;u8&gt;</h4></section></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-Codec-for-u16" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/codec.rs.html#97-107">source</a><a href="#impl-Codec-for-u16" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for u16</h3></section></summary><div class="impl-items"><section id="method.encode-1" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/codec.rs.html#98-102">source</a><a href="#method.encode-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.encode" class="fnname">encode</a>(&amp;self, bytes: &amp;mut Vec&lt;u8&gt;)</h4></section><section id="method.read-1" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/codec.rs.html#104-106">source</a><a href="#method.read-1" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.read" class="fnname">read</a>(r: &amp;mut <a class="struct" href="struct.Reader.html" title="struct rustls::internal::msgs::codec::Reader">Reader</a>&lt;'_&gt;) -&gt; Option&lt;u16&gt;</h4></section></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-Codec-for-u32" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/codec.rs.html#143-154">source</a><a href="#impl-Codec-for-u32" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for u32</h3></section></summary><div class="impl-items"><section id="method.encode-2" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/codec.rs.html#144-149">source</a><a href="#method.encode-2" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.encode" class="fnname">encode</a>(&amp;self, bytes: &amp;mut Vec&lt;u8&gt;)</h4></section><section id="method.read-2" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/codec.rs.html#151-153">source</a><a href="#method.read-2" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.read" class="fnname">read</a>(r: &amp;mut <a class="struct" href="struct.Reader.html" title="struct rustls::internal::msgs::codec::Reader">Reader</a>&lt;'_&gt;) -&gt; Option&lt;u32&gt;</h4></section></div></details><details class="rustdoc-toggle implementors-toggle"><summary><section id="impl-Codec-for-u64" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/codec.rs.html#180-190">source</a><a href="#impl-Codec-for-u64" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for u64</h3></section></summary><div class="impl-items"><section id="method.encode-3" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/codec.rs.html#181-185">source</a><a href="#method.encode-3" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.encode" class="fnname">encode</a>(&amp;self, bytes: &amp;mut Vec&lt;u8&gt;)</h4></section><section id="method.read-3" class="method trait-impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/codec.rs.html#187-189">source</a><a href="#method.read-3" class="anchor"></a><h4 class="code-header">fn <a href="#tymethod.read" class="fnname">read</a>(r: &amp;mut <a class="struct" href="struct.Reader.html" title="struct rustls::internal::msgs::codec::Reader">Reader</a>&lt;'_&gt;) -&gt; Option&lt;u64&gt;</h4></section></div></details><h2 id="implementors" class="small-section-header">Implementors<a href="#implementors" class="anchor"></a></h2><div id="implementors-list"><section id="impl-Codec-for-AlertDescription" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/enums.rs.html#141-183">source</a><a href="#impl-Codec-for-AlertDescription" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../enums/enum.AlertDescription.html" title="enum rustls::internal::msgs::enums::AlertDescription">AlertDescription</a></h3></section><section id="impl-Codec-for-AlertLevel" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/enums.rs.html#129-139">source</a><a href="#impl-Codec-for-AlertLevel" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../enums/enum.AlertLevel.html" title="enum rustls::internal::msgs::enums::AlertLevel">AlertLevel</a></h3></section><section id="impl-Codec-for-CertificateStatusType" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/enums.rs.html#783-792">source</a><a href="#impl-Codec-for-CertificateStatusType" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../enums/enum.CertificateStatusType.html" title="enum rustls::internal::msgs::enums::CertificateStatusType">CertificateStatusType</a></h3></section><section id="impl-Codec-for-CipherSuite" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/enums.rs.html#316-696">source</a><a href="#impl-Codec-for-CipherSuite" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../enums/enum.CipherSuite.html" title="enum rustls::internal::msgs::enums::CipherSuite">CipherSuite</a></h3></section><section id="impl-Codec-for-ClientCertificateType" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/enums.rs.html#53-71">source</a><a href="#impl-Codec-for-ClientCertificateType" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../enums/enum.ClientCertificateType.html" title="enum rustls::internal::msgs::enums::ClientCertificateType">ClientCertificateType</a></h3></section><section id="impl-Codec-for-Compression" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/enums.rs.html#73-84">source</a><a href="#impl-Codec-for-Compression" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../enums/enum.Compression.html" title="enum rustls::internal::msgs::enums::Compression">Compression</a></h3></section><section id="impl-Codec-for-ContentType" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/enums.rs.html#86-99">source</a><a href="#impl-Codec-for-ContentType" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../enums/enum.ContentType.html" title="enum rustls::internal::msgs::enums::ContentType">ContentType</a></h3></section><section id="impl-Codec-for-ECCurveType" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/enums.rs.html#723-734">source</a><a href="#impl-Codec-for-ECCurveType" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../enums/enum.ECCurveType.html" title="enum rustls::internal::msgs::enums::ECCurveType">ECCurveType</a></h3></section><section id="impl-Codec-for-ECPointFormat" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/enums.rs.html#698-709">source</a><a href="#impl-Codec-for-ECPointFormat" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../enums/enum.ECPointFormat.html" title="enum rustls::internal::msgs::enums::ECPointFormat">ECPointFormat</a></h3></section><section id="impl-Codec-for-ExtensionType" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/enums.rs.html#197-241">source</a><a href="#impl-Codec-for-ExtensionType" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../enums/enum.ExtensionType.html" title="enum rustls::internal::msgs::enums::ExtensionType">ExtensionType</a></h3></section><section id="impl-Codec-for-HandshakeType" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/enums.rs.html#101-127">source</a><a href="#impl-Codec-for-HandshakeType" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../enums/enum.HandshakeType.html" title="enum rustls::internal::msgs::enums::HandshakeType">HandshakeType</a></h3></section><section id="impl-Codec-for-HashAlgorithm" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/enums.rs.html#20-35">source</a><a href="#impl-Codec-for-HashAlgorithm" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../enums/enum.HashAlgorithm.html" title="enum rustls::internal::msgs::enums::HashAlgorithm">HashAlgorithm</a></h3></section><section id="impl-Codec-for-HeartbeatMessageType" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/enums.rs.html#185-195">source</a><a href="#impl-Codec-for-HeartbeatMessageType" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../enums/enum.HeartbeatMessageType.html" title="enum rustls::internal::msgs::enums::HeartbeatMessageType">HeartbeatMessageType</a></h3></section><section id="impl-Codec-for-HeartbeatMode" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/enums.rs.html#711-721">source</a><a href="#impl-Codec-for-HeartbeatMode" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../enums/enum.HeartbeatMode.html" title="enum rustls::internal::msgs::enums::HeartbeatMode">HeartbeatMode</a></h3></section><section id="impl-Codec-for-KeyUpdateRequest" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/enums.rs.html#771-781">source</a><a href="#impl-Codec-for-KeyUpdateRequest" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../enums/enum.KeyUpdateRequest.html" title="enum rustls::internal::msgs::enums::KeyUpdateRequest">KeyUpdateRequest</a></h3></section><section id="impl-Codec-for-NamedCurve" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/enums.rs.html#254-294">source</a><a href="#impl-Codec-for-NamedCurve" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../enums/enum.NamedCurve.html" title="enum rustls::internal::msgs::enums::NamedCurve">NamedCurve</a></h3></section><section id="impl-Codec-for-NamedGroup" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/enums.rs.html#296-314">source</a><a href="#impl-Codec-for-NamedGroup" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../enums/enum.NamedGroup.html" title="enum rustls::internal::msgs::enums::NamedGroup">NamedGroup</a></h3></section><section id="impl-Codec-for-PSKKeyExchangeMode" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/enums.rs.html#759-769">source</a><a href="#impl-Codec-for-PSKKeyExchangeMode" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../enums/enum.PSKKeyExchangeMode.html" title="enum rustls::internal::msgs::enums::PSKKeyExchangeMode">PSKKeyExchangeMode</a></h3></section><section id="impl-Codec-for-ProtocolVersion" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/enums.rs.html#4-18">source</a><a href="#impl-Codec-for-ProtocolVersion" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../enums/enum.ProtocolVersion.html" title="enum rustls::internal::msgs::enums::ProtocolVersion">ProtocolVersion</a></h3></section><section id="impl-Codec-for-ServerNameType" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/enums.rs.html#243-252">source</a><a href="#impl-Codec-for-ServerNameType" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../enums/enum.ServerNameType.html" title="enum rustls::internal::msgs::enums::ServerNameType">ServerNameType</a></h3></section><section id="impl-Codec-for-SignatureAlgorithm" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/enums.rs.html#37-51">source</a><a href="#impl-Codec-for-SignatureAlgorithm" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../enums/enum.SignatureAlgorithm.html" title="enum rustls::internal::msgs::enums::SignatureAlgorithm">SignatureAlgorithm</a></h3></section><section id="impl-Codec-for-SignatureScheme" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/enums.rs.html#736-757">source</a><a href="#impl-Codec-for-SignatureScheme" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../enums/enum.SignatureScheme.html" title="enum rustls::internal::msgs::enums::SignatureScheme">SignatureScheme</a></h3></section><section id="impl-Codec-for-CertReqExtension" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#1820-1855">source</a><a href="#impl-Codec-for-CertReqExtension" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../handshake/enum.CertReqExtension.html" title="enum rustls::internal::msgs::handshake::CertReqExtension">CertReqExtension</a></h3></section><section id="impl-Codec-for-CertificateExtension" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#1329-1361">source</a><a href="#impl-Codec-for-CertificateExtension" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../handshake/enum.CertificateExtension.html" title="enum rustls::internal::msgs::handshake::CertificateExtension">CertificateExtension</a></h3></section><section id="impl-Codec-for-CertificateStatusRequest" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#499-524">source</a><a href="#impl-Codec-for-CertificateStatusRequest" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../handshake/enum.CertificateStatusRequest.html" title="enum rustls::internal::msgs::handshake::CertificateStatusRequest">CertificateStatusRequest</a></h3></section><section id="impl-Codec-for-ClientExtension" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#595-683">source</a><a href="#impl-Codec-for-ClientExtension" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../handshake/enum.ClientExtension.html" title="enum rustls::internal::msgs::handshake::ClientExtension">ClientExtension</a></h3></section><section id="impl-Codec-for-HelloRetryExtension" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#1051-1081">source</a><a href="#impl-Codec-for-HelloRetryExtension" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../handshake/enum.HelloRetryExtension.html" title="enum rustls::internal::msgs::handshake::HelloRetryExtension">HelloRetryExtension</a></h3></section><section id="impl-Codec-for-NewSessionTicketExtension" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#1955-1979">source</a><a href="#impl-Codec-for-NewSessionTicketExtension" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../handshake/enum.NewSessionTicketExtension.html" title="enum rustls::internal::msgs::handshake::NewSessionTicketExtension">NewSessionTicketExtension</a></h3></section><section id="impl-Codec-for-ServerExtension" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#751-812">source</a><a href="#impl-Codec-for-ServerExtension" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../handshake/enum.ServerExtension.html" title="enum rustls::internal::msgs::handshake::ServerExtension">ServerExtension</a></h3></section><section id="impl-Codec-for-ServerKeyExchangePayload" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#1658-1671">source</a><a href="#impl-Codec-for-ServerKeyExchangePayload" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="enum" href="../handshake/enum.ServerKeyExchangePayload.html" title="enum rustls::internal::msgs::handshake::ServerKeyExchangePayload">ServerKeyExchangePayload</a></h3></section><section id="impl-Codec-for-Certificate" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/base.rs.html#28-40">source</a><a href="#impl-Codec-for-Certificate" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../../../struct.Certificate.html" title="struct rustls::Certificate">Certificate</a></h3></section><section id="impl-Codec-for-AlertMessagePayload" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/alert.rs.html#10-22">source</a><a href="#impl-Codec-for-AlertMessagePayload" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../alert/struct.AlertMessagePayload.html" title="struct rustls::internal::msgs::alert::AlertMessagePayload">AlertMessagePayload</a></h3></section><section id="impl-Codec-for-Payload" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/base.rs.html#8-16">source</a><a href="#impl-Codec-for-Payload" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../base/struct.Payload.html" title="struct rustls::internal::msgs::base::Payload">Payload</a></h3></section><section id="impl-Codec-for-PayloadU8" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/base.rs.html#116-128">source</a><a href="#impl-Codec-for-PayloadU8" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../base/struct.PayloadU8.html" title="struct rustls::internal::msgs::base::PayloadU8">PayloadU8</a></h3></section><section id="impl-Codec-for-PayloadU16" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/base.rs.html#85-96">source</a><a href="#impl-Codec-for-PayloadU16" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../base/struct.PayloadU16.html" title="struct rustls::internal::msgs::base::PayloadU16">PayloadU16</a></h3></section><section id="impl-Codec-for-PayloadU24" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/base.rs.html#52-64">source</a><a href="#impl-Codec-for-PayloadU24" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../base/struct.PayloadU24.html" title="struct rustls::internal::msgs::base::PayloadU24">PayloadU24</a></h3></section><section id="impl-Codec-for-ChangeCipherSpecPayload" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/ccs.rs.html#6-20">source</a><a href="#impl-Codec-for-ChangeCipherSpecPayload" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../ccs/struct.ChangeCipherSpecPayload.html" title="struct rustls::internal::msgs::ccs::ChangeCipherSpecPayload">ChangeCipherSpecPayload</a></h3></section><section id="impl-Codec-for-CertificateEntry" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#1371-1383">source</a><a href="#impl-Codec-for-CertificateEntry" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../handshake/struct.CertificateEntry.html" title="struct rustls::internal::msgs::handshake::CertificateEntry">CertificateEntry</a></h3></section><section id="impl-Codec-for-CertificatePayloadTLS13" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#1435-1447">source</a><a href="#impl-Codec-for-CertificatePayloadTLS13" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../handshake/struct.CertificatePayloadTLS13.html" title="struct rustls::internal::msgs::handshake::CertificatePayloadTLS13">CertificatePayloadTLS13</a></h3></section><section id="impl-Codec-for-CertificateRequestPayload" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#1778-1801">source</a><a href="#impl-Codec-for-CertificateRequestPayload" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../handshake/struct.CertificateRequestPayload.html" title="struct rustls::internal::msgs::handshake::CertificateRequestPayload">CertificateRequestPayload</a></h3></section><section id="impl-Codec-for-CertificateRequestPayloadTLS13" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#1865-1880">source</a><a href="#impl-Codec-for-CertificateRequestPayloadTLS13" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../handshake/struct.CertificateRequestPayloadTLS13.html" title="struct rustls::internal::msgs::handshake::CertificateRequestPayloadTLS13">CertificateRequestPayloadTLS13</a></h3></section><section id="impl-Codec-for-CertificateStatus" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#2057-2073">source</a><a href="#impl-Codec-for-CertificateStatus" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../handshake/struct.CertificateStatus.html" title="struct rustls::internal::msgs::handshake::CertificateStatus">CertificateStatus</a></h3></section><section id="impl-Codec-for-ClientECDHParams" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#1586-1595">source</a><a href="#impl-Codec-for-ClientECDHParams" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../handshake/struct.ClientECDHParams.html" title="struct rustls::internal::msgs::handshake::ClientECDHParams">ClientECDHParams</a></h3></section><section id="impl-Codec-for-ClientHelloPayload" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#840-869">source</a><a href="#impl-Codec-for-ClientHelloPayload" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../handshake/struct.ClientHelloPayload.html" title="struct rustls::internal::msgs::handshake::ClientHelloPayload">ClientHelloPayload</a></h3></section><section id="impl-Codec-for-DigitallySignedStruct" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#1567-1579">source</a><a href="#impl-Codec-for-DigitallySignedStruct" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../handshake/struct.DigitallySignedStruct.html" title="struct rustls::internal::msgs::handshake::DigitallySignedStruct">DigitallySignedStruct</a></h3></section><section id="impl-Codec-for-ECDHEServerKeyExchange" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#1638-1650">source</a><a href="#impl-Codec-for-ECDHEServerKeyExchange" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../handshake/struct.ECDHEServerKeyExchange.html" title="struct rustls::internal::msgs::handshake::ECDHEServerKeyExchange">ECDHEServerKeyExchange</a></h3></section><section id="impl-Codec-for-ECParameters" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#1530-1550">source</a><a href="#impl-Codec-for-ECParameters" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../handshake/struct.ECParameters.html" title="struct rustls::internal::msgs::handshake::ECParameters">ECParameters</a></h3></section><section id="impl-Codec-for-HandshakeMessagePayload" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#2149-2168">source</a><a href="#impl-Codec-for-HandshakeMessagePayload" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../handshake/struct.HandshakeMessagePayload.html" title="struct rustls::internal::msgs::handshake::HandshakeMessagePayload">HandshakeMessagePayload</a></h3></section><section id="impl-Codec-for-HelloRetryRequest" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#1091-1117">source</a><a href="#impl-Codec-for-HelloRetryRequest" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../handshake/struct.HelloRetryRequest.html" title="struct rustls::internal::msgs::handshake::HelloRetryRequest">HelloRetryRequest</a></h3></section><section id="impl-Codec-for-KeyShareEntry" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#391-403">source</a><a href="#impl-Codec-for-KeyShareEntry" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../handshake/struct.KeyShareEntry.html" title="struct rustls::internal::msgs::handshake::KeyShareEntry">KeyShareEntry</a></h3></section><section id="impl-Codec-for-NewSessionTicketPayload" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#1922-1937">source</a><a href="#impl-Codec-for-NewSessionTicketPayload" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../handshake/struct.NewSessionTicketPayload.html" title="struct rustls::internal::msgs::handshake::NewSessionTicketPayload">NewSessionTicketPayload</a></h3></section><section id="impl-Codec-for-NewSessionTicketPayloadTLS13" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#2023-2047">source</a><a href="#impl-Codec-for-NewSessionTicketPayloadTLS13" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../handshake/struct.NewSessionTicketPayloadTLS13.html" title="struct rustls::internal::msgs::handshake::NewSessionTicketPayloadTLS13">NewSessionTicketPayloadTLS13</a></h3></section><section id="impl-Codec-for-OCSPCertificateStatusRequest" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#478-491">source</a><a href="#impl-Codec-for-OCSPCertificateStatusRequest" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../handshake/struct.OCSPCertificateStatusRequest.html" title="struct rustls::internal::msgs::handshake::OCSPCertificateStatusRequest">OCSPCertificateStatusRequest</a></h3></section><section id="impl-Codec-for-PresharedKeyIdentity" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#421-433">source</a><a href="#impl-Codec-for-PresharedKeyIdentity" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../handshake/struct.PresharedKeyIdentity.html" title="struct rustls::internal::msgs::handshake::PresharedKeyIdentity">PresharedKeyIdentity</a></h3></section><section id="impl-Codec-for-PresharedKeyOffer" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#455-467">source</a><a href="#impl-Codec-for-PresharedKeyOffer" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../handshake/struct.PresharedKeyOffer.html" title="struct rustls::internal::msgs::handshake::PresharedKeyOffer">PresharedKeyOffer</a></h3></section><section id="impl-Codec-for-Random" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#67-79">source</a><a href="#impl-Codec-for-Random" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../handshake/struct.Random.html" title="struct rustls::internal::msgs::handshake::Random">Random</a></h3></section><section id="impl-Codec-for-ServerECDHParams" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#1615-1630">source</a><a href="#impl-Codec-for-ServerECDHParams" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../handshake/struct.ServerECDHParams.html" title="struct rustls::internal::msgs::handshake::ServerECDHParams">ServerECDHParams</a></h3></section><section id="impl-Codec-for-ServerHelloPayload" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#1186-1221">source</a><a href="#impl-Codec-for-ServerHelloPayload" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../handshake/struct.ServerHelloPayload.html" title="struct rustls::internal::msgs::handshake::ServerHelloPayload">ServerHelloPayload</a></h3></section><section id="impl-Codec-for-ServerName" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#287-303">source</a><a href="#impl-Codec-for-ServerName" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../handshake/struct.ServerName.html" title="struct rustls::internal::msgs::handshake::ServerName">ServerName</a></h3></section><section id="impl-Codec-for-SessionID" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#124-143">source</a><a href="#impl-Codec-for-SessionID" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../handshake/struct.SessionID.html" title="struct rustls::internal::msgs::handshake::SessionID">SessionID</a></h3></section><section id="impl-Codec-for-Message" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/message.rs.html#94-105">source</a><a href="#impl-Codec-for-Message" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../message/struct.Message.html" title="struct rustls::internal::msgs::message::Message">Message</a></h3></section><section id="impl-Codec-for-ClientSessionKey" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/persist.rs.html#23-33">source</a><a href="#impl-Codec-for-ClientSessionKey" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../persist/struct.ClientSessionKey.html" title="struct rustls::internal::msgs::persist::ClientSessionKey">ClientSessionKey</a></h3></section><section id="impl-Codec-for-ClientSessionValue" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/persist.rs.html#68-110">source</a><a href="#impl-Codec-for-ClientSessionValue" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../persist/struct.ClientSessionValue.html" title="struct rustls::internal::msgs::persist::ClientSessionValue">ClientSessionValue</a></h3></section><section id="impl-Codec-for-ServerSessionValue" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/persist.rs.html#184-250">source</a><a href="#impl-Codec-for-ServerSessionValue" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="../persist/struct.ServerSessionValue.html" title="struct rustls::internal::msgs::persist::ServerSessionValue">ServerSessionValue</a></h3></section><section id="impl-Codec-for-u24" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/codec.rs.html#122-132">source</a><a href="#impl-Codec-for-u24" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="struct" href="struct.u24.html" title="struct rustls::internal::msgs::codec::u24">u24</a></h3></section><section id="impl-Codec-for-CertReqExtensions" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#1857">source</a><a href="#impl-Codec-for-CertReqExtensions" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="type" href="../handshake/type.CertReqExtensions.html" title="type rustls::internal::msgs::handshake::CertReqExtensions">CertReqExtensions</a></h3></section><section id="impl-Codec-for-CertificateExtensions" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#1363">source</a><a href="#impl-Codec-for-CertificateExtensions" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="type" href="../handshake/type.CertificateExtensions.html" title="type rustls::internal::msgs::handshake::CertificateExtensions">CertificateExtensions</a></h3></section><section id="impl-Codec-for-CertificatePayload" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#1278-1287">source</a><a href="#impl-Codec-for-CertificatePayload" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="type" href="../handshake/type.CertificatePayload.html" title="type rustls::internal::msgs::handshake::CertificatePayload">CertificatePayload</a></h3></section><section id="impl-Codec-for-ClientCertificateTypes" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#1767">source</a><a href="#impl-Codec-for-ClientCertificateTypes" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="type" href="../handshake/type.ClientCertificateTypes.html" title="type rustls::internal::msgs::handshake::ClientCertificateTypes">ClientCertificateTypes</a></h3></section><section id="impl-Codec-for-ECPointFormatList" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#190">source</a><a href="#impl-Codec-for-ECPointFormatList" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="type" href="../handshake/type.ECPointFormatList.html" title="type rustls::internal::msgs::handshake::ECPointFormatList">ECPointFormatList</a></h3></section><section id="impl-Codec-for-EncryptedExtensions" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#1710">source</a><a href="#impl-Codec-for-EncryptedExtensions" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="type" href="../handshake/type.EncryptedExtensions.html" title="type rustls::internal::msgs::handshake::EncryptedExtensions">EncryptedExtensions</a></h3></section><section id="impl-Codec-for-KeyShareEntries" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#544">source</a><a href="#impl-Codec-for-KeyShareEntries" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="type" href="../handshake/type.KeyShareEntries.html" title="type rustls::internal::msgs::handshake::KeyShareEntries">KeyShareEntries</a></h3></section><section id="impl-Codec-for-NamedGroups" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#202">source</a><a href="#impl-Codec-for-NamedGroups" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="type" href="../handshake/type.NamedGroups.html" title="type rustls::internal::msgs::handshake::NamedGroups">NamedGroups</a></h3></section><section id="impl-Codec-for-NewSessionTicketExtensions" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#1981">source</a><a href="#impl-Codec-for-NewSessionTicketExtensions" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="type" href="../handshake/type.NewSessionTicketExtensions.html" title="type rustls::internal::msgs::handshake::NewSessionTicketExtensions">NewSessionTicketExtensions</a></h3></section><section id="impl-Codec-for-PSKKeyExchangeModes" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#543">source</a><a href="#impl-Codec-for-PSKKeyExchangeModes" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="type" href="../handshake/type.PSKKeyExchangeModes.html" title="type rustls::internal::msgs::handshake::PSKKeyExchangeModes">PSKKeyExchangeModes</a></h3></section><section id="impl-Codec-for-PresharedKeyIdentities" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#435">source</a><a href="#impl-Codec-for-PresharedKeyIdentities" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="type" href="../handshake/type.PresharedKeyIdentities.html" title="type rustls::internal::msgs::handshake::PresharedKeyIdentities">PresharedKeyIdentities</a></h3></section><section id="impl-Codec-for-ProtocolVersions" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#545">source</a><a href="#impl-Codec-for-ProtocolVersions" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="type" href="../handshake/type.ProtocolVersions.html" title="type rustls::internal::msgs::handshake::ProtocolVersions">ProtocolVersions</a></h3></section><section id="impl-Codec-for-ServerNameRequest" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#305">source</a><a href="#impl-Codec-for-ServerNameRequest" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="type" href="../handshake/type.ServerNameRequest.html" title="type rustls::internal::msgs::handshake::ServerNameRequest">ServerNameRequest</a></h3></section><section id="impl-Codec-for-SupportedSignatureSchemes" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#204">source</a><a href="#impl-Codec-for-SupportedSignatureSchemes" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="type" href="../handshake/type.SupportedSignatureSchemes.html" title="type rustls::internal::msgs::handshake::SupportedSignatureSchemes">SupportedSignatureSchemes</a></h3></section><section id="impl-Codec-for-VecU16OfPayloadU8" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#54">source</a><a href="#impl-Codec-for-VecU16OfPayloadU8" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="type" href="../handshake/type.VecU16OfPayloadU8.html" title="type rustls::internal::msgs::handshake::VecU16OfPayloadU8">VecU16OfPayloadU8</a></h3></section><section id="impl-Codec-for-VecU16OfPayloadU16" class="impl has-srclink"><a class="srclink rightside" href="../../../../src/rustls/msgs/handshake.rs.html#55">source</a><a href="#impl-Codec-for-VecU16OfPayloadU16" class="anchor"></a><h3 class="code-header">impl <a class="trait" href="trait.Codec.html" title="trait rustls::internal::msgs::codec::Codec">Codec</a> for <a class="type" href="../handshake/type.VecU16OfPayloadU16.html" title="type rustls::internal::msgs::handshake::VecU16OfPayloadU16">VecU16OfPayloadU16</a></h3></section></div><script src="../../../../implementors/rustls/msgs/codec/trait.Codec.js" data-ignore-extern-crates="core" async></script></section></div></main><div id="rustdoc-vars" data-root-path="../../../../" data-current-crate="rustls" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.66.0-nightly (5c8bff74b 2022-10-21)" ></div></body></html>