Skip to content

Commit

Permalink
updates to some iterators to add --operator & test cases
Browse files Browse the repository at this point in the history
  • Loading branch information
spirosmaggioros committed Feb 6, 2024
1 parent 73f40b5 commit 6137f40
Show file tree
Hide file tree
Showing 45 changed files with 1,125 additions and 118 deletions.
37 changes: 28 additions & 9 deletions docs/html/avl__tree_8h_source.html
Original file line number Diff line number Diff line change
Expand Up @@ -419,24 +419,43 @@
<div class="line"><a id="l00399" name="l00399"></a><span class="lineno"> 399</span> }</div>
</div>
<div class="line"><a id="l00400" name="l00400"></a><span class="lineno"> 400</span> </div>
<div class="foldopen" id="foldopen00409" data-start="{" data-end="}">
<div class="line"><a id="l00409" name="l00409"></a><span class="lineno"><a class="line" href="classavl__tree_1_1_iterator.html#a0fd4ebd930bd4fe986438e203685d2fd"> 409</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classavl__tree_1_1_iterator.html#a0fd4ebd930bd4fe986438e203685d2fd">operator!=</a>(<span class="keyword">const</span> <a class="code hl_class" href="classavl__tree_1_1_iterator.html">Iterator</a> &amp;it) {</div>
<div class="line"><a id="l00410" name="l00410"></a><span class="lineno"> 410</span> <span class="keywordflow">return</span> index != it.index &amp;&amp; elements[index] != it.elements[it.index];</div>
<div class="foldopen" id="foldopen00406" data-start="{" data-end="}">
<div class="line"><a id="l00406" name="l00406"></a><span class="lineno"><a class="line" href="classavl__tree_1_1_iterator.html#a65b932177f6fef4039696b434c239848"> 406</a></span> <a class="code hl_class" href="classavl__tree_1_1_iterator.html">Iterator</a> &amp;<a class="code hl_function" href="classavl__tree_1_1_iterator.html#a65b932177f6fef4039696b434c239848">operator--</a>() {</div>
<div class="line"><a id="l00407" name="l00407"></a><span class="lineno"> 407</span> <span class="keywordflow">if</span> (this-&gt;index &gt;= 0) {</div>
<div class="line"><a id="l00408" name="l00408"></a><span class="lineno"> 408</span> this-&gt;index--;</div>
<div class="line"><a id="l00409" name="l00409"></a><span class="lineno"> 409</span> }</div>
<div class="line"><a id="l00410" name="l00410"></a><span class="lineno"> 410</span> <span class="keywordflow">return</span> *(<span class="keyword">this</span>);</div>
<div class="line"><a id="l00411" name="l00411"></a><span class="lineno"> 411</span> }</div>
</div>
<div class="line"><a id="l00412" name="l00412"></a><span class="lineno"> 412</span> </div>
<div class="line"><a id="l00418" name="l00418"></a><span class="lineno"><a class="line" href="classavl__tree_1_1_iterator.html#aa638b723e1ef408bf1406d6c9db06dd8"> 418</a></span> T <a class="code hl_function" href="classavl__tree_1_1_iterator.html#aa638b723e1ef408bf1406d6c9db06dd8">operator*</a>() { <span class="keywordflow">return</span> elements[index]; }</div>
<div class="line"><a id="l00419" name="l00419"></a><span class="lineno"> 419</span>};</div>
<div class="foldopen" id="foldopen00418" data-start="{" data-end="}">
<div class="line"><a id="l00418" name="l00418"></a><span class="lineno"><a class="line" href="classavl__tree_1_1_iterator.html#afa6a01a6f7a1cf8186fde6f4779f53c0"> 418</a></span> <a class="code hl_class" href="classavl__tree_1_1_iterator.html">Iterator</a> <a class="code hl_function" href="classavl__tree_1_1_iterator.html#afa6a01a6f7a1cf8186fde6f4779f53c0">operator--</a>(<span class="keywordtype">int</span>) {</div>
<div class="line"><a id="l00419" name="l00419"></a><span class="lineno"> 419</span> <a class="code hl_class" href="classavl__tree_1_1_iterator.html">Iterator</a> it = *<span class="keyword">this</span>;</div>
<div class="line"><a id="l00420" name="l00420"></a><span class="lineno"> 420</span> --*(<span class="keyword">this</span>);</div>
<div class="line"><a id="l00421" name="l00421"></a><span class="lineno"> 421</span> <span class="keywordflow">return</span> it;</div>
<div class="line"><a id="l00422" name="l00422"></a><span class="lineno"> 422</span> }</div>
</div>
<div class="line"><a id="l00420" name="l00420"></a><span class="lineno"> 420</span> </div>
<div class="line"><a id="l00421" name="l00421"></a><span class="lineno"> 421</span><span class="preprocessor">#endif</span></div>
<div class="line"><a id="l00423" name="l00423"></a><span class="lineno"> 423</span> </div>
<div class="foldopen" id="foldopen00432" data-start="{" data-end="}">
<div class="line"><a id="l00432" name="l00432"></a><span class="lineno"><a class="line" href="classavl__tree_1_1_iterator.html#a0fd4ebd930bd4fe986438e203685d2fd"> 432</a></span> <span class="keywordtype">bool</span> <a class="code hl_function" href="classavl__tree_1_1_iterator.html#a0fd4ebd930bd4fe986438e203685d2fd">operator!=</a>(<span class="keyword">const</span> <a class="code hl_class" href="classavl__tree_1_1_iterator.html">Iterator</a> &amp;it) {</div>
<div class="line"><a id="l00433" name="l00433"></a><span class="lineno"> 433</span> <span class="keywordflow">return</span> index != it.index &amp;&amp; elements[index] != it.elements[it.index];</div>
<div class="line"><a id="l00434" name="l00434"></a><span class="lineno"> 434</span> }</div>
</div>
<div class="line"><a id="l00435" name="l00435"></a><span class="lineno"> 435</span> </div>
<div class="line"><a id="l00441" name="l00441"></a><span class="lineno"><a class="line" href="classavl__tree_1_1_iterator.html#aa638b723e1ef408bf1406d6c9db06dd8"> 441</a></span> T <a class="code hl_function" href="classavl__tree_1_1_iterator.html#aa638b723e1ef408bf1406d6c9db06dd8">operator*</a>() { <span class="keywordflow">return</span> elements[index]; }</div>
<div class="line"><a id="l00442" name="l00442"></a><span class="lineno"> 442</span>};</div>
</div>
<div class="line"><a id="l00443" name="l00443"></a><span class="lineno"> 443</span> </div>
<div class="line"><a id="l00444" name="l00444"></a><span class="lineno"> 444</span><span class="preprocessor">#endif</span></div>
<div class="ttc" id="aclassavl__tree_1_1_iterator_html"><div class="ttname"><a href="classavl__tree_1_1_iterator.html">avl_tree::Iterator</a></div><div class="ttdoc">Iterator class.</div><div class="ttdef"><b>Definition</b> avl_tree.h:353</div></div>
<div class="ttc" id="aclassavl__tree_1_1_iterator_html_a0ba2c42320c63a8379610c51c3c5a600"><div class="ttname"><a href="classavl__tree_1_1_iterator.html#a0ba2c42320c63a8379610c51c3c5a600">avl_tree::Iterator::Iterator</a></div><div class="ttdeci">Iterator(const int64_t &amp;index, std::vector&lt; T &gt; &amp;els) noexcept</div><div class="ttdoc">Construct a new Iterator object.</div><div class="ttdef"><b>Definition</b> avl_tree.h:364</div></div>
<div class="ttc" id="aclassavl__tree_1_1_iterator_html_a0fd4ebd930bd4fe986438e203685d2fd"><div class="ttname"><a href="classavl__tree_1_1_iterator.html#a0fd4ebd930bd4fe986438e203685d2fd">avl_tree::Iterator::operator!=</a></div><div class="ttdeci">bool operator!=(const Iterator &amp;it)</div><div class="ttdoc">operator != for type Iterator</div><div class="ttdef"><b>Definition</b> avl_tree.h:409</div></div>
<div class="ttc" id="aclassavl__tree_1_1_iterator_html_a0fd4ebd930bd4fe986438e203685d2fd"><div class="ttname"><a href="classavl__tree_1_1_iterator.html#a0fd4ebd930bd4fe986438e203685d2fd">avl_tree::Iterator::operator!=</a></div><div class="ttdeci">bool operator!=(const Iterator &amp;it)</div><div class="ttdoc">operator != for type Iterator</div><div class="ttdef"><b>Definition</b> avl_tree.h:432</div></div>
<div class="ttc" id="aclassavl__tree_1_1_iterator_html_a65b932177f6fef4039696b434c239848"><div class="ttname"><a href="classavl__tree_1_1_iterator.html#a65b932177f6fef4039696b434c239848">avl_tree::Iterator::operator--</a></div><div class="ttdeci">Iterator &amp; operator--()</div><div class="ttdoc">operator – for type Iterator</div><div class="ttdef"><b>Definition</b> avl_tree.h:406</div></div>
<div class="ttc" id="aclassavl__tree_1_1_iterator_html_a9133f7949ed717536a917db15b7fe669"><div class="ttname"><a href="classavl__tree_1_1_iterator.html#a9133f7949ed717536a917db15b7fe669">avl_tree::Iterator::operator++</a></div><div class="ttdeci">Iterator &amp; operator++()</div><div class="ttdoc">operator ++ for type Iterator</div><div class="ttdef"><b>Definition</b> avl_tree.h:383</div></div>
<div class="ttc" id="aclassavl__tree_1_1_iterator_html_aa638b723e1ef408bf1406d6c9db06dd8"><div class="ttname"><a href="classavl__tree_1_1_iterator.html#aa638b723e1ef408bf1406d6c9db06dd8">avl_tree::Iterator::operator*</a></div><div class="ttdeci">T operator*()</div><div class="ttdoc">operator * for type Iterator</div><div class="ttdef"><b>Definition</b> avl_tree.h:418</div></div>
<div class="ttc" id="aclassavl__tree_1_1_iterator_html_aa638b723e1ef408bf1406d6c9db06dd8"><div class="ttname"><a href="classavl__tree_1_1_iterator.html#aa638b723e1ef408bf1406d6c9db06dd8">avl_tree::Iterator::operator*</a></div><div class="ttdeci">T operator*()</div><div class="ttdoc">operator * for type Iterator</div><div class="ttdef"><b>Definition</b> avl_tree.h:441</div></div>
<div class="ttc" id="aclassavl__tree_1_1_iterator_html_abb7d9c7890790037299048ce39894d65"><div class="ttname"><a href="classavl__tree_1_1_iterator.html#abb7d9c7890790037299048ce39894d65">avl_tree::Iterator::operator++</a></div><div class="ttdeci">Iterator operator++(int)</div><div class="ttdoc">operator ++ for type Iterator</div><div class="ttdef"><b>Definition</b> avl_tree.h:395</div></div>
<div class="ttc" id="aclassavl__tree_1_1_iterator_html_af76d60d2edbddb06bc78ee386a624e6d"><div class="ttname"><a href="classavl__tree_1_1_iterator.html#af76d60d2edbddb06bc78ee386a624e6d">avl_tree::Iterator::operator=</a></div><div class="ttdeci">Iterator &amp; operator=(int64_t index)</div><div class="ttdoc">= operator for Iterator type</div><div class="ttdef"><b>Definition</b> avl_tree.h:373</div></div>
<div class="ttc" id="aclassavl__tree_1_1_iterator_html_afa6a01a6f7a1cf8186fde6f4779f53c0"><div class="ttname"><a href="classavl__tree_1_1_iterator.html#afa6a01a6f7a1cf8186fde6f4779f53c0">avl_tree::Iterator::operator--</a></div><div class="ttdeci">Iterator operator--(int)</div><div class="ttdoc">operator – for type Iterator</div><div class="ttdef"><b>Definition</b> avl_tree.h:418</div></div>
<div class="ttc" id="aclassavl__tree_html"><div class="ttname"><a href="classavl__tree.html">avl_tree</a></div><div class="ttdoc">Class for AVL tree.</div><div class="ttdef"><b>Definition</b> avl_tree.h:17</div></div>
<div class="ttc" id="aclassavl__tree_html_a015ac0902d879a52fd7a8940ab36ab7a"><div class="ttname"><a href="classavl__tree.html#a015ac0902d879a52fd7a8940ab36ab7a">avl_tree::end</a></div><div class="ttdeci">Iterator end()</div><div class="ttdoc">pointer that points to end</div><div class="ttdef"><b>Definition</b> avl_tree.h:101</div></div>
<div class="ttc" id="aclassavl__tree_html_a048c3bc01286503d3d540a8910551317"><div class="ttname"><a href="classavl__tree.html#a048c3bc01286503d3d540a8910551317">avl_tree::avl_tree</a></div><div class="ttdeci">avl_tree(std::vector&lt; T &gt; __elements={}) noexcept</div><div class="ttdoc">Contructor for AVL tree class.</div><div class="ttdef"><b>Definition</b> avl_tree.h:24</div></div>
Expand Down
Loading

0 comments on commit 6137f40

Please sign in to comment.