Skip to content

Commit

Permalink
Add better message for Empty collections
Browse files Browse the repository at this point in the history
  • Loading branch information
kamil-adam committed Dec 14, 2022
1 parent 8d47def commit 0043be5
Show file tree
Hide file tree
Showing 69 changed files with 115 additions and 111 deletions.
4 changes: 4 additions & 0 deletions docs/developers/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
# 📅 Revision history for HelVM Common

## 0.1.1.8 -- 2022-12-14

* Add better message for Empty collections

## 0.1.1.7 -- 2022-12-14

* Add better message for Empty collections
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,10 +39,10 @@
<span class="lineno"> 20 </span>
<span class="lineno"> 21 </span>-- | Pop
<span class="lineno"> 22 </span>discard :: (MonadSafe m , ListLike full item) =&gt; full -&gt; m full
<span class="lineno"> 23 </span><span class="decl"><span class="nottickedoff">discard l = snd &lt;$&gt; unconsSafe l</span></span>
<span class="lineno"> 23 </span><span class="decl"><span class="nottickedoff">discard l = appendError &quot;Error for discard&quot; $ snd &lt;$&gt; unconsSafe l</span></span>
<span class="lineno"> 24 </span>
<span class="lineno"> 25 </span>top :: (MonadSafe m , ListLike full item) =&gt; full -&gt; m item
<span class="lineno"> 26 </span><span class="decl"><span class="nottickedoff">top s = fst &lt;$&gt; unconsSafe s</span></span>
<span class="lineno"> 26 </span><span class="decl"><span class="nottickedoff">top s = appendError &quot;Error for top&quot; $ fst &lt;$&gt; unconsSafe s</span></span>
<span class="lineno"> 27 </span>
<span class="lineno"> 28 </span>unconsSafe :: (MonadSafe m , ListLike full item) =&gt; full -&gt; m (item , full)
<span class="lineno"> 29 </span><span class="decl"><span class="nottickedoff">unconsSafe = liftMaybeOrError &quot;Empty ListLike for unconsSafe&quot; . uncons</span></span>
Expand Down
28 changes: 14 additions & 14 deletions docs/reports/helio-test/hpc_index.html
Original file line number Diff line number Diff line change
Expand Up @@ -7,42 +7,42 @@
</style>
</head><body><table class="dashboard" width="100%" border=1>
<tr><th rowspan=2><a href="hpc_index.html">module</a></th><th colspan=3><a href="hpc_index_fun.html">Top Level Definitions</a></th><th colspan=3><a href="hpc_index_alt.html">Alternatives</a></th><th colspan=3><a href="hpc_index_exp.html">Expressions</a></th></tr><tr><th>%</th><th colspan=2>covered / total</th><th>%</th><th colspan=2>covered / total</th><th>%</th><th colspan=2>covered / total</th></tr><tr>
<td>&nbsp;&nbsp;<tt>module <a href="helio-0.1.1.7-inplace/HelVM.HelIO.Collections.MapList.hs.html">helio-0.1.1.7-inplace/HelVM.HelIO.Collections.MapList</a></tt></td>
<td>&nbsp;&nbsp;<tt>module <a href="helio-0.1.1.8-inplace/HelVM.HelIO.Collections.MapList.hs.html">helio-0.1.1.8-inplace/HelVM.HelIO.Collections.MapList</a></tt></td>
<td align="right">25%</td><td>10/39</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="25%"><tr><td height=12 class="bar"></td></tr></table></td></tr></table></td><td align="right">66%</td><td>4/6</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="66%"><tr><td height=12 class="bar"></td></tr></table></td></tr></table></td><td align="right">51%</td><td>59/115</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="51%"><tr><td height=12 class="bar"></td></tr></table></td></tr></table></td></tr>
<tr>
<td>&nbsp;&nbsp;<tt>module <a href="helio-0.1.1.7-inplace/HelVM.HelIO.Collections.SList.hs.html">helio-0.1.1.7-inplace/HelVM.HelIO.Collections.SList</a></tt></td>
<td>&nbsp;&nbsp;<tt>module <a href="helio-0.1.1.8-inplace/HelVM.HelIO.Collections.SList.hs.html">helio-0.1.1.8-inplace/HelVM.HelIO.Collections.SList</a></tt></td>
<td align="right">0%</td><td>0/92</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="invbar"></td></tr></table></td></tr></table></td><td align="right">-&nbsp;</td><td>0/0</td><td width=100>&nbsp;</td><td align="right">0%</td><td>0/161</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="invbar"></td></tr></table></td></tr></table></td></tr>
<tr>
<td>&nbsp;&nbsp;<tt>module <a href="helio-0.1.1.7-inplace/HelVM.HelIO.Containers.LLIndexSafe.hs.html">helio-0.1.1.7-inplace/HelVM.HelIO.Containers.LLIndexSafe</a></tt></td>
<td>&nbsp;&nbsp;<tt>module <a href="helio-0.1.1.8-inplace/HelVM.HelIO.Containers.LLIndexSafe.hs.html">helio-0.1.1.8-inplace/HelVM.HelIO.Containers.LLIndexSafe</a></tt></td>
<td align="right">0%</td><td>0/7</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="invbar"></td></tr></table></td></tr></table></td><td align="right">0%</td><td>0/3</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="invbar"></td></tr></table></td></tr></table></td><td align="right">0%</td><td>0/50</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="invbar"></td></tr></table></td></tr></table></td></tr>
<tr>
<td>&nbsp;&nbsp;<tt>module <a href="helio-0.1.1.7-inplace/HelVM.HelIO.Containers.LLInsertDef.hs.html">helio-0.1.1.7-inplace/HelVM.HelIO.Containers.LLInsertDef</a></tt></td>
<td>&nbsp;&nbsp;<tt>module <a href="helio-0.1.1.8-inplace/HelVM.HelIO.Containers.LLInsertDef.hs.html">helio-0.1.1.8-inplace/HelVM.HelIO.Containers.LLInsertDef</a></tt></td>
<td align="right">0%</td><td>0/4</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="invbar"></td></tr></table></td></tr></table></td><td align="right">0%</td><td>0/6</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="invbar"></td></tr></table></td></tr></table></td><td align="right">0%</td><td>0/46</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="invbar"></td></tr></table></td></tr></table></td></tr>
<tr>
<td>&nbsp;&nbsp;<tt>module <a href="helio-0.1.1.7-inplace/HelVM.HelIO.Containers.MTInsertDef.hs.html">helio-0.1.1.7-inplace/HelVM.HelIO.Containers.MTInsertDef</a></tt></td>
<td>&nbsp;&nbsp;<tt>module <a href="helio-0.1.1.8-inplace/HelVM.HelIO.Containers.MTInsertDef.hs.html">helio-0.1.1.8-inplace/HelVM.HelIO.Containers.MTInsertDef</a></tt></td>
<td align="right">0%</td><td>0/4</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="invbar"></td></tr></table></td></tr></table></td><td align="right">0%</td><td>0/6</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="invbar"></td></tr></table></td></tr></table></td><td align="right">0%</td><td>0/46</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="invbar"></td></tr></table></td></tr></table></td></tr>
<tr>
<td>&nbsp;&nbsp;<tt>module <a href="helio-0.1.1.7-inplace/HelVM.HelIO.Control.Control.hs.html">helio-0.1.1.7-inplace/HelVM.HelIO.Control.Control</a></tt></td>
<td>&nbsp;&nbsp;<tt>module <a href="helio-0.1.1.8-inplace/HelVM.HelIO.Control.Control.hs.html">helio-0.1.1.8-inplace/HelVM.HelIO.Control.Control</a></tt></td>
<td align="right">0%</td><td>0/12</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="invbar"></td></tr></table></td></tr></table></td><td align="right">0%</td><td>0/2</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="invbar"></td></tr></table></td></tr></table></td><td align="right">0%</td><td>0/42</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="invbar"></td></tr></table></td></tr></table></td></tr>
<tr>
<td>&nbsp;&nbsp;<tt>module <a href="helio-0.1.1.7-inplace/HelVM.HelIO.Control.Logger.hs.html">helio-0.1.1.7-inplace/HelVM.HelIO.Control.Logger</a></tt></td>
<td>&nbsp;&nbsp;<tt>module <a href="helio-0.1.1.8-inplace/HelVM.HelIO.Control.Logger.hs.html">helio-0.1.1.8-inplace/HelVM.HelIO.Control.Logger</a></tt></td>
<td align="right">31%</td><td>6/19</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="31%"><tr><td height=12 class="bar"></td></tr></table></td></tr></table></td><td align="right">-&nbsp;</td><td>0/0</td><td width=100>&nbsp;</td><td align="right">27%</td><td>17/61</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="27%"><tr><td height=12 class="bar"></td></tr></table></td></tr></table></td></tr>
<tr>
<td>&nbsp;&nbsp;<tt>module <a href="helio-0.1.1.7-inplace/HelVM.HelIO.Control.Message.hs.html">helio-0.1.1.7-inplace/HelVM.HelIO.Control.Message</a></tt></td>
<td>&nbsp;&nbsp;<tt>module <a href="helio-0.1.1.8-inplace/HelVM.HelIO.Control.Message.hs.html">helio-0.1.1.8-inplace/HelVM.HelIO.Control.Message</a></tt></td>
<td align="right">0%</td><td>0/5</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="invbar"></td></tr></table></td></tr></table></td><td align="right">0%</td><td>0/2</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="invbar"></td></tr></table></td></tr></table></td><td align="right">0%</td><td>0/26</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="invbar"></td></tr></table></td></tr></table></td></tr>
<tr>
<td>&nbsp;&nbsp;<tt>module <a href="helio-0.1.1.7-inplace/HelVM.HelIO.Control.Safe.hs.html">helio-0.1.1.7-inplace/HelVM.HelIO.Control.Safe</a></tt></td>
<td>&nbsp;&nbsp;<tt>module <a href="helio-0.1.1.8-inplace/HelVM.HelIO.Control.Safe.hs.html">helio-0.1.1.8-inplace/HelVM.HelIO.Control.Safe</a></tt></td>
<td align="right">0%</td><td>0/30</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="invbar"></td></tr></table></td></tr></table></td><td align="right">0%</td><td>0/4</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="invbar"></td></tr></table></td></tr></table></td><td align="right">0%</td><td>0/108</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="invbar"></td></tr></table></td></tr></table></td></tr>
<tr>
<td>&nbsp;&nbsp;<tt>module <a href="helio-0.1.1.7-inplace/HelVM.HelIO.Digit.Digits.hs.html">helio-0.1.1.7-inplace/HelVM.HelIO.Digit.Digits</a></tt></td>
<td>&nbsp;&nbsp;<tt>module <a href="helio-0.1.1.8-inplace/HelVM.HelIO.Digit.Digits.hs.html">helio-0.1.1.8-inplace/HelVM.HelIO.Digit.Digits</a></tt></td>
<td align="right">57%</td><td>4/7</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="57%"><tr><td height=12 class="bar"></td></tr></table></td></tr></table></td><td align="right">100%</td><td>2/2</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="bar"></td></tr></table></td></tr></table></td><td align="right">55%</td><td>16/29</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="55%"><tr><td height=12 class="bar"></td></tr></table></td></tr></table></td></tr>
<tr>
<td>&nbsp;&nbsp;<tt>module <a href="helio-0.1.1.7-inplace/HelVM.HelIO.Extra.hs.html">helio-0.1.1.7-inplace/HelVM.HelIO.Extra</a></tt></td>
<td>&nbsp;&nbsp;<tt>module <a href="helio-0.1.1.8-inplace/HelVM.HelIO.Extra.hs.html">helio-0.1.1.8-inplace/HelVM.HelIO.Extra</a></tt></td>
<td align="right">0%</td><td>0/16</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="invbar"></td></tr></table></td></tr></table></td><td align="right">0%</td><td>0/6</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="invbar"></td></tr></table></td></tr></table></td><td align="right">0%</td><td>0/71</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="invbar"></td></tr></table></td></tr></table></td></tr>
<tr>
<td>&nbsp;&nbsp;<tt>module <a href="helio-0.1.1.7-inplace/HelVM.HelIO.ListLikeExtra.hs.html">helio-0.1.1.7-inplace/HelVM.HelIO.ListLikeExtra</a></tt></td>
<td align="right">12%</td><td>1/8</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="12%"><tr><td height=12 class="bar"></td></tr></table></td></tr></table></td><td align="right">0%</td><td>0/2</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="invbar"></td></tr></table></td></tr></table></td><td align="right">21%</td><td>9/42</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="21%"><tr><td height=12 class="bar"></td></tr></table></td></tr></table></td></tr>
<td>&nbsp;&nbsp;<tt>module <a href="helio-0.1.1.8-inplace/HelVM.HelIO.ListLikeExtra.hs.html">helio-0.1.1.8-inplace/HelVM.HelIO.ListLikeExtra</a></tt></td>
<td align="right">12%</td><td>1/8</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="12%"><tr><td height=12 class="bar"></td></tr></table></td></tr></table></td><td align="right">0%</td><td>0/2</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="100%"><tr><td height=12 class="invbar"></td></tr></table></td></tr></table></td><td align="right">18%</td><td>9/48</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="18%"><tr><td height=12 class="bar"></td></tr></table></td></tr></table></td></tr>
<tr></tr><tr style="background: #e0e0e0">
<th align=left>&nbsp;&nbsp;Program Coverage Total</tt></th>
<td align="right">8%</td><td>21/243</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="8%"><tr><td height=12 class="bar"></td></tr></table></td></tr></table></td><td align="right">15%</td><td>6/39</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="15%"><tr><td height=12 class="bar"></td></tr></table></td></tr></table></td><td align="right">12%</td><td>101/797</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="12%"><tr><td height=12 class="bar"></td></tr></table></td></tr></table></td></tr>
<td align="right">8%</td><td>21/243</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="8%"><tr><td height=12 class="bar"></td></tr></table></td></tr></table></td><td align="right">15%</td><td>6/39</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="15%"><tr><td height=12 class="bar"></td></tr></table></td></tr></table></td><td align="right">12%</td><td>101/803</td><td width=100><table cellpadding=0 cellspacing=0 width="100" class="bar"><tr><td><table cellpadding=0 cellspacing=0 width="12%"><tr><td height=12 class="bar"></td></tr></table></td></tr></table></td></tr>
</table></body></html>
Loading

0 comments on commit 0043be5

Please sign in to comment.