Files
rippled/List_8h_source.html
2020-12-05 06:17:37 +00:00

551 lines
101 KiB
HTML

<!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.8.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>rippled: List.h Source File</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">rippled
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<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');
/* @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="dir_df9c78dcf3f59a33b12284f95992a64b.html">ripple</a></li><li class="navelem"><a class="el" href="dir_875063d0bf0fe9cb23dcbe977d2f1b80.html">beast</a></li><li class="navelem"><a class="el" href="dir_e5649611bbe5c9ce048f27b7e2080ec6.html">core</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">List.h</div> </div>
</div><!--header-->
<div class="contents">
<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">//------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> This file is part of Beast: https://github.com/vinniefalco/Beast</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> Copyright 2013, Vinnie Falco &lt;vinnie.falco@gmail.com&gt;</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> Permission to use, copy, modify, and/or distribute this software for any</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> purpose with or without fee is hereby granted, provided that the above</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> copyright notice and this permission notice appear in all copies.</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"></span> </div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> THE SOFTWARE IS PROVIDED &quot;AS IS&quot; AND THE AUTHOR DISCLAIMS ALL WARRANTIES</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> ANY SPECIAL , DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment">*/</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment">//==============================================================================</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160; </div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#ifndef BEAST_INTRUSIVE_LIST_H_INCLUDED</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#define BEAST_INTRUSIVE_LIST_H_INCLUDED</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; </div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="preprocessor">#include &lt;<a class="codeRef" href="http://en.cppreference.com/w/cpp/header/iterator.html">iterator</a>&gt;</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="preprocessor">#include &lt;<a class="codeRef" href="http://en.cppreference.com/w/cpp/header/type_traits.html">type_traits</a>&gt;</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; </div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespacebeast.html">beast</a> {</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; </div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span>, <span class="keyword">typename</span>&gt;</div>
<div class="line"><a name="l00029"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html"> 29</a></span>&#160;<span class="keyword">class </span><a class="code" href="classbeast_1_1List.html">List</a>;</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; </div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="keyword">namespace </span>detail {</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; </div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, <span class="keyword">typename</span> U&gt;</div>
<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="structbeast_1_1detail_1_1CopyConst.html"> 36</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structbeast_1_1detail_1_1CopyConst.html">CopyConst</a></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;{</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <span class="keyword">explicit</span> <a class="code" href="structbeast_1_1detail_1_1CopyConst.html#af95b74f0ab31acf6c286cc619ae54fcf">CopyConst</a>() = <span class="keywordflow">default</span>;</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; </div>
<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="structbeast_1_1detail_1_1CopyConst.html#a5b227ffac65f273363ca0787265f6a9e"> 40</a></span>&#160; <span class="keyword">using</span> <a class="code" href="structbeast_1_1detail_1_1CopyConst.html#a5b227ffac65f273363ca0787265f6a9e">type</a> = <span class="keyword">typename</span> <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/remove_cv.html">std::remove_const&lt;U&gt;::type</a>;</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;};</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; </div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, <span class="keyword">typename</span> U&gt;</div>
<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="structbeast_1_1detail_1_1CopyConst_3_01T_01const_00_01U_01_4.html"> 44</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structbeast_1_1detail_1_1CopyConst.html">CopyConst</a>&lt;T const, U&gt;</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;{</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keyword">explicit</span> <a class="code" href="structbeast_1_1detail_1_1CopyConst.html#af95b74f0ab31acf6c286cc619ae54fcf">CopyConst</a>() = <span class="keywordflow">default</span>;</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; </div>
<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="structbeast_1_1detail_1_1CopyConst_3_01T_01const_00_01U_01_4.html#af6bad09fff8798aecdf67663f14eab21"> 48</a></span>&#160; <span class="keyword">using</span> <a class="code" href="structbeast_1_1detail_1_1CopyConst_3_01T_01const_00_01U_01_4.html#af6bad09fff8798aecdf67663f14eab21">type</a> = <span class="keyword">typename</span> <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/remove_cv.html">std::remove_const&lt;U&gt;::type</a> <span class="keyword">const</span>;</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;};</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment">// This is the intrusive portion of the doubly linked list.</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment">// One derivation per list that the object may appear on</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment">// concurrently is required.</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment">//</span></div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, <span class="keyword">typename</span> Tag&gt;</div>
<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="classbeast_1_1detail_1_1ListNode.html"> 57</a></span>&#160;<span class="keyword">class </span><a class="code" href="classbeast_1_1detail_1_1ListNode.html">ListNode</a></div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;{</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="classbeast_1_1detail_1_1ListNode.html#ab3ab90294d2083356cade0f493be173b"> 60</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classbeast_1_1PropertyStream_1_1Item.html">value_type</a> = T;</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; </div>
<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="classbeast_1_1detail_1_1ListNode.html#a655625ead123cff8495eb575d7db1551"> 62</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classbeast_1_1List.html">List</a>&lt;T, Tag&gt;;</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; </div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">typename</span>&gt;</div>
<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="classbeast_1_1detail_1_1ListNode.html#a0aca4fe5d462a9a0528415cb9475b5f6"> 65</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classbeast_1_1detail_1_1ListIterator.html">ListIterator</a>;</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; </div>
<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="classbeast_1_1detail_1_1ListNode.html#a0191120d6a1323110ea03739320bc39b"> 67</a></span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListNode.html">ListNode</a>* <a class="code" href="classbeast_1_1detail_1_1ListNode.html#a0191120d6a1323110ea03739320bc39b">m_next</a>;</div>
<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="classbeast_1_1detail_1_1ListNode.html#a4b3d0268a6854521f59b4ba2de7fc76c"> 68</a></span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListNode.html">ListNode</a>* <a class="code" href="classbeast_1_1detail_1_1ListNode.html#a4b3d0268a6854521f59b4ba2de7fc76c">m_prev</a>;</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;};</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; </div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment">//------------------------------------------------------------------------------</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; </div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> N&gt;</div>
<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="classbeast_1_1detail_1_1ListIterator.html"> 74</a></span>&#160;<span class="keyword">class </span><a class="code" href="classbeast_1_1detail_1_1ListIterator.html">ListIterator</a></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; : <span class="keyword">public</span> <a class="codeRef" href="http://en.cppreference.com/w/cpp/iterator/iterator.html">std::iterator</a>&lt;std::bidirectional_iterator_tag, std::size_t&gt;</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;{</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keyword">using</span> <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a5b98e0cd0c8a4173d59640a481b44a83">value_type</a> =</div>
<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="classbeast_1_1detail_1_1ListIterator.html#a5b98e0cd0c8a4173d59640a481b44a83"> 79</a></span>&#160; <span class="keyword">typename</span> <a class="code" href="structbeast_1_1detail_1_1CopyConst.html#a5b227ffac65f273363ca0787265f6a9e">beast::detail::CopyConst&lt;N, typename N::value_type&gt;::type</a>;</div>
<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="classbeast_1_1detail_1_1ListIterator.html#a453808ddf6d8dfb1ab71d1e89640b1b5"> 80</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a453808ddf6d8dfb1ab71d1e89640b1b5">pointer</a> = <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a5b98e0cd0c8a4173d59640a481b44a83">value_type</a>*;</div>
<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="classbeast_1_1detail_1_1ListIterator.html#a942daeb38b255cde02a5ecd8bff48085"> 81</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a942daeb38b255cde02a5ecd8bff48085">reference</a> = <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a5b98e0cd0c8a4173d59640a481b44a83">value_type</a>&amp;;</div>
<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="classbeast_1_1detail_1_1ListIterator.html#a70127c23629c4ad1f076e6b2c33c2982"> 82</a></span>&#160; <span class="keyword">using</span> <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">size_type</a> = <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a>;</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; </div>
<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="classbeast_1_1detail_1_1ListIterator.html#afa6ab4623f2c43d8ada281a7b654fb7f"> 84</a></span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#afa6ab4623f2c43d8ada281a7b654fb7f">ListIterator</a>(N* node = <span class="keyword">nullptr</span>) noexcept : <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a9b3afe207729b5d2c247b8707d873540">m_node</a>(node)</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; {</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; }</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; </div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">typename</span> M&gt;</div>
<div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="classbeast_1_1detail_1_1ListIterator.html#ad1dc800b12537682fbeb3057b369400f"> 89</a></span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#ad1dc800b12537682fbeb3057b369400f">ListIterator</a>(<a class="code" href="classbeast_1_1detail_1_1ListIterator.html">ListIterator&lt;M&gt;</a> <span class="keyword">const</span>&amp; other) noexcept : <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a9b3afe207729b5d2c247b8707d873540">m_node</a>(other.m_node)</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; {</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; }</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; </div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">typename</span> M&gt;</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordtype">bool</span></div>
<div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="classbeast_1_1detail_1_1ListIterator.html#a97cf97fb61f5d2b601e5410998c368c2"> 95</a></span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a97cf97fb61f5d2b601e5410998c368c2">operator==</a>(<a class="code" href="classbeast_1_1detail_1_1ListIterator.html">ListIterator&lt;M&gt;</a> <span class="keyword">const</span>&amp; other) <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; {</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a9b3afe207729b5d2c247b8707d873540">m_node</a> == other.m_node;</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; }</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; </div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keyword">template</span> &lt;<span class="keyword">typename</span> M&gt;</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordtype">bool</span></div>
<div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="classbeast_1_1detail_1_1ListIterator.html#a8e4fbd86b52b6d6521a6fa8675c450c1"> 102</a></span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a8e4fbd86b52b6d6521a6fa8675c450c1">operator!=</a>(<a class="code" href="classbeast_1_1detail_1_1ListIterator.html">ListIterator&lt;M&gt;</a> <span class="keyword">const</span>&amp; other) <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; {</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordflow">return</span> !((*this) == other);</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; }</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; </div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a942daeb38b255cde02a5ecd8bff48085">reference</a></div>
<div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="classbeast_1_1detail_1_1ListIterator.html#a49dc00d0b5440e88a91ca422d54f8916"> 108</a></span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a49dc00d0b5440e88a91ca422d54f8916">operator*</a>() const noexcept</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; {</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a667aabc36909bb3e8cdc07cc618bfedd">dereference</a>();</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; }</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; </div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a453808ddf6d8dfb1ab71d1e89640b1b5">pointer</a></div>
<div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="classbeast_1_1detail_1_1ListIterator.html#a96aa8c69a218f44a2c3ddffd3a3f26ad"> 114</a></span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a96aa8c69a218f44a2c3ddffd3a3f26ad">operator-&gt;</a>() const noexcept</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; {</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">return</span> &amp;<a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a667aabc36909bb3e8cdc07cc618bfedd">dereference</a>();</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; }</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; </div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html">ListIterator</a>&amp;</div>
<div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="classbeast_1_1detail_1_1ListIterator.html#aedc71c60af5cc80dbc9ffee164437b83"> 120</a></span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#aedc71c60af5cc80dbc9ffee164437b83">operator++</a>() noexcept</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; {</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#ac71a64601bc799669f12d9f37981e261">increment</a>();</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; }</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; </div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html">ListIterator</a></div>
<div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="classbeast_1_1detail_1_1ListIterator.html#a587cb214eeb027ca6890287594130662"> 127</a></span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a587cb214eeb027ca6890287594130662">operator++</a>(<span class="keywordtype">int</span>) noexcept</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; {</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html">ListIterator</a> result(*<span class="keyword">this</span>);</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#ac71a64601bc799669f12d9f37981e261">increment</a>();</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">return</span> result;</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; }</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; </div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html">ListIterator</a>&amp;</div>
<div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="classbeast_1_1detail_1_1ListIterator.html#ad455e1e32c81352fe48693b83f2f263b"> 135</a></span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#ad455e1e32c81352fe48693b83f2f263b">operator--</a>() noexcept</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; {</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a665e1f8d6b1fb4ad8776351e2b87bc05">decrement</a>();</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">return</span> *<span class="keyword">this</span>;</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; }</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; </div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html">ListIterator</a></div>
<div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="classbeast_1_1detail_1_1ListIterator.html#a7286eefe870946913847d82fb21e48a8"> 142</a></span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a7286eefe870946913847d82fb21e48a8">operator--</a>(<span class="keywordtype">int</span>) noexcept</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; {</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html">ListIterator</a> result(*<span class="keyword">this</span>);</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a665e1f8d6b1fb4ad8776351e2b87bc05">decrement</a>();</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keywordflow">return</span> result;</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; }</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; </div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a942daeb38b255cde02a5ecd8bff48085">reference</a></div>
<div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="classbeast_1_1detail_1_1ListIterator.html#a667aabc36909bb3e8cdc07cc618bfedd"> 151</a></span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a667aabc36909bb3e8cdc07cc618bfedd">dereference</a>() const noexcept</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; {</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span><a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a942daeb38b255cde02a5ecd8bff48085">reference</a><span class="keyword">&gt;</span>(*m_node);</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; }</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; </div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <span class="keywordtype">void</span></div>
<div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="classbeast_1_1detail_1_1ListIterator.html#ac71a64601bc799669f12d9f37981e261"> 157</a></span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#ac71a64601bc799669f12d9f37981e261">increment</a>() noexcept</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; {</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a9b3afe207729b5d2c247b8707d873540">m_node</a> = <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a9b3afe207729b5d2c247b8707d873540">m_node</a>-&gt;m_next;</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; }</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; </div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <span class="keywordtype">void</span></div>
<div class="line"><a name="l00163"></a><span class="lineno"><a class="line" href="classbeast_1_1detail_1_1ListIterator.html#a665e1f8d6b1fb4ad8776351e2b87bc05"> 163</a></span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a665e1f8d6b1fb4ad8776351e2b87bc05">decrement</a>() noexcept</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; {</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a9b3afe207729b5d2c247b8707d873540">m_node</a> = <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a9b3afe207729b5d2c247b8707d873540">m_node</a>-&gt;m_prev;</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; }</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; </div>
<div class="line"><a name="l00168"></a><span class="lineno"><a class="line" href="classbeast_1_1detail_1_1ListIterator.html#a9b3afe207729b5d2c247b8707d873540"> 168</a></span>&#160; N* <a class="code" href="classbeast_1_1detail_1_1ListIterator.html#a9b3afe207729b5d2c247b8707d873540">m_node</a>;</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;};</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; </div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;} <span class="comment">// namespace detail</span></div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; </div>
<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;<span class="keyword">template</span> &lt;<span class="keyword">typename</span> T, <span class="keyword">typename</span> Tag = <span class="keywordtype">void</span>&gt;</div>
<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160;<span class="keyword">class </span><a class="code" href="classbeast_1_1List.html">List</a></div>
<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;{</div>
<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00281"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a9045c6eaf5485a33cc001e8845c47585"> 281</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classbeast_1_1List.html#a9045c6eaf5485a33cc001e8845c47585">Node</a> = <span class="keyword">typename</span> <a class="code" href="classbeast_1_1detail_1_1ListNode.html">detail::ListNode&lt;T, Tag&gt;</a>;</div>
<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; </div>
<div class="line"><a name="l00283"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a63a1df8d77a6a00b1d85b8211759761d"> 283</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classbeast_1_1insight_1_1detail_1_1StatsDMetricBase.html">value_type</a> = T;</div>
<div class="line"><a name="l00284"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a6d52273e032dce1d710c117727d92380"> 284</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classbeast_1_1insight_1_1detail_1_1StatsDMetricBase.html">pointer</a> = <a class="code" href="classbeast_1_1insight_1_1detail_1_1StatsDMetricBase.html">value_type</a>*;</div>
<div class="line"><a name="l00285"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#aa1d0b5ae5080f6e15ef8b17a4278b9b3"> 285</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classbeast_1_1insight_1_1detail_1_1StatsDMetricBase.html">reference</a> = <a class="code" href="classbeast_1_1insight_1_1detail_1_1StatsDMetricBase.html">value_type</a>&amp;;</div>
<div class="line"><a name="l00286"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a03164255795b93fe4fb59ec168e80d5d"> 286</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classbeast_1_1List.html#a03164255795b93fe4fb59ec168e80d5d">const_pointer</a> = <a class="code" href="classbeast_1_1insight_1_1detail_1_1StatsDMetricBase.html">value_type</a> <span class="keyword">const</span>*;</div>
<div class="line"><a name="l00287"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#ac012e92c2402a063425bbaba5f333318"> 287</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classbeast_1_1List.html#ac012e92c2402a063425bbaba5f333318">const_reference</a> = <a class="code" href="classbeast_1_1insight_1_1detail_1_1StatsDMetricBase.html">value_type</a> <span class="keyword">const</span>&amp;;</div>
<div class="line"><a name="l00288"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a0c93009b264caa80fbdb4269d1c0ad4e"> 288</a></span>&#160; <span class="keyword">using</span> <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">size_type</a> = <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a>;</div>
<div class="line"><a name="l00289"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a868d9d7a9879ff1ac34bf24c33308691"> 289</a></span>&#160; <span class="keyword">using</span> <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/ptrdiff_t.html">difference_type</a> = <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/ptrdiff_t.html">std::ptrdiff_t</a>;</div>
<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; </div>
<div class="line"><a name="l00291"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a40627d0f3ad01d19dbd96caf06bbf65b"> 291</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classbeast_1_1detail_1_1ListIterator.html">iterator</a> = <a class="code" href="classbeast_1_1detail_1_1ListIterator.html">detail::ListIterator&lt;Node&gt;</a>;</div>
<div class="line"><a name="l00292"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a07d23c110e136d8fdd57ae5472485e48"> 292</a></span>&#160; <span class="keyword">using</span> <a class="code" href="classbeast_1_1detail_1_1ListIterator.html">const_iterator</a> = <a class="code" href="classbeast_1_1detail_1_1ListIterator.html">detail::ListIterator&lt;Node const&gt;</a>;</div>
<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; </div>
<div class="line"><a name="l00295"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#ad90fd05ef9baf19fd67880f51276d7d9"> 295</a></span>&#160; <a class="code" href="classbeast_1_1List.html#ad90fd05ef9baf19fd67880f51276d7d9">List</a>()</div>
<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; {</div>
<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <a class="code" href="classbeast_1_1List.html#a0506a9fc63652b7d9119265fbf5ffb76">m_head</a>.m_prev = <span class="keyword">nullptr</span>; <span class="comment">// identifies the head</span></div>
<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <a class="code" href="classbeast_1_1List.html#a0b9665072db8d42d2c6f2b386435739e">m_tail</a>.m_next = <span class="keyword">nullptr</span>; <span class="comment">// identifies the tail</span></div>
<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; <a class="code" href="classbeast_1_1List.html#a2363f8aaea2ae751b26dae67ce41d78c">clear</a>();</div>
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; }</div>
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; </div>
<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <a class="code" href="classbeast_1_1List.html#ad90fd05ef9baf19fd67880f51276d7d9">List</a>(<a class="code" href="classbeast_1_1List.html">List</a> <span class="keyword">const</span>&amp;) = <span class="keyword">delete</span>;</div>
<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <a class="code" href="classbeast_1_1List.html">List</a>&amp;</div>
<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; <a class="code" href="classbeast_1_1List.html#a416adae20bef2608c399eed9985ee844">operator=</a>(<a class="code" href="classbeast_1_1List.html">List</a> <span class="keyword">const</span>&amp;) = <span class="keyword">delete</span>;</div>
<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; </div>
<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <span class="keywordtype">bool</span></div>
<div class="line"><a name="l00310"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a9841a3b7bc7902d7f4e438978d464001"> 310</a></span>&#160; <a class="code" href="classbeast_1_1List.html#a9841a3b7bc7902d7f4e438978d464001">empty</a>() const noexcept</div>
<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; {</div>
<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classbeast_1_1List.html#ad1887824b8827b60b3c9fe7ccc09c130">size</a>() == 0;</div>
<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; }</div>
<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; </div>
<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <a class="code" href="classbeast_1_1List.html#a0c93009b264caa80fbdb4269d1c0ad4e">size_type</a></div>
<div class="line"><a name="l00317"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#ad1887824b8827b60b3c9fe7ccc09c130"> 317</a></span>&#160; <a class="code" href="classbeast_1_1List.html#ad1887824b8827b60b3c9fe7ccc09c130">size</a>() const noexcept</div>
<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; {</div>
<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classbeast_1_1List.html#affdad43179d987f5dee90f8f48823ba9">m_size</a>;</div>
<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; }</div>
<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; </div>
<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160; <a class="code" href="classbeast_1_1List.html#aa1d0b5ae5080f6e15ef8b17a4278b9b3">reference</a></div>
<div class="line"><a name="l00327"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a1d46509c54405b5fe4558ff8f00db5f3"> 327</a></span>&#160; <a class="code" href="classbeast_1_1List.html#a1d46509c54405b5fe4558ff8f00db5f3">front</a>() noexcept</div>
<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; {</div>
<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classbeast_1_1List.html#ae24e82711cc324fcee31d6765fb2f212">element_from</a>(<a class="code" href="classbeast_1_1List.html#a0506a9fc63652b7d9119265fbf5ffb76">m_head</a>.m_next);</div>
<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; }</div>
<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; </div>
<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; <a class="code" href="classbeast_1_1List.html#ac012e92c2402a063425bbaba5f333318">const_reference</a></div>
<div class="line"><a name="l00337"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a822463abd19c159b0811ed64e0e34ccd"> 337</a></span>&#160; <a class="code" href="classbeast_1_1List.html#a822463abd19c159b0811ed64e0e34ccd">front</a>() const noexcept</div>
<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; {</div>
<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classbeast_1_1List.html#ae24e82711cc324fcee31d6765fb2f212">element_from</a>(<a class="code" href="classbeast_1_1List.html#a0506a9fc63652b7d9119265fbf5ffb76">m_head</a>.m_next);</div>
<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; }</div>
<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; </div>
<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <a class="code" href="classbeast_1_1List.html#aa1d0b5ae5080f6e15ef8b17a4278b9b3">reference</a></div>
<div class="line"><a name="l00347"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a84edbf644909e6a377e432785da86a14"> 347</a></span>&#160; <a class="code" href="classbeast_1_1List.html#a84edbf644909e6a377e432785da86a14">back</a>() noexcept</div>
<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; {</div>
<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classbeast_1_1List.html#ae24e82711cc324fcee31d6765fb2f212">element_from</a>(<a class="code" href="classbeast_1_1List.html#a0b9665072db8d42d2c6f2b386435739e">m_tail</a>.m_prev);</div>
<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; }</div>
<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; </div>
<div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <a class="code" href="classbeast_1_1List.html#ac012e92c2402a063425bbaba5f333318">const_reference</a></div>
<div class="line"><a name="l00357"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a3d41b13fa74a92c92fe2a1cc598e1bae"> 357</a></span>&#160; <a class="code" href="classbeast_1_1List.html#a3d41b13fa74a92c92fe2a1cc598e1bae">back</a>() const noexcept</div>
<div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; {</div>
<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classbeast_1_1List.html#ae24e82711cc324fcee31d6765fb2f212">element_from</a>(<a class="code" href="classbeast_1_1List.html#a0b9665072db8d42d2c6f2b386435739e">m_tail</a>.m_prev);</div>
<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; }</div>
<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; </div>
<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; <a class="code" href="classbeast_1_1List.html#a40627d0f3ad01d19dbd96caf06bbf65b">iterator</a></div>
<div class="line"><a name="l00366"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a2d3c19a2ea6aba941902adcc0c1a5a73"> 366</a></span>&#160; <a class="code" href="classbeast_1_1List.html#a2d3c19a2ea6aba941902adcc0c1a5a73">begin</a>() noexcept</div>
<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160; {</div>
<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classbeast_1_1List.html#a40627d0f3ad01d19dbd96caf06bbf65b">iterator</a>(<a class="code" href="classbeast_1_1List.html#a0506a9fc63652b7d9119265fbf5ffb76">m_head</a>.m_next);</div>
<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; }</div>
<div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; </div>
<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <a class="code" href="classbeast_1_1List.html#a07d23c110e136d8fdd57ae5472485e48">const_iterator</a></div>
<div class="line"><a name="l00375"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a1094a4aec90a0b2dac32e61fdc730b20"> 375</a></span>&#160; <a class="code" href="classbeast_1_1List.html#a1094a4aec90a0b2dac32e61fdc730b20">begin</a>() const noexcept</div>
<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; {</div>
<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classbeast_1_1List.html#a07d23c110e136d8fdd57ae5472485e48">const_iterator</a>(<a class="code" href="classbeast_1_1List.html#a0506a9fc63652b7d9119265fbf5ffb76">m_head</a>.m_next);</div>
<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; }</div>
<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; </div>
<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <a class="code" href="classbeast_1_1List.html#a07d23c110e136d8fdd57ae5472485e48">const_iterator</a></div>
<div class="line"><a name="l00384"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#ad3ec5127cf5bd832781d3f827f7194ad"> 384</a></span>&#160; <a class="code" href="classbeast_1_1List.html#ad3ec5127cf5bd832781d3f827f7194ad">cbegin</a>() const noexcept</div>
<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; {</div>
<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classbeast_1_1List.html#a07d23c110e136d8fdd57ae5472485e48">const_iterator</a>(<a class="code" href="classbeast_1_1List.html#a0506a9fc63652b7d9119265fbf5ffb76">m_head</a>.m_next);</div>
<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; }</div>
<div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; </div>
<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; <a class="code" href="classbeast_1_1List.html#a40627d0f3ad01d19dbd96caf06bbf65b">iterator</a></div>
<div class="line"><a name="l00393"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a672d23adfca5d4a5e7c4443cf64a8a55"> 393</a></span>&#160; <a class="code" href="classbeast_1_1List.html#a672d23adfca5d4a5e7c4443cf64a8a55">end</a>() noexcept</div>
<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; {</div>
<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classbeast_1_1List.html#a40627d0f3ad01d19dbd96caf06bbf65b">iterator</a>(&amp;<a class="code" href="classbeast_1_1List.html#a0b9665072db8d42d2c6f2b386435739e">m_tail</a>);</div>
<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; }</div>
<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; </div>
<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; <a class="code" href="classbeast_1_1List.html#a07d23c110e136d8fdd57ae5472485e48">const_iterator</a></div>
<div class="line"><a name="l00402"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a8c37d92977108ab93b57941fcb52e050"> 402</a></span>&#160; <a class="code" href="classbeast_1_1List.html#a8c37d92977108ab93b57941fcb52e050">end</a>() const noexcept</div>
<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160; {</div>
<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classbeast_1_1List.html#a07d23c110e136d8fdd57ae5472485e48">const_iterator</a>(&amp;<a class="code" href="classbeast_1_1List.html#a0b9665072db8d42d2c6f2b386435739e">m_tail</a>);</div>
<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; }</div>
<div class="line"><a name="l00406"></a><span class="lineno"> 406</span>&#160; </div>
<div class="line"><a name="l00410"></a><span class="lineno"> 410</span>&#160; <a class="code" href="classbeast_1_1List.html#a07d23c110e136d8fdd57ae5472485e48">const_iterator</a></div>
<div class="line"><a name="l00411"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a16c1ce8b06e47e2566355e039e666623"> 411</a></span>&#160; <a class="code" href="classbeast_1_1List.html#a16c1ce8b06e47e2566355e039e666623">cend</a>() const noexcept</div>
<div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160; {</div>
<div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classbeast_1_1List.html#a07d23c110e136d8fdd57ae5472485e48">const_iterator</a>(&amp;<a class="code" href="classbeast_1_1List.html#a0b9665072db8d42d2c6f2b386435739e">m_tail</a>);</div>
<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160; }</div>
<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; </div>
<div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; <span class="keywordtype">void</span></div>
<div class="line"><a name="l00420"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a2363f8aaea2ae751b26dae67ce41d78c"> 420</a></span>&#160; <a class="code" href="classbeast_1_1List.html#a2363f8aaea2ae751b26dae67ce41d78c">clear</a>() noexcept</div>
<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160; {</div>
<div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; <a class="code" href="classbeast_1_1List.html#a0506a9fc63652b7d9119265fbf5ffb76">m_head</a>.m_next = &amp;<a class="code" href="classbeast_1_1List.html#a0b9665072db8d42d2c6f2b386435739e">m_tail</a>;</div>
<div class="line"><a name="l00423"></a><span class="lineno"> 423</span>&#160; <a class="code" href="classbeast_1_1List.html#a0b9665072db8d42d2c6f2b386435739e">m_tail</a>.m_prev = &amp;<a class="code" href="classbeast_1_1List.html#a0506a9fc63652b7d9119265fbf5ffb76">m_head</a>;</div>
<div class="line"><a name="l00424"></a><span class="lineno"> 424</span>&#160; <a class="code" href="classbeast_1_1List.html#affdad43179d987f5dee90f8f48823ba9">m_size</a> = 0;</div>
<div class="line"><a name="l00425"></a><span class="lineno"> 425</span>&#160; }</div>
<div class="line"><a name="l00426"></a><span class="lineno"> 426</span>&#160; </div>
<div class="line"><a name="l00433"></a><span class="lineno"> 433</span>&#160; <a class="code" href="classbeast_1_1List.html#a40627d0f3ad01d19dbd96caf06bbf65b">iterator</a></div>
<div class="line"><a name="l00434"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a52ed927dfed7415df459b6cc11572fdf"> 434</a></span>&#160; <a class="code" href="classbeast_1_1List.html#a52ed927dfed7415df459b6cc11572fdf">insert</a>(<a class="code" href="classbeast_1_1detail_1_1ListIterator.html">iterator</a> pos, T&amp; element) noexcept</div>
<div class="line"><a name="l00435"></a><span class="lineno"> 435</span>&#160; {</div>
<div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; <a class="code" href="classbeast_1_1List.html#a9045c6eaf5485a33cc001e8845c47585">Node</a>* node = <span class="keyword">static_cast&lt;</span><a class="code" href="classbeast_1_1List.html#a9045c6eaf5485a33cc001e8845c47585">Node</a>*<span class="keyword">&gt;</span>(&amp;element);</div>
<div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; node-&gt;m_next = &amp;*pos;</div>
<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; node-&gt;m_prev = node-&gt;m_next-&gt;m_prev;</div>
<div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; node-&gt;m_next-&gt;m_prev = node;</div>
<div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160; node-&gt;m_prev-&gt;m_next = node;</div>
<div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; ++<a class="code" href="classbeast_1_1List.html#affdad43179d987f5dee90f8f48823ba9">m_size</a>;</div>
<div class="line"><a name="l00442"></a><span class="lineno"> 442</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classbeast_1_1List.html#a40627d0f3ad01d19dbd96caf06bbf65b">iterator</a>(node);</div>
<div class="line"><a name="l00443"></a><span class="lineno"> 443</span>&#160; }</div>
<div class="line"><a name="l00444"></a><span class="lineno"> 444</span>&#160; </div>
<div class="line"><a name="l00450"></a><span class="lineno"> 450</span>&#160; <span class="keywordtype">void</span></div>
<div class="line"><a name="l00451"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a2bbebdc9a9c283bacdb32975326279b6"> 451</a></span>&#160; <a class="code" href="classbeast_1_1List.html#a2bbebdc9a9c283bacdb32975326279b6">insert</a>(<a class="code" href="classbeast_1_1detail_1_1ListIterator.html">iterator</a> pos, <a class="code" href="classbeast_1_1List.html">List</a>&amp; other) noexcept</div>
<div class="line"><a name="l00452"></a><span class="lineno"> 452</span>&#160; {</div>
<div class="line"><a name="l00453"></a><span class="lineno"> 453</span>&#160; <span class="keywordflow">if</span> (!other.empty())</div>
<div class="line"><a name="l00454"></a><span class="lineno"> 454</span>&#160; {</div>
<div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160; <a class="code" href="classbeast_1_1List.html#a9045c6eaf5485a33cc001e8845c47585">Node</a>* before = &amp;*pos;</div>
<div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160; other.m_head.m_next-&gt;m_prev = before-&gt;m_prev;</div>
<div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; before-&gt;m_prev-&gt;m_next = other.m_head.m_next;</div>
<div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; other.m_tail.m_prev-&gt;m_next = before;</div>
<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; before-&gt;m_prev = other.m_tail.m_prev;</div>
<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <a class="code" href="classbeast_1_1List.html#affdad43179d987f5dee90f8f48823ba9">m_size</a> += other.m_size;</div>
<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; other.clear();</div>
<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; }</div>
<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; }</div>
<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160; </div>
<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; <a class="code" href="classbeast_1_1List.html#a40627d0f3ad01d19dbd96caf06bbf65b">iterator</a></div>
<div class="line"><a name="l00471"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#aeed218d106b4ab72b2290ac953f97405"> 471</a></span>&#160; <a class="code" href="classbeast_1_1List.html#aeed218d106b4ab72b2290ac953f97405">erase</a>(<a class="code" href="classbeast_1_1detail_1_1ListIterator.html">iterator</a> pos) noexcept</div>
<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; {</div>
<div class="line"><a name="l00473"></a><span class="lineno"> 473</span>&#160; <a class="code" href="classbeast_1_1List.html#a9045c6eaf5485a33cc001e8845c47585">Node</a>* node = &amp;*pos;</div>
<div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; ++pos;</div>
<div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160; node-&gt;m_next-&gt;m_prev = node-&gt;m_prev;</div>
<div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; node-&gt;m_prev-&gt;m_next = node-&gt;m_next;</div>
<div class="line"><a name="l00477"></a><span class="lineno"> 477</span>&#160; --<a class="code" href="classbeast_1_1List.html#affdad43179d987f5dee90f8f48823ba9">m_size</a>;</div>
<div class="line"><a name="l00478"></a><span class="lineno"> 478</span>&#160; <span class="keywordflow">return</span> pos;</div>
<div class="line"><a name="l00479"></a><span class="lineno"> 479</span>&#160; }</div>
<div class="line"><a name="l00480"></a><span class="lineno"> 480</span>&#160; </div>
<div class="line"><a name="l00485"></a><span class="lineno"> 485</span>&#160; <a class="code" href="classbeast_1_1List.html#a40627d0f3ad01d19dbd96caf06bbf65b">iterator</a></div>
<div class="line"><a name="l00486"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#ab87398d236198de27a6571e10b5503f5"> 486</a></span>&#160; <a class="code" href="classbeast_1_1List.html#ab87398d236198de27a6571e10b5503f5">push_front</a>(T&amp; element) noexcept</div>
<div class="line"><a name="l00487"></a><span class="lineno"> 487</span>&#160; {</div>
<div class="line"><a name="l00488"></a><span class="lineno"> 488</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classbeast_1_1List.html#a52ed927dfed7415df459b6cc11572fdf">insert</a>(<a class="code" href="classbeast_1_1List.html#a2d3c19a2ea6aba941902adcc0c1a5a73">begin</a>(), element);</div>
<div class="line"><a name="l00489"></a><span class="lineno"> 489</span>&#160; }</div>
<div class="line"><a name="l00490"></a><span class="lineno"> 490</span>&#160; </div>
<div class="line"><a name="l00495"></a><span class="lineno"> 495</span>&#160; T&amp;</div>
<div class="line"><a name="l00496"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#ab94ffa10aa70bd3ec3cdec8351b48cd5"> 496</a></span>&#160; <a class="code" href="classbeast_1_1List.html#ab94ffa10aa70bd3ec3cdec8351b48cd5">pop_front</a>() noexcept</div>
<div class="line"><a name="l00497"></a><span class="lineno"> 497</span>&#160; {</div>
<div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160; T&amp; element(<a class="code" href="classbeast_1_1List.html#a1d46509c54405b5fe4558ff8f00db5f3">front</a>());</div>
<div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160; <a class="code" href="classbeast_1_1List.html#aeed218d106b4ab72b2290ac953f97405">erase</a>(<a class="code" href="classbeast_1_1List.html#a2d3c19a2ea6aba941902adcc0c1a5a73">begin</a>());</div>
<div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; <span class="keywordflow">return</span> element;</div>
<div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; }</div>
<div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; </div>
<div class="line"><a name="l00507"></a><span class="lineno"> 507</span>&#160; <a class="code" href="classbeast_1_1List.html#a40627d0f3ad01d19dbd96caf06bbf65b">iterator</a></div>
<div class="line"><a name="l00508"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a0ced815cdedb1b2323cd9adf97cca504"> 508</a></span>&#160; <a class="code" href="classbeast_1_1List.html#a0ced815cdedb1b2323cd9adf97cca504">push_back</a>(T&amp; element) noexcept</div>
<div class="line"><a name="l00509"></a><span class="lineno"> 509</span>&#160; {</div>
<div class="line"><a name="l00510"></a><span class="lineno"> 510</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classbeast_1_1List.html#a52ed927dfed7415df459b6cc11572fdf">insert</a>(<a class="code" href="classbeast_1_1List.html#a672d23adfca5d4a5e7c4443cf64a8a55">end</a>(), element);</div>
<div class="line"><a name="l00511"></a><span class="lineno"> 511</span>&#160; }</div>
<div class="line"><a name="l00512"></a><span class="lineno"> 512</span>&#160; </div>
<div class="line"><a name="l00517"></a><span class="lineno"> 517</span>&#160; T&amp;</div>
<div class="line"><a name="l00518"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a4a1ef6ded08491b40f11ff24f9ca7344"> 518</a></span>&#160; <a class="code" href="classbeast_1_1List.html#a4a1ef6ded08491b40f11ff24f9ca7344">pop_back</a>() noexcept</div>
<div class="line"><a name="l00519"></a><span class="lineno"> 519</span>&#160; {</div>
<div class="line"><a name="l00520"></a><span class="lineno"> 520</span>&#160; T&amp; element(<a class="code" href="classbeast_1_1List.html#a84edbf644909e6a377e432785da86a14">back</a>());</div>
<div class="line"><a name="l00521"></a><span class="lineno"> 521</span>&#160; <a class="code" href="classbeast_1_1List.html#aeed218d106b4ab72b2290ac953f97405">erase</a>(--<a class="code" href="classbeast_1_1List.html#a672d23adfca5d4a5e7c4443cf64a8a55">end</a>());</div>
<div class="line"><a name="l00522"></a><span class="lineno"> 522</span>&#160; <span class="keywordflow">return</span> element;</div>
<div class="line"><a name="l00523"></a><span class="lineno"> 523</span>&#160; }</div>
<div class="line"><a name="l00524"></a><span class="lineno"> 524</span>&#160; </div>
<div class="line"><a name="l00526"></a><span class="lineno"> 526</span>&#160; <span class="keywordtype">void</span></div>
<div class="line"><a name="l00527"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a98afd9f3adea12843d20d2a7cb585095"> 527</a></span>&#160; <a class="code" href="classbeast_1_1List.html#a98afd9f3adea12843d20d2a7cb585095">swap</a>(<a class="code" href="classbeast_1_1List.html">List</a>&amp; other) noexcept</div>
<div class="line"><a name="l00528"></a><span class="lineno"> 528</span>&#160; {</div>
<div class="line"><a name="l00529"></a><span class="lineno"> 529</span>&#160; <a class="code" href="classbeast_1_1List.html">List</a> temp;</div>
<div class="line"><a name="l00530"></a><span class="lineno"> 530</span>&#160; temp.<a class="code" href="classbeast_1_1List.html#a5e42fc88625071226c400a287a25467a">append</a>(other);</div>
<div class="line"><a name="l00531"></a><span class="lineno"> 531</span>&#160; other.append(*<span class="keyword">this</span>);</div>
<div class="line"><a name="l00532"></a><span class="lineno"> 532</span>&#160; <a class="code" href="classbeast_1_1List.html#a5e42fc88625071226c400a287a25467a">append</a>(temp);</div>
<div class="line"><a name="l00533"></a><span class="lineno"> 533</span>&#160; }</div>
<div class="line"><a name="l00534"></a><span class="lineno"> 534</span>&#160; </div>
<div class="line"><a name="l00539"></a><span class="lineno"> 539</span>&#160; <a class="code" href="classbeast_1_1List.html#a40627d0f3ad01d19dbd96caf06bbf65b">iterator</a></div>
<div class="line"><a name="l00540"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#af980125999dcc8dd28f92fc1293ebe71"> 540</a></span>&#160; <a class="code" href="classbeast_1_1List.html#af980125999dcc8dd28f92fc1293ebe71">prepend</a>(<a class="code" href="classbeast_1_1List.html">List</a>&amp; list) noexcept</div>
<div class="line"><a name="l00541"></a><span class="lineno"> 541</span>&#160; {</div>
<div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classbeast_1_1List.html#a52ed927dfed7415df459b6cc11572fdf">insert</a>(<a class="code" href="classbeast_1_1List.html#a2d3c19a2ea6aba941902adcc0c1a5a73">begin</a>(), list);</div>
<div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; }</div>
<div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; </div>
<div class="line"><a name="l00549"></a><span class="lineno"> 549</span>&#160; <a class="code" href="classbeast_1_1List.html#a40627d0f3ad01d19dbd96caf06bbf65b">iterator</a></div>
<div class="line"><a name="l00550"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a5e42fc88625071226c400a287a25467a"> 550</a></span>&#160; <a class="code" href="classbeast_1_1List.html#a5e42fc88625071226c400a287a25467a">append</a>(<a class="code" href="classbeast_1_1List.html">List</a>&amp; list) noexcept</div>
<div class="line"><a name="l00551"></a><span class="lineno"> 551</span>&#160; {</div>
<div class="line"><a name="l00552"></a><span class="lineno"> 552</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classbeast_1_1List.html#a52ed927dfed7415df459b6cc11572fdf">insert</a>(<a class="code" href="classbeast_1_1List.html#a672d23adfca5d4a5e7c4443cf64a8a55">end</a>(), list);</div>
<div class="line"><a name="l00553"></a><span class="lineno"> 553</span>&#160; }</div>
<div class="line"><a name="l00554"></a><span class="lineno"> 554</span>&#160; </div>
<div class="line"><a name="l00560"></a><span class="lineno"> 560</span>&#160; <a class="code" href="classbeast_1_1List.html#a40627d0f3ad01d19dbd96caf06bbf65b">iterator</a></div>
<div class="line"><a name="l00561"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a052268b3c6b478ceadfc0044e2f44636"> 561</a></span>&#160; <a class="code" href="classbeast_1_1List.html#a052268b3c6b478ceadfc0044e2f44636">iterator_to</a>(T&amp; element) <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00562"></a><span class="lineno"> 562</span>&#160; {</div>
<div class="line"><a name="l00563"></a><span class="lineno"> 563</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classbeast_1_1List.html#a40627d0f3ad01d19dbd96caf06bbf65b">iterator</a>(<span class="keyword">static_cast&lt;</span><a class="code" href="classbeast_1_1List.html#a9045c6eaf5485a33cc001e8845c47585">Node</a>*<span class="keyword">&gt;</span>(&amp;element));</div>
<div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160; }</div>
<div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160; </div>
<div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160; <a class="code" href="classbeast_1_1List.html#a07d23c110e136d8fdd57ae5472485e48">const_iterator</a></div>
<div class="line"><a name="l00572"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#aa484edca3eddbc186371135a50f72836"> 572</a></span>&#160; <a class="code" href="classbeast_1_1List.html#aa484edca3eddbc186371135a50f72836">const_iterator_to</a>(T <span class="keyword">const</span>&amp; element) <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00573"></a><span class="lineno"> 573</span>&#160; {</div>
<div class="line"><a name="l00574"></a><span class="lineno"> 574</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classbeast_1_1List.html#a07d23c110e136d8fdd57ae5472485e48">const_iterator</a>(<span class="keyword">static_cast&lt;</span><a class="code" href="classbeast_1_1List.html#a9045c6eaf5485a33cc001e8845c47585">Node</a> const*<span class="keyword">&gt;</span>(&amp;element));</div>
<div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; }</div>
<div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160; </div>
<div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; <a class="code" href="classbeast_1_1List.html#aa1d0b5ae5080f6e15ef8b17a4278b9b3">reference</a></div>
<div class="line"><a name="l00579"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#ae24e82711cc324fcee31d6765fb2f212"> 579</a></span>&#160; <a class="code" href="classbeast_1_1List.html#ae24e82711cc324fcee31d6765fb2f212">element_from</a>(<a class="code" href="classbeast_1_1List.html#a9045c6eaf5485a33cc001e8845c47585">Node</a>* node) noexcept</div>
<div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; {</div>
<div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; <span class="keywordflow">return</span> *(<span class="keyword">static_cast&lt;</span><a class="code" href="classbeast_1_1insight_1_1detail_1_1StatsDMetricBase.html">pointer</a><span class="keyword">&gt;</span>(node));</div>
<div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; }</div>
<div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160; </div>
<div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; <a class="code" href="classbeast_1_1List.html#ac012e92c2402a063425bbaba5f333318">const_reference</a></div>
<div class="line"><a name="l00585"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a6a33ff030ff738d993ba09546b0e6610"> 585</a></span>&#160; <a class="code" href="classbeast_1_1List.html#a6a33ff030ff738d993ba09546b0e6610">element_from</a>(<a class="code" href="classbeast_1_1List.html#a9045c6eaf5485a33cc001e8845c47585">Node</a> <span class="keyword">const</span>* node) <span class="keyword">const</span> noexcept</div>
<div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; {</div>
<div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; <span class="keywordflow">return</span> *(<span class="keyword">static_cast&lt;</span><a class="code" href="classbeast_1_1List.html#a03164255795b93fe4fb59ec168e80d5d">const_pointer</a><span class="keyword">&gt;</span>(node));</div>
<div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; }</div>
<div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; </div>
<div class="line"><a name="l00590"></a><span class="lineno"> 590</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00591"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#affdad43179d987f5dee90f8f48823ba9"> 591</a></span>&#160; <a class="codeRef" href="http://en.cppreference.com/w/cpp/types/size_t.html">size_type</a> <a class="code" href="classbeast_1_1List.html#affdad43179d987f5dee90f8f48823ba9">m_size</a>;</div>
<div class="line"><a name="l00592"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a0506a9fc63652b7d9119265fbf5ffb76"> 592</a></span>&#160; <a class="code" href="classbeast_1_1List.html#a9045c6eaf5485a33cc001e8845c47585">Node</a> <a class="code" href="classbeast_1_1List.html#a0506a9fc63652b7d9119265fbf5ffb76">m_head</a>;</div>
<div class="line"><a name="l00593"></a><span class="lineno"><a class="line" href="classbeast_1_1List.html#a0b9665072db8d42d2c6f2b386435739e"> 593</a></span>&#160; <a class="code" href="classbeast_1_1List.html#a9045c6eaf5485a33cc001e8845c47585">Node</a> <a class="code" href="classbeast_1_1List.html#a0b9665072db8d42d2c6f2b386435739e">m_tail</a>;</div>
<div class="line"><a name="l00594"></a><span class="lineno"> 594</span>&#160;};</div>
<div class="line"><a name="l00595"></a><span class="lineno"> 595</span>&#160; </div>
<div class="line"><a name="l00596"></a><span class="lineno"> 596</span>&#160;} <span class="comment">// namespace beast</span></div>
<div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160; </div>
<div class="line"><a name="l00598"></a><span class="lineno"> 598</span>&#160;<span class="preprocessor">#endif</span></div>
</div><!-- fragment --></div><!-- contents -->
<div class="ttc" id="aclassbeast_1_1detail_1_1ListIterator_html_afa6ab4623f2c43d8ada281a7b654fb7f"><div class="ttname"><a href="classbeast_1_1detail_1_1ListIterator.html#afa6ab4623f2c43d8ada281a7b654fb7f">beast::detail::ListIterator::ListIterator</a></div><div class="ttdeci">ListIterator(N *node=nullptr) noexcept</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00084">List.h:84</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a822463abd19c159b0811ed64e0e34ccd"><div class="ttname"><a href="classbeast_1_1List.html#a822463abd19c159b0811ed64e0e34ccd">beast::List::front</a></div><div class="ttdeci">const_reference front() const noexcept</div><div class="ttdoc">Obtain a const reference to the first element.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00337">List.h:337</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_ad1887824b8827b60b3c9fe7ccc09c130"><div class="ttname"><a href="classbeast_1_1List.html#ad1887824b8827b60b3c9fe7ccc09c130">beast::List::size</a></div><div class="ttdeci">size_type size() const noexcept</div><div class="ttdoc">Returns the number of elements in the list.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00317">List.h:317</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a416adae20bef2608c399eed9985ee844"><div class="ttname"><a href="classbeast_1_1List.html#a416adae20bef2608c399eed9985ee844">beast::List::operator=</a></div><div class="ttdeci">List &amp; operator=(List const &amp;)=delete</div></div>
<div class="ttc" id="aclassbeast_1_1detail_1_1ListIterator_html"><div class="ttname"><a href="classbeast_1_1detail_1_1ListIterator.html">beast::detail::ListIterator</a></div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00074">List.h:74</a></div></div>
<div class="ttc" id="aclassbeast_1_1detail_1_1ListIterator_html_a665e1f8d6b1fb4ad8776351e2b87bc05"><div class="ttname"><a href="classbeast_1_1detail_1_1ListIterator.html#a665e1f8d6b1fb4ad8776351e2b87bc05">beast::detail::ListIterator::decrement</a></div><div class="ttdeci">void decrement() noexcept</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00163">List.h:163</a></div></div>
<div class="ttc" id="aclassbeast_1_1detail_1_1ListIterator_html_ac71a64601bc799669f12d9f37981e261"><div class="ttname"><a href="classbeast_1_1detail_1_1ListIterator.html#ac71a64601bc799669f12d9f37981e261">beast::detail::ListIterator::increment</a></div><div class="ttdeci">void increment() noexcept</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00157">List.h:157</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a07d23c110e136d8fdd57ae5472485e48"><div class="ttname"><a href="classbeast_1_1List.html#a07d23c110e136d8fdd57ae5472485e48">beast::List::const_iterator</a></div><div class="ttdeci">detail::ListIterator&lt; Node const &gt; const_iterator</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00292">List.h:292</a></div></div>
<div class="ttc" id="aclassbeast_1_1detail_1_1ListIterator_html_a942daeb38b255cde02a5ecd8bff48085"><div class="ttname"><a href="classbeast_1_1detail_1_1ListIterator.html#a942daeb38b255cde02a5ecd8bff48085">beast::detail::ListIterator::reference</a></div><div class="ttdeci">value_type &amp; reference</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00081">List.h:81</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_af980125999dcc8dd28f92fc1293ebe71"><div class="ttname"><a href="classbeast_1_1List.html#af980125999dcc8dd28f92fc1293ebe71">beast::List::prepend</a></div><div class="ttdeci">iterator prepend(List &amp;list) noexcept</div><div class="ttdoc">Insert another list at the beginning of this list.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00540">List.h:540</a></div></div>
<div class="ttc" id="aclassbeast_1_1detail_1_1ListIterator_html_ad1dc800b12537682fbeb3057b369400f"><div class="ttname"><a href="classbeast_1_1detail_1_1ListIterator.html#ad1dc800b12537682fbeb3057b369400f">beast::detail::ListIterator::ListIterator</a></div><div class="ttdeci">ListIterator(ListIterator&lt; M &gt; const &amp;other) noexcept</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00089">List.h:89</a></div></div>
<div class="ttc" id="astructbeast_1_1detail_1_1CopyConst_html_a5b227ffac65f273363ca0787265f6a9e"><div class="ttname"><a href="structbeast_1_1detail_1_1CopyConst.html#a5b227ffac65f273363ca0787265f6a9e">beast::detail::CopyConst::type</a></div><div class="ttdeci">typename std::remove_const&lt; U &gt;::type type</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00040">List.h:40</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a052268b3c6b478ceadfc0044e2f44636"><div class="ttname"><a href="classbeast_1_1List.html#a052268b3c6b478ceadfc0044e2f44636">beast::List::iterator_to</a></div><div class="ttdeci">iterator iterator_to(T &amp;element) const noexcept</div><div class="ttdoc">Obtain an iterator from an element.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00561">List.h:561</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a672d23adfca5d4a5e7c4443cf64a8a55"><div class="ttname"><a href="classbeast_1_1List.html#a672d23adfca5d4a5e7c4443cf64a8a55">beast::List::end</a></div><div class="ttdeci">iterator end() noexcept</div><div class="ttdoc">Obtain a iterator to the end of the list.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00393">List.h:393</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a0c93009b264caa80fbdb4269d1c0ad4e"><div class="ttname"><a href="classbeast_1_1List.html#a0c93009b264caa80fbdb4269d1c0ad4e">beast::List::size_type</a></div><div class="ttdeci">std::size_t size_type</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00288">List.h:288</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_aa484edca3eddbc186371135a50f72836"><div class="ttname"><a href="classbeast_1_1List.html#aa484edca3eddbc186371135a50f72836">beast::List::const_iterator_to</a></div><div class="ttdeci">const_iterator const_iterator_to(T const &amp;element) const noexcept</div><div class="ttdoc">Obtain a const iterator from an element.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00572">List.h:572</a></div></div>
<div class="ttc" id="aiterator_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/header/iterator.html">iterator</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a9841a3b7bc7902d7f4e438978d464001"><div class="ttname"><a href="classbeast_1_1List.html#a9841a3b7bc7902d7f4e438978d464001">beast::List::empty</a></div><div class="ttdeci">bool empty() const noexcept</div><div class="ttdoc">Determine if the list is empty.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00310">List.h:310</a></div></div>
<div class="ttc" id="aclassbeast_1_1insight_1_1detail_1_1StatsDMetricBase_html"><div class="ttname"><a href="classbeast_1_1insight_1_1detail_1_1StatsDMetricBase.html">beast::insight::detail::StatsDMetricBase</a></div><div class="ttdef"><b>Definition:</b> <a href="StatsDCollector_8cpp_source.html#l00052">StatsDCollector.cpp:52</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a40627d0f3ad01d19dbd96caf06bbf65b"><div class="ttname"><a href="classbeast_1_1List.html#a40627d0f3ad01d19dbd96caf06bbf65b">beast::List::iterator</a></div><div class="ttdeci">detail::ListIterator&lt; Node &gt; iterator</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00291">List.h:291</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a16c1ce8b06e47e2566355e039e666623"><div class="ttname"><a href="classbeast_1_1List.html#a16c1ce8b06e47e2566355e039e666623">beast::List::cend</a></div><div class="ttdeci">const_iterator cend() const noexcept</div><div class="ttdoc">Obtain a const iterator to the end of the list.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00411">List.h:411</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a2363f8aaea2ae751b26dae67ce41d78c"><div class="ttname"><a href="classbeast_1_1List.html#a2363f8aaea2ae751b26dae67ce41d78c">beast::List::clear</a></div><div class="ttdeci">void clear() noexcept</div><div class="ttdoc">Clear the list.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00420">List.h:420</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_ab87398d236198de27a6571e10b5503f5"><div class="ttname"><a href="classbeast_1_1List.html#ab87398d236198de27a6571e10b5503f5">beast::List::push_front</a></div><div class="ttdeci">iterator push_front(T &amp;element) noexcept</div><div class="ttdoc">Insert an element at the beginning of the list.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00486">List.h:486</a></div></div>
<div class="ttc" id="astructbeast_1_1detail_1_1CopyConst_3_01T_01const_00_01U_01_4_html_af6bad09fff8798aecdf67663f14eab21"><div class="ttname"><a href="structbeast_1_1detail_1_1CopyConst_3_01T_01const_00_01U_01_4.html#af6bad09fff8798aecdf67663f14eab21">beast::detail::CopyConst&lt; T const, U &gt;::type</a></div><div class="ttdeci">typename std::remove_const&lt; U &gt;::type const type</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00048">List.h:48</a></div></div>
<div class="ttc" id="aclassbeast_1_1detail_1_1ListIterator_html_a8e4fbd86b52b6d6521a6fa8675c450c1"><div class="ttname"><a href="classbeast_1_1detail_1_1ListIterator.html#a8e4fbd86b52b6d6521a6fa8675c450c1">beast::detail::ListIterator::operator!=</a></div><div class="ttdeci">bool operator!=(ListIterator&lt; M &gt; const &amp;other) const noexcept</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00102">List.h:102</a></div></div>
<div class="ttc" id="aclassbeast_1_1detail_1_1ListIterator_html_aedc71c60af5cc80dbc9ffee164437b83"><div class="ttname"><a href="classbeast_1_1detail_1_1ListIterator.html#aedc71c60af5cc80dbc9ffee164437b83">beast::detail::ListIterator::operator++</a></div><div class="ttdeci">ListIterator &amp; operator++() noexcept</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00120">List.h:120</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a2bbebdc9a9c283bacdb32975326279b6"><div class="ttname"><a href="classbeast_1_1List.html#a2bbebdc9a9c283bacdb32975326279b6">beast::List::insert</a></div><div class="ttdeci">void insert(iterator pos, List &amp;other) noexcept</div><div class="ttdoc">Insert another list into this one.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00451">List.h:451</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a0506a9fc63652b7d9119265fbf5ffb76"><div class="ttname"><a href="classbeast_1_1List.html#a0506a9fc63652b7d9119265fbf5ffb76">beast::List::m_head</a></div><div class="ttdeci">Node m_head</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00592">List.h:592</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_ad3ec5127cf5bd832781d3f827f7194ad"><div class="ttname"><a href="classbeast_1_1List.html#ad3ec5127cf5bd832781d3f827f7194ad">beast::List::cbegin</a></div><div class="ttdeci">const_iterator cbegin() const noexcept</div><div class="ttdoc">Obtain a const iterator to the beginning of the list.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00384">List.h:384</a></div></div>
<div class="ttc" id="aclassbeast_1_1detail_1_1ListIterator_html_ad455e1e32c81352fe48693b83f2f263b"><div class="ttname"><a href="classbeast_1_1detail_1_1ListIterator.html#ad455e1e32c81352fe48693b83f2f263b">beast::detail::ListIterator::operator--</a></div><div class="ttdeci">ListIterator &amp; operator--() noexcept</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00135">List.h:135</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a2d3c19a2ea6aba941902adcc0c1a5a73"><div class="ttname"><a href="classbeast_1_1List.html#a2d3c19a2ea6aba941902adcc0c1a5a73">beast::List::begin</a></div><div class="ttdeci">iterator begin() noexcept</div><div class="ttdoc">Obtain an iterator to the beginning of the list.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00366">List.h:366</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a52ed927dfed7415df459b6cc11572fdf"><div class="ttname"><a href="classbeast_1_1List.html#a52ed927dfed7415df459b6cc11572fdf">beast::List::insert</a></div><div class="ttdeci">iterator insert(iterator pos, T &amp;element) noexcept</div><div class="ttdoc">Insert an element.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00434">List.h:434</a></div></div>
<div class="ttc" id="aclassbeast_1_1detail_1_1ListIterator_html_a9b3afe207729b5d2c247b8707d873540"><div class="ttname"><a href="classbeast_1_1detail_1_1ListIterator.html#a9b3afe207729b5d2c247b8707d873540">beast::detail::ListIterator::m_node</a></div><div class="ttdeci">N * m_node</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00168">List.h:168</a></div></div>
<div class="ttc" id="aclassbeast_1_1detail_1_1ListIterator_html_a7286eefe870946913847d82fb21e48a8"><div class="ttname"><a href="classbeast_1_1detail_1_1ListIterator.html#a7286eefe870946913847d82fb21e48a8">beast::detail::ListIterator::operator--</a></div><div class="ttdeci">ListIterator operator--(int) noexcept</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00142">List.h:142</a></div></div>
<div class="ttc" id="aclassbeast_1_1detail_1_1ListIterator_html_a587cb214eeb027ca6890287594130662"><div class="ttname"><a href="classbeast_1_1detail_1_1ListIterator.html#a587cb214eeb027ca6890287594130662">beast::detail::ListIterator::operator++</a></div><div class="ttdeci">ListIterator operator++(int) noexcept</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00127">List.h:127</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a9045c6eaf5485a33cc001e8845c47585"><div class="ttname"><a href="classbeast_1_1List.html#a9045c6eaf5485a33cc001e8845c47585">beast::List&lt; beast::insight::detail::StatsDMetricBase &gt;::Node</a></div><div class="ttdeci">typename detail::ListNode&lt; beast::insight::detail::StatsDMetricBase, void &gt; Node</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00281">List.h:281</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_ae24e82711cc324fcee31d6765fb2f212"><div class="ttname"><a href="classbeast_1_1List.html#ae24e82711cc324fcee31d6765fb2f212">beast::List::element_from</a></div><div class="ttdeci">reference element_from(Node *node) noexcept</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00579">List.h:579</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_affdad43179d987f5dee90f8f48823ba9"><div class="ttname"><a href="classbeast_1_1List.html#affdad43179d987f5dee90f8f48823ba9">beast::List::m_size</a></div><div class="ttdeci">size_type m_size</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00591">List.h:591</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_ab94ffa10aa70bd3ec3cdec8351b48cd5"><div class="ttname"><a href="classbeast_1_1List.html#ab94ffa10aa70bd3ec3cdec8351b48cd5">beast::List::pop_front</a></div><div class="ttdeci">T &amp; pop_front() noexcept</div><div class="ttdoc">Remove the element at the beginning of the list.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00496">List.h:496</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a6a33ff030ff738d993ba09546b0e6610"><div class="ttname"><a href="classbeast_1_1List.html#a6a33ff030ff738d993ba09546b0e6610">beast::List::element_from</a></div><div class="ttdeci">const_reference element_from(Node const *node) const noexcept</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00585">List.h:585</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_ac012e92c2402a063425bbaba5f333318"><div class="ttname"><a href="classbeast_1_1List.html#ac012e92c2402a063425bbaba5f333318">beast::List&lt; beast::insight::detail::StatsDMetricBase &gt;::const_reference</a></div><div class="ttdeci">value_type const &amp; const_reference</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00287">List.h:287</a></div></div>
<div class="ttc" id="aclassbeast_1_1detail_1_1ListNode_html"><div class="ttname"><a href="classbeast_1_1detail_1_1ListNode.html">beast::detail::ListNode</a></div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00057">List.h:57</a></div></div>
<div class="ttc" id="astructbeast_1_1detail_1_1CopyConst_html_af95b74f0ab31acf6c286cc619ae54fcf"><div class="ttname"><a href="structbeast_1_1detail_1_1CopyConst.html#af95b74f0ab31acf6c286cc619ae54fcf">beast::detail::CopyConst::CopyConst</a></div><div class="ttdeci">CopyConst()=default</div></div>
<div class="ttc" id="aclassbeast_1_1detail_1_1ListNode_html_a0191120d6a1323110ea03739320bc39b"><div class="ttname"><a href="classbeast_1_1detail_1_1ListNode.html#a0191120d6a1323110ea03739320bc39b">beast::detail::ListNode::m_next</a></div><div class="ttdeci">ListNode * m_next</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00067">List.h:67</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a1d46509c54405b5fe4558ff8f00db5f3"><div class="ttname"><a href="classbeast_1_1List.html#a1d46509c54405b5fe4558ff8f00db5f3">beast::List::front</a></div><div class="ttdeci">reference front() noexcept</div><div class="ttdoc">Obtain a reference to the first element.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00327">List.h:327</a></div></div>
<div class="ttc" id="aclassbeast_1_1detail_1_1ListIterator_html_a453808ddf6d8dfb1ab71d1e89640b1b5"><div class="ttname"><a href="classbeast_1_1detail_1_1ListIterator.html#a453808ddf6d8dfb1ab71d1e89640b1b5">beast::detail::ListIterator::pointer</a></div><div class="ttdeci">value_type * pointer</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00080">List.h:80</a></div></div>
<div class="ttc" id="aclassbeast_1_1detail_1_1ListIterator_html_a667aabc36909bb3e8cdc07cc618bfedd"><div class="ttname"><a href="classbeast_1_1detail_1_1ListIterator.html#a667aabc36909bb3e8cdc07cc618bfedd">beast::detail::ListIterator::dereference</a></div><div class="ttdeci">reference dereference() const noexcept</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00151">List.h:151</a></div></div>
<div class="ttc" id="aclassbeast_1_1detail_1_1ListIterator_html_a97cf97fb61f5d2b601e5410998c368c2"><div class="ttname"><a href="classbeast_1_1detail_1_1ListIterator.html#a97cf97fb61f5d2b601e5410998c368c2">beast::detail::ListIterator::operator==</a></div><div class="ttdeci">bool operator==(ListIterator&lt; M &gt; const &amp;other) const noexcept</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00095">List.h:95</a></div></div>
<div class="ttc" id="aclassbeast_1_1detail_1_1ListIterator_html_a49dc00d0b5440e88a91ca422d54f8916"><div class="ttname"><a href="classbeast_1_1detail_1_1ListIterator.html#a49dc00d0b5440e88a91ca422d54f8916">beast::detail::ListIterator::operator*</a></div><div class="ttdeci">reference operator*() const noexcept</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00108">List.h:108</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a98afd9f3adea12843d20d2a7cb585095"><div class="ttname"><a href="classbeast_1_1List.html#a98afd9f3adea12843d20d2a7cb585095">beast::List::swap</a></div><div class="ttdeci">void swap(List &amp;other) noexcept</div><div class="ttdoc">Swap contents with another list.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00527">List.h:527</a></div></div>
<div class="ttc" id="aptrdiff_t_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/types/ptrdiff_t.html">std::ptrdiff_t</a></div></div>
<div class="ttc" id="aremove_cv_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/types/remove_cv.html">std::remove_const</a></div></div>
<div class="ttc" id="astructbeast_1_1detail_1_1CopyConst_html"><div class="ttname"><a href="structbeast_1_1detail_1_1CopyConst.html">beast::detail::CopyConst</a></div><div class="ttdoc">Copy const attribute from T to U if present.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00036">List.h:36</a></div></div>
<div class="ttc" id="asize_t_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/types/size_t.html">std::size_t</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a5e42fc88625071226c400a287a25467a"><div class="ttname"><a href="classbeast_1_1List.html#a5e42fc88625071226c400a287a25467a">beast::List::append</a></div><div class="ttdeci">iterator append(List &amp;list) noexcept</div><div class="ttdoc">Append another list at the end of this list.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00550">List.h:550</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a1094a4aec90a0b2dac32e61fdc730b20"><div class="ttname"><a href="classbeast_1_1List.html#a1094a4aec90a0b2dac32e61fdc730b20">beast::List::begin</a></div><div class="ttdeci">const_iterator begin() const noexcept</div><div class="ttdoc">Obtain a const iterator to the beginning of the list.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00375">List.h:375</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_aeed218d106b4ab72b2290ac953f97405"><div class="ttname"><a href="classbeast_1_1List.html#aeed218d106b4ab72b2290ac953f97405">beast::List::erase</a></div><div class="ttdeci">iterator erase(iterator pos) noexcept</div><div class="ttdoc">Remove an element.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00471">List.h:471</a></div></div>
<div class="ttc" id="aclassbeast_1_1detail_1_1ListNode_html_a4b3d0268a6854521f59b4ba2de7fc76c"><div class="ttname"><a href="classbeast_1_1detail_1_1ListNode.html#a4b3d0268a6854521f59b4ba2de7fc76c">beast::detail::ListNode::m_prev</a></div><div class="ttdeci">ListNode * m_prev</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00068">List.h:68</a></div></div>
<div class="ttc" id="aclassbeast_1_1detail_1_1ListIterator_html_a96aa8c69a218f44a2c3ddffd3a3f26ad"><div class="ttname"><a href="classbeast_1_1detail_1_1ListIterator.html#a96aa8c69a218f44a2c3ddffd3a3f26ad">beast::detail::ListIterator::operator-&gt;</a></div><div class="ttdeci">pointer operator-&gt;() const noexcept</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00114">List.h:114</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a8c37d92977108ab93b57941fcb52e050"><div class="ttname"><a href="classbeast_1_1List.html#a8c37d92977108ab93b57941fcb52e050">beast::List::end</a></div><div class="ttdeci">const_iterator end() const noexcept</div><div class="ttdoc">Obtain a const iterator to the end of the list.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00402">List.h:402</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a0b9665072db8d42d2c6f2b386435739e"><div class="ttname"><a href="classbeast_1_1List.html#a0b9665072db8d42d2c6f2b386435739e">beast::List::m_tail</a></div><div class="ttdeci">Node m_tail</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00593">List.h:593</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a3d41b13fa74a92c92fe2a1cc598e1bae"><div class="ttname"><a href="classbeast_1_1List.html#a3d41b13fa74a92c92fe2a1cc598e1bae">beast::List::back</a></div><div class="ttdeci">const_reference back() const noexcept</div><div class="ttdoc">Obtain a const reference to the last element.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00357">List.h:357</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_ad90fd05ef9baf19fd67880f51276d7d9"><div class="ttname"><a href="classbeast_1_1List.html#ad90fd05ef9baf19fd67880f51276d7d9">beast::List::List</a></div><div class="ttdeci">List()</div><div class="ttdoc">Create an empty list.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00295">List.h:295</a></div></div>
<div class="ttc" id="atype_traits_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/header/type_traits.html">type_traits</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a0ced815cdedb1b2323cd9adf97cca504"><div class="ttname"><a href="classbeast_1_1List.html#a0ced815cdedb1b2323cd9adf97cca504">beast::List::push_back</a></div><div class="ttdeci">iterator push_back(T &amp;element) noexcept</div><div class="ttdoc">Append an element at the end of the list.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00508">List.h:508</a></div></div>
<div class="ttc" id="aclassbeast_1_1detail_1_1ListIterator_html_a5b98e0cd0c8a4173d59640a481b44a83"><div class="ttname"><a href="classbeast_1_1detail_1_1ListIterator.html#a5b98e0cd0c8a4173d59640a481b44a83">beast::detail::ListIterator::value_type</a></div><div class="ttdeci">typename beast::detail::CopyConst&lt; N, typename N::value_type &gt;::type value_type</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00079">List.h:79</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a03164255795b93fe4fb59ec168e80d5d"><div class="ttname"><a href="classbeast_1_1List.html#a03164255795b93fe4fb59ec168e80d5d">beast::List&lt; beast::insight::detail::StatsDMetricBase &gt;::const_pointer</a></div><div class="ttdeci">value_type const * const_pointer</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00286">List.h:286</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html"><div class="ttname"><a href="classbeast_1_1List.html">beast::List</a></div><div class="ttdoc">Intrusive doubly linked list.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00029">List.h:29</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a4a1ef6ded08491b40f11ff24f9ca7344"><div class="ttname"><a href="classbeast_1_1List.html#a4a1ef6ded08491b40f11ff24f9ca7344">beast::List::pop_back</a></div><div class="ttdeci">T &amp; pop_back() noexcept</div><div class="ttdoc">Remove the element at the end of the list.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00518">List.h:518</a></div></div>
<div class="ttc" id="aclassbeast_1_1PropertyStream_1_1Item_html"><div class="ttname"><a href="classbeast_1_1PropertyStream_1_1Item.html">beast::PropertyStream::Item</a></div><div class="ttdef"><b>Definition:</b> <a href="PropertyStream_8h_source.html#l00182">PropertyStream.h:182</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_a84edbf644909e6a377e432785da86a14"><div class="ttname"><a href="classbeast_1_1List.html#a84edbf644909e6a377e432785da86a14">beast::List::back</a></div><div class="ttdeci">reference back() noexcept</div><div class="ttdoc">Obtain a reference to the last element.</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00347">List.h:347</a></div></div>
<div class="ttc" id="aclassbeast_1_1List_html_aa1d0b5ae5080f6e15ef8b17a4278b9b3"><div class="ttname"><a href="classbeast_1_1List.html#aa1d0b5ae5080f6e15ef8b17a4278b9b3">beast::List::reference</a></div><div class="ttdeci">value_type &amp; reference</div><div class="ttdef"><b>Definition:</b> <a href="List_8h_source.html#l00285">List.h:285</a></div></div>
<div class="ttc" id="anamespacebeast_html"><div class="ttname"><a href="namespacebeast.html">beast</a></div><div class="ttdef"><b>Definition:</b> <a href="base__uint_8h_source.html#l00585">base_uint.h:585</a></div></div>
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.17
</small></address>
</body>
</html>