<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Proton DotNet: Apache.Qpid.Proton.Codec.Encoders.Transport.AttachTypeEncoder Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Proton DotNet
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespaceApache.html">Apache</a></li><li class="navelem"><a class="el" href="namespaceApache_1_1Qpid.html">Qpid</a></li><li class="navelem"><a class="el" href="namespaceApache_1_1Qpid_1_1Proton.html">Proton</a></li><li class="navelem"><a class="el" href="namespaceApache_1_1Qpid_1_1Proton_1_1Codec.html">Codec</a></li><li class="navelem"><a class="el" href="namespaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders.html">Encoders</a></li><li class="navelem"><a class="el" href="namespaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1Transport.html">Transport</a></li><li class="navelem"><a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1Transport_1_1AttachTypeEncoder.html">AttachTypeEncoder</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#properties">Properties</a> &#124;
<a href="classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1Transport_1_1AttachTypeEncoder-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">Apache.Qpid.Proton.Codec.Encoders.Transport.AttachTypeEncoder Class Reference</div>  </div>
</div><!--header-->
<div class="contents">
<div class="dynheader">
Inheritance diagram for Apache.Qpid.Proton.Codec.Encoders.Transport.AttachTypeEncoder:</div>
<div class="dyncontent">
 <div class="center">
  <img src="classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1Transport_1_1AttachTypeEncoder.png" usemap="#Apache.Qpid.Proton.Codec.Encoders.Transport.AttachTypeEncoder_map" alt=""/>
  <map id="Apache.Qpid.Proton.Codec.Encoders.Transport.AttachTypeEncoder_map" name="Apache.Qpid.Proton.Codec.Encoders.Transport.AttachTypeEncoder_map">
<area href="classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder.html" alt="Apache.Qpid.Proton.Codec.Encoders.AbstractDescribedListTypeEncoder&lt; Attach &gt;" shape="rect" coords="0,0,491,24"/>
  </map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:aa59067aeec3936d1d2b90c05533ee6e5"><td class="memItemLeft" align="right" valign="top"><a id="aa59067aeec3936d1d2b90c05533ee6e5"></a>
override <a class="el" href="namespaceApache_1_1Qpid_1_1Proton_1_1Codec.html#a3c20d2d05f5f52d8828e0d0ef1bea07a">EncodingCodes</a>&#160;</td><td class="memItemRight" valign="bottom"><b>GetListEncoding</b> (<a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Types_1_1Transport_1_1Attach.html">Attach</a> value)</td></tr>
<tr class="separator:aa59067aeec3936d1d2b90c05533ee6e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abcc9d282704392d5b6a031a6500cc025"><td class="memItemLeft" align="right" valign="top"><a id="abcc9d282704392d5b6a031a6500cc025"></a>
override int&#160;</td><td class="memItemRight" valign="bottom"><b>GetElementCount</b> (<a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Types_1_1Transport_1_1Attach.html">Attach</a> attach)</td></tr>
<tr class="separator:abcc9d282704392d5b6a031a6500cc025"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afc4cc51bc88a4f9c8f8b64a22dea8be1"><td class="memItemLeft" align="right" valign="top">override int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1Transport_1_1AttachTypeEncoder.html#afc4cc51bc88a4f9c8f8b64a22dea8be1">GetMinElementCount</a> ()</td></tr>
<tr class="memdesc:afc4cc51bc88a4f9c8f8b64a22dea8be1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the minimum number of elements that this AMQP type must provide in order to be considered a valid type.  <a href="classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1Transport_1_1AttachTypeEncoder.html#afc4cc51bc88a4f9c8f8b64a22dea8be1">More...</a><br /></td></tr>
<tr class="separator:afc4cc51bc88a4f9c8f8b64a22dea8be1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab76a57a2dc42d637fe0529849d8cba3e"><td class="memItemLeft" align="right" valign="top"><a id="ab76a57a2dc42d637fe0529849d8cba3e"></a>
override void&#160;</td><td class="memItemRight" valign="bottom"><b>WriteElement</b> (<a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Types_1_1Transport_1_1Attach.html">Attach</a> attach, int index, <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Buffer_1_1IProtonBuffer.html">IProtonBuffer</a> buffer, <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1IEncoderState.html">IEncoderState</a> state)</td></tr>
<tr class="separator:ab76a57a2dc42d637fe0529849d8cba3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder.html">Apache.Qpid.Proton.Codec.Encoders.AbstractDescribedListTypeEncoder&lt; Attach &gt;</a></td></tr>
<tr class="memitem:a98fcccac985f4975d094758ea24e00c0 inherit pro_methods_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespaceApache_1_1Qpid_1_1Proton_1_1Codec.html#a3c20d2d05f5f52d8828e0d0ef1bea07a">EncodingCodes</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder.html#a98fcccac985f4975d094758ea24e00c0">GetListEncoding</a> (T value)</td></tr>
<tr class="memdesc:a98fcccac985f4975d094758ea24e00c0 inherit pro_methods_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder"><td class="mdescLeft">&#160;</td><td class="mdescRight">Determine the list type the given value can be encoded to based on the number of bytes that would be needed to hold the encoded form of the resulting list entries.  <a href="classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder.html#a98fcccac985f4975d094758ea24e00c0">More...</a><br /></td></tr>
<tr class="separator:a98fcccac985f4975d094758ea24e00c0 inherit pro_methods_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a302b57ef49e67ac42e292f222175f058 inherit pro_methods_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder"><td class="memItemLeft" align="right" valign="top">abstract void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder.html#a302b57ef49e67ac42e292f222175f058">WriteElement</a> (T source, int index, <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Buffer_1_1IProtonBuffer.html">IProtonBuffer</a> buffer, <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1IEncoderState.html">IEncoderState</a> state)</td></tr>
<tr class="memdesc:a302b57ef49e67ac42e292f222175f058 inherit pro_methods_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder"><td class="mdescLeft">&#160;</td><td class="mdescRight">Instructs the encoder to write the element identified with the given index  <a href="classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder.html#a302b57ef49e67ac42e292f222175f058">More...</a><br /></td></tr>
<tr class="separator:a302b57ef49e67ac42e292f222175f058 inherit pro_methods_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae687e7aaf36b22147c8c89487d36cc23 inherit pro_methods_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder"><td class="memItemLeft" align="right" valign="top">abstract int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder.html#ae687e7aaf36b22147c8c89487d36cc23">GetElementCount</a> (T value)</td></tr>
<tr class="memdesc:ae687e7aaf36b22147c8c89487d36cc23 inherit pro_methods_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder"><td class="mdescLeft">&#160;</td><td class="mdescRight">Gets the number of elements that will result when this type is encoded into an AMQP List type.  <a href="classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder.html#ae687e7aaf36b22147c8c89487d36cc23">More...</a><br /></td></tr>
<tr class="separator:ae687e7aaf36b22147c8c89487d36cc23 inherit pro_methods_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="properties"></a>
Properties</h2></td></tr>
<tr class="memitem:adacbf8ba4d1e7d903d27e40b35b9e6ed"><td class="memItemLeft" align="right" valign="top"><a id="adacbf8ba4d1e7d903d27e40b35b9e6ed"></a>
override <a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Types_1_1Symbol.html">Symbol</a>&#160;</td><td class="memItemRight" valign="bottom"><b>DescriptorSymbol</b><code> [get]</code></td></tr>
<tr class="separator:adacbf8ba4d1e7d903d27e40b35b9e6ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b58938cce0b6d5ee391cdc16fb8d64e"><td class="memItemLeft" align="right" valign="top"><a id="a1b58938cce0b6d5ee391cdc16fb8d64e"></a>
override ulong&#160;</td><td class="memItemRight" valign="bottom"><b>DescriptorCode</b><code> [get]</code></td></tr>
<tr class="separator:a1b58938cce0b6d5ee391cdc16fb8d64e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header properties_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder"><td colspan="2" onclick="javascript:toggleInherit('properties_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder')"><img src="closed.png" alt="-"/>&#160;Properties inherited from <a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder.html">Apache.Qpid.Proton.Codec.Encoders.AbstractDescribedListTypeEncoder&lt; Attach &gt;</a></td></tr>
<tr class="memitem:a8306f757287e532925c6851eb1d5ecae inherit properties_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder"><td class="memItemLeft" align="right" valign="top"><a id="a8306f757287e532925c6851eb1d5ecae"></a>
override Type&#160;</td><td class="memItemRight" valign="bottom"><b>EncodesType</b><code> [get]</code></td></tr>
<tr class="separator:a8306f757287e532925c6851eb1d5ecae inherit properties_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_methods_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder.html">Apache.Qpid.Proton.Codec.Encoders.AbstractDescribedListTypeEncoder&lt; Attach &gt;</a></td></tr>
<tr class="memitem:ac3d6c3e72c959c05826583d0b915d2d2 inherit pub_methods_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder"><td class="memItemLeft" align="right" valign="top">override void&#160;</td><td class="memItemRight" valign="bottom"><b>WriteType</b> (<a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Buffer_1_1IProtonBuffer.html">IProtonBuffer</a> buffer, <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1IEncoderState.html">IEncoderState</a> state, object value)</td></tr>
<tr class="memdesc:ac3d6c3e72c959c05826583d0b915d2d2 inherit pub_methods_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encodes the given value into the provided buffer.  <a href="classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder.html#ac3d6c3e72c959c05826583d0b915d2d2">More...</a><br /></td></tr>
<tr class="separator:ac3d6c3e72c959c05826583d0b915d2d2 inherit pub_methods_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a50464385670313ff0e5d1b7408eb8660 inherit pub_methods_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder"><td class="memItemLeft" align="right" valign="top"><a id="a50464385670313ff0e5d1b7408eb8660"></a>
virtual void&#160;</td><td class="memItemRight" valign="bottom"><b>WriteType</b> (<a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Buffer_1_1IProtonBuffer.html">IProtonBuffer</a> buffer, <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1IEncoderState.html">IEncoderState</a> state, T value)</td></tr>
<tr class="separator:a50464385670313ff0e5d1b7408eb8660 inherit pub_methods_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae078e630703edacc08b3bfc9e08f3b2b inherit pub_methods_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder"><td class="memItemLeft" align="right" valign="top">override void&#160;</td><td class="memItemRight" valign="bottom"><b>WriteArray</b> (<a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Buffer_1_1IProtonBuffer.html">IProtonBuffer</a> buffer, <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1IEncoderState.html">IEncoderState</a> state, Array values)</td></tr>
<tr class="memdesc:ae078e630703edacc08b3bfc9e08f3b2b inherit pub_methods_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encodes a full array encoding of the given array elements into the provided buffer.  <a href="classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder.html#ae078e630703edacc08b3bfc9e08f3b2b">More...</a><br /></td></tr>
<tr class="separator:ae078e630703edacc08b3bfc9e08f3b2b inherit pub_methods_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adf87cc9c10e591c3b0b51999e640cfc9 inherit pub_methods_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder"><td class="memItemLeft" align="right" valign="top">override void&#160;</td><td class="memItemRight" valign="bottom"><b>WriteRawArray</b> (<a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Buffer_1_1IProtonBuffer.html">IProtonBuffer</a> buffer, <a class="el" href="interfaceApache_1_1Qpid_1_1Proton_1_1Codec_1_1IEncoderState.html">IEncoderState</a> state, Array values)</td></tr>
<tr class="memdesc:adf87cc9c10e591c3b0b51999e640cfc9 inherit pub_methods_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder"><td class="mdescLeft">&#160;</td><td class="mdescRight">Encodes only the individual elements of the given array into the provided buffer  <a href="classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder.html#adf87cc9c10e591c3b0b51999e640cfc9">More...</a><br /></td></tr>
<tr class="separator:adf87cc9c10e591c3b0b51999e640cfc9 inherit pub_methods_classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="afc4cc51bc88a4f9c8f8b64a22dea8be1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afc4cc51bc88a4f9c8f8b64a22dea8be1">&#9670;&nbsp;</a></span>GetMinElementCount()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">override int Apache.Qpid.Proton.Codec.Encoders.Transport.AttachTypeEncoder.GetMinElementCount </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Return the minimum number of elements that this AMQP type must provide in order to be considered a valid type. </p>
<dl class="section return"><dt>Returns</dt><dd>A lower limit on the element count that can be encoded</dd></dl>

<p>Reimplemented from <a class="el" href="classApache_1_1Qpid_1_1Proton_1_1Codec_1_1Encoders_1_1AbstractDescribedListTypeEncoder.html#ad4a6b83b7d8b26142a352b2399fa16ec">Apache.Qpid.Proton.Codec.Encoders.AbstractDescribedListTypeEncoder&lt; Attach &gt;</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li>src/Proton/Codec/Encoders/Transport/AttachTypeEncoder.cs</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</body>
</html>
