-
Notifications
You must be signed in to change notification settings - Fork 0
/
Eta-Classes-Foldable.html
49 lines (49 loc) · 85.6 KB
/
Eta-Classes-Foldable.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://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/html; charset=UTF-8" /><title>Eta.Classes.Foldable</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
window.onload = function () {pageLoad();setSynopsis("mini_Eta-Classes-Foldable.html");};
//]]>
</script></head><body class="no-frame"><div id="package-header"><ul class="links" id="page-menu"><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption empty"> </p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>Safe</td></tr></table><p class="caption">Eta.Classes.Foldable</p></div><div id="synopsis"><p id="control.syn" class="caption expander" onclick="toggleSection('syn')">Synopsis</p><ul id="section.syn" class="hide" onclick="toggleSection('syn')"><li class="src short"><span class="keyword">class</span> <a href="#t:Foldable">Foldable</a> t <span class="keyword">where</span><ul class="subs"></ul></li><li class="src short"><a href="#v:foldRight">foldRight</a> :: <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => (a -> b -> b) -> b -> f a -> b</li><li class="src short"><a href="#v:foldLeft">foldLeft</a> :: <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => (b -> a -> b) -> b -> f a -> b</li><li class="src short"><a href="#v:strictFoldRight">strictFoldRight</a> :: <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => (a -> b -> b) -> b -> f a -> b</li><li class="src short"><a href="#v:strictFoldLeft">strictFoldLeft</a> :: <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => (b -> a -> b) -> b -> f a -> b</li><li class="src short"><a href="#v:monadicFoldRight">monadicFoldRight</a> :: (<a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f, <a href="Eta-Classes-Monad.html#t:Monad">Monad</a> m) => (a -> b -> m b) -> b -> f a -> m b</li><li class="src short"><a href="#v:monadicFoldLeft">monadicFoldLeft</a> :: (<a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f, <a href="Eta-Classes-Monad.html#t:Monad">Monad</a> m) => (b -> a -> m b) -> b -> f a -> m b</li><li class="src short"><a href="#v:toList">toList</a> :: <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => f a -> [a]</li><li class="src short"><a href="#v:isEmpty">isEmpty</a> :: <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => f a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:length">length</a> :: <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => f a -> <a href="Eta-Types.html#t:Int">Int</a></li><li class="src short"><a href="#v:isElementOf">isElementOf</a> :: (<a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a, <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f) => a -> f a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:maximum">maximum</a> :: (<a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a, <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f) => f a -> <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> a</li><li class="src short"><a href="#v:maximumBy">maximumBy</a> :: <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => (a -> a -> <a href="Eta-Classes-Ord.html#t:Ordering">Ordering</a>) -> f a -> <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> a</li><li class="src short"><a href="#v:unsafeMaximum">unsafeMaximum</a> :: (<a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a, <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f) => f a -> a</li><li class="src short"><a href="#v:minimum">minimum</a> :: (<a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a, <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f) => f a -> <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> a</li><li class="src short"><a href="#v:minimumBy">minimumBy</a> :: <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => (a -> a -> <a href="Eta-Classes-Ord.html#t:Ordering">Ordering</a>) -> f a -> <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> a</li><li class="src short"><a href="#v:unsafeMinimum">unsafeMinimum</a> :: (<a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a, <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f) => f a -> a</li><li class="src short"><a href="#v:sum">sum</a> :: (<a href="Eta-Classes-Num.html#t:Num">Num</a> a, <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f) => f a -> a</li><li class="src short"><a href="#v:product">product</a> :: (<a href="Eta-Classes-Num.html#t:Num">Num</a> a, <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f) => f a -> a</li><li class="src short"><a href="#v:findBy">findBy</a> :: <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => (a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a>) -> f a -> <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> a</li><li class="src short"><a href="#v:any">any</a> :: <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => (a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a>) -> f a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:all">all</a> :: <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => (a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a>) -> f a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:discardTraverse">discardTraverse</a> :: (<a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f, <a href="Eta-Classes-Applicative.html#t:Applicative">Applicative</a> m) => (a -> m b) -> f a -> m ()</li><li class="src short"><a href="#v:foreach">foreach</a> :: (<a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f, <a href="Eta-Classes-Applicative.html#t:Applicative">Applicative</a> m) => f a -> (a -> m b) -> m ()</li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><span class="keyword">class</span> <a id="t:Foldable" class="def">Foldable</a> t <span class="keyword">where</span> <a href="#t:Foldable" class="selflink">#</a></p><div class="subs minimal"><p class="caption">Minimal complete definition</p><p class="src"><a href="Eta-Classes-Foldable.html#v:foldMap">foldMap</a> | <a href="Eta-Classes-Foldable.html#v:foldr">foldr</a></p></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a id="v:foldMap" class="def">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> t a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a id="v:foldr" class="def">foldr</a> :: (a -> b -> b) -> b -> t a -> b <a href="#v:foldr" class="selflink">#</a></p></div><div class="subs instances"><p id="control.i:Foldable" class="caption collapser" onclick="toggleSection('i:Foldable')">Instances</p><div id="section.i:Foldable" class="show"><table><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:1" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:1')"></span> <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> []</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:1" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => [m] -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> [a] -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> [a] -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> [a] -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> [a] -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> [a] -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> [a] -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> [a] -> a</p><p class="src"><a href="#v:toList">toList</a> :: [a] -> [a]</p><p class="src"><a href="#v:null">null</a> :: [a] -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: [a] -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> [a] -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => [a] -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => [a] -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => [a] -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => [a] -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:2" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:2')"></span> <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a></span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:2" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> m -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> a -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> a -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> a -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> a -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> a -> a</p><p class="src"><a href="#v:toList">toList</a> :: <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> a -> [a]</p><p class="src"><a href="#v:null">null</a> :: <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> a -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> a -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> a -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> a -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> a -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:3" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:3')"></span> <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> V1</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:3" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => V1 m -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> V1 a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> V1 a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> V1 a -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> V1 a -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> V1 a -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> V1 a -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> V1 a -> a</p><p class="src"><a href="#v:toList">toList</a> :: V1 a -> [a]</p><p class="src"><a href="#v:null">null</a> :: V1 a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: V1 a -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> V1 a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => V1 a -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => V1 a -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => V1 a -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => V1 a -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:4" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:4')"></span> <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> U1</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:4" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => U1 m -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> U1 a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> U1 a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> U1 a -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> U1 a -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> U1 a -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> U1 a -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> U1 a -> a</p><p class="src"><a href="#v:toList">toList</a> :: U1 a -> [a]</p><p class="src"><a href="#v:null">null</a> :: U1 a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: U1 a -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> U1 a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => U1 a -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => U1 a -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => U1 a -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => U1 a -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:5" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:5')"></span> <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> Par1</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:5" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => Par1 m -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> Par1 a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> Par1 a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> Par1 a -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> Par1 a -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> Par1 a -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> Par1 a -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> Par1 a -> a</p><p class="src"><a href="#v:toList">toList</a> :: Par1 a -> [a]</p><p class="src"><a href="#v:null">null</a> :: Par1 a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: Par1 a -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> Par1 a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => Par1 a -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => Par1 a -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => Par1 a -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => Par1 a -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:6" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:6')"></span> <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> Sum</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:6" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => Sum m -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> Sum a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> Sum a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> Sum a -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> Sum a -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> Sum a -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> Sum a -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> Sum a -> a</p><p class="src"><a href="#v:toList">toList</a> :: Sum a -> [a]</p><p class="src"><a href="#v:null">null</a> :: Sum a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: Sum a -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> Sum a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => Sum a -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => Sum a -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => Sum a -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => Sum a -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:7" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:7')"></span> <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> Product</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:7" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => Product m -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> Product a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> Product a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> Product a -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> Product a -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> Product a -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> Product a -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> Product a -> a</p><p class="src"><a href="#v:toList">toList</a> :: Product a -> [a]</p><p class="src"><a href="#v:null">null</a> :: Product a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: Product a -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> Product a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => Product a -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => Product a -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => Product a -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => Product a -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:8" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:8')"></span> <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> Last</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:8" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => Last m -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> Last a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> Last a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> Last a -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> Last a -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> Last a -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> Last a -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> Last a -> a</p><p class="src"><a href="#v:toList">toList</a> :: Last a -> [a]</p><p class="src"><a href="#v:null">null</a> :: Last a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: Last a -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> Last a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => Last a -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => Last a -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => Last a -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => Last a -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:9" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:9')"></span> <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> First</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:9" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => First m -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> First a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> First a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> First a -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> First a -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> First a -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> First a -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> First a -> a</p><p class="src"><a href="#v:toList">toList</a> :: First a -> [a]</p><p class="src"><a href="#v:null">null</a> :: First a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: First a -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> First a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => First a -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => First a -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => First a -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => First a -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:10" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:10')"></span> <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> Dual</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:10" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => Dual m -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> Dual a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> Dual a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> Dual a -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> Dual a -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> Dual a -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> Dual a -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> Dual a -> a</p><p class="src"><a href="#v:toList">toList</a> :: Dual a -> [a]</p><p class="src"><a href="#v:null">null</a> :: Dual a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: Dual a -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> Dual a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => Dual a -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => Dual a -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => Dual a -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => Dual a -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:11" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:11')"></span> <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> ZipList</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:11" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => ZipList m -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> ZipList a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> ZipList a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> ZipList a -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> ZipList a -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> ZipList a -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> ZipList a -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> ZipList a -> a</p><p class="src"><a href="#v:toList">toList</a> :: ZipList a -> [a]</p><p class="src"><a href="#v:null">null</a> :: ZipList a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: ZipList a -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> ZipList a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => ZipList a -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => ZipList a -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => ZipList a -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => ZipList a -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:12" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:12')"></span> <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> (<a href="Eta-Types-Either.html#t:Either">Either</a> a)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:12" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => <a href="Eta-Types-Either.html#t:Either">Either</a> a m -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> <a href="Eta-Types-Either.html#t:Either">Either</a> a a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> <a href="Eta-Types-Either.html#t:Either">Either</a> a a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> <a href="Eta-Types-Either.html#t:Either">Either</a> a a -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> <a href="Eta-Types-Either.html#t:Either">Either</a> a a -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> <a href="Eta-Types-Either.html#t:Either">Either</a> a a -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> <a href="Eta-Types-Either.html#t:Either">Either</a> a a -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> <a href="Eta-Types-Either.html#t:Either">Either</a> a a -> a</p><p class="src"><a href="#v:toList">toList</a> :: <a href="Eta-Types-Either.html#t:Either">Either</a> a a -> [a]</p><p class="src"><a href="#v:null">null</a> :: <a href="Eta-Types-Either.html#t:Either">Either</a> a a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: <a href="Eta-Types-Either.html#t:Either">Either</a> a a -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> <a href="Eta-Types-Either.html#t:Either">Either</a> a a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => <a href="Eta-Types-Either.html#t:Either">Either</a> a a -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => <a href="Eta-Types-Either.html#t:Either">Either</a> a a -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => <a href="Eta-Types-Either.html#t:Either">Either</a> a a -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => <a href="Eta-Types-Either.html#t:Either">Either</a> a a -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:13" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:13')"></span> <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> (Rec1 f)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:13" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => Rec1 f m -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> Rec1 f a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> Rec1 f a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> Rec1 f a -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> Rec1 f a -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> Rec1 f a -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> Rec1 f a -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> Rec1 f a -> a</p><p class="src"><a href="#v:toList">toList</a> :: Rec1 f a -> [a]</p><p class="src"><a href="#v:null">null</a> :: Rec1 f a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: Rec1 f a -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> Rec1 f a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => Rec1 f a -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => Rec1 f a -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => Rec1 f a -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => Rec1 f a -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:14" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:14')"></span> <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> (URec <a href="Eta-Types-Char.html#t:Char">Char</a>)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:14" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => URec <a href="Eta-Types-Char.html#t:Char">Char</a> m -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> URec <a href="Eta-Types-Char.html#t:Char">Char</a> a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> URec <a href="Eta-Types-Char.html#t:Char">Char</a> a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> URec <a href="Eta-Types-Char.html#t:Char">Char</a> a -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> URec <a href="Eta-Types-Char.html#t:Char">Char</a> a -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> URec <a href="Eta-Types-Char.html#t:Char">Char</a> a -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> URec <a href="Eta-Types-Char.html#t:Char">Char</a> a -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> URec <a href="Eta-Types-Char.html#t:Char">Char</a> a -> a</p><p class="src"><a href="#v:toList">toList</a> :: URec <a href="Eta-Types-Char.html#t:Char">Char</a> a -> [a]</p><p class="src"><a href="#v:null">null</a> :: URec <a href="Eta-Types-Char.html#t:Char">Char</a> a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: URec <a href="Eta-Types-Char.html#t:Char">Char</a> a -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> URec <a href="Eta-Types-Char.html#t:Char">Char</a> a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => URec <a href="Eta-Types-Char.html#t:Char">Char</a> a -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => URec <a href="Eta-Types-Char.html#t:Char">Char</a> a -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => URec <a href="Eta-Types-Char.html#t:Char">Char</a> a -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => URec <a href="Eta-Types-Char.html#t:Char">Char</a> a -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:15" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:15')"></span> <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> (URec Double)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:15" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => URec Double m -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> URec Double a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> URec Double a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> URec Double a -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> URec Double a -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> URec Double a -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> URec Double a -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> URec Double a -> a</p><p class="src"><a href="#v:toList">toList</a> :: URec Double a -> [a]</p><p class="src"><a href="#v:null">null</a> :: URec Double a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: URec Double a -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> URec Double a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => URec Double a -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => URec Double a -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => URec Double a -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => URec Double a -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:16" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:16')"></span> <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> (URec Float)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:16" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => URec Float m -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> URec Float a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> URec Float a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> URec Float a -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> URec Float a -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> URec Float a -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> URec Float a -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> URec Float a -> a</p><p class="src"><a href="#v:toList">toList</a> :: URec Float a -> [a]</p><p class="src"><a href="#v:null">null</a> :: URec Float a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: URec Float a -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> URec Float a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => URec Float a -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => URec Float a -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => URec Float a -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => URec Float a -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:17" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:17')"></span> <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> (URec <a href="Eta-Types.html#t:Int">Int</a>)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:17" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => URec <a href="Eta-Types.html#t:Int">Int</a> m -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> URec <a href="Eta-Types.html#t:Int">Int</a> a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> URec <a href="Eta-Types.html#t:Int">Int</a> a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> URec <a href="Eta-Types.html#t:Int">Int</a> a -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> URec <a href="Eta-Types.html#t:Int">Int</a> a -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> URec <a href="Eta-Types.html#t:Int">Int</a> a -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> URec <a href="Eta-Types.html#t:Int">Int</a> a -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> URec <a href="Eta-Types.html#t:Int">Int</a> a -> a</p><p class="src"><a href="#v:toList">toList</a> :: URec <a href="Eta-Types.html#t:Int">Int</a> a -> [a]</p><p class="src"><a href="#v:null">null</a> :: URec <a href="Eta-Types.html#t:Int">Int</a> a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: URec <a href="Eta-Types.html#t:Int">Int</a> a -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> URec <a href="Eta-Types.html#t:Int">Int</a> a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => URec <a href="Eta-Types.html#t:Int">Int</a> a -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => URec <a href="Eta-Types.html#t:Int">Int</a> a -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => URec <a href="Eta-Types.html#t:Int">Int</a> a -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => URec <a href="Eta-Types.html#t:Int">Int</a> a -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:18" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:18')"></span> <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> (URec Word)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:18" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => URec Word m -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> URec Word a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> URec Word a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> URec Word a -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> URec Word a -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> URec Word a -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> URec Word a -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> URec Word a -> a</p><p class="src"><a href="#v:toList">toList</a> :: URec Word a -> [a]</p><p class="src"><a href="#v:null">null</a> :: URec Word a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: URec Word a -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> URec Word a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => URec Word a -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => URec Word a -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => URec Word a -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => URec Word a -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:19" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:19')"></span> <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> (URec (Ptr ()))</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:19" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => URec (Ptr ()) m -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> URec (Ptr ()) a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> URec (Ptr ()) a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> URec (Ptr ()) a -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> URec (Ptr ()) a -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> URec (Ptr ()) a -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> URec (Ptr ()) a -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> URec (Ptr ()) a -> a</p><p class="src"><a href="#v:toList">toList</a> :: URec (Ptr ()) a -> [a]</p><p class="src"><a href="#v:null">null</a> :: URec (Ptr ()) a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: URec (Ptr ()) a -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> URec (Ptr ()) a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => URec (Ptr ()) a -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => URec (Ptr ()) a -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => URec (Ptr ()) a -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => URec (Ptr ()) a -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:20" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:20')"></span> <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> ((,) a)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:20" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a, m) -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> (a, a) -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> (a, a) -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> (a, a) -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> (a, a) -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> (a, a) -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> (a, a) -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> (a, a) -> a</p><p class="src"><a href="#v:toList">toList</a> :: (a, a) -> [a]</p><p class="src"><a href="#v:null">null</a> :: (a, a) -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: (a, a) -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> (a, a) -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => (a, a) -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => (a, a) -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => (a, a) -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => (a, a) -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:21" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:21')"></span> <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> (Array i)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:21" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => Array i m -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> Array i a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> Array i a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> Array i a -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> Array i a -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> Array i a -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> Array i a -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> Array i a -> a</p><p class="src"><a href="#v:toList">toList</a> :: Array i a -> [a]</p><p class="src"><a href="#v:null">null</a> :: Array i a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: Array i a -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> Array i a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => Array i a -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => Array i a -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => Array i a -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => Array i a -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:22" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:22')"></span> <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> (Proxy *)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:22" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => Proxy * m -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> Proxy * a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> Proxy * a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> Proxy * a -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> Proxy * a -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> Proxy * a -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> Proxy * a -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> Proxy * a -> a</p><p class="src"><a href="#v:toList">toList</a> :: Proxy * a -> [a]</p><p class="src"><a href="#v:null">null</a> :: Proxy * a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: Proxy * a -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> Proxy * a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => Proxy * a -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => Proxy * a -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => Proxy * a -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => Proxy * a -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:23" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:23')"></span> <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> (K1 i c)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:23" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => K1 i c m -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> K1 i c a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> K1 i c a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> K1 i c a -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> K1 i c a -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> K1 i c a -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> K1 i c a -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> K1 i c a -> a</p><p class="src"><a href="#v:toList">toList</a> :: K1 i c a -> [a]</p><p class="src"><a href="#v:null">null</a> :: K1 i c a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: K1 i c a -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> K1 i c a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => K1 i c a -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => K1 i c a -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => K1 i c a -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => K1 i c a -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:24" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:24')"></span> (<a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f, <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> g) => <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> ((:+:) f g)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:24" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (f :+: g) m -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> (f :+: g) a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> (f :+: g) a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> (f :+: g) a -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> (f :+: g) a -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> (f :+: g) a -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> (f :+: g) a -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> (f :+: g) a -> a</p><p class="src"><a href="#v:toList">toList</a> :: (f :+: g) a -> [a]</p><p class="src"><a href="#v:null">null</a> :: (f :+: g) a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: (f :+: g) a -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> (f :+: g) a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => (f :+: g) a -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => (f :+: g) a -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => (f :+: g) a -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => (f :+: g) a -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:25" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:25')"></span> (<a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f, <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> g) => <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> ((:*:) f g)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:25" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (f :*: g) m -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> (f :*: g) a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> (f :*: g) a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> (f :*: g) a -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> (f :*: g) a -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> (f :*: g) a -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> (f :*: g) a -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> (f :*: g) a -> a</p><p class="src"><a href="#v:toList">toList</a> :: (f :*: g) a -> [a]</p><p class="src"><a href="#v:null">null</a> :: (f :*: g) a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: (f :*: g) a -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> (f :*: g) a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => (f :*: g) a -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => (f :*: g) a -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => (f :*: g) a -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => (f :*: g) a -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:26" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:26')"></span> (<a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f, <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> g) => <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> ((:.:) f g)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:26" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (f :.: g) m -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> (f :.: g) a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> (f :.: g) a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> (f :.: g) a -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> (f :.: g) a -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> (f :.: g) a -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> (f :.: g) a -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> (f :.: g) a -> a</p><p class="src"><a href="#v:toList">toList</a> :: (f :.: g) a -> [a]</p><p class="src"><a href="#v:null">null</a> :: (f :.: g) a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: (f :.: g) a -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> (f :.: g) a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => (f :.: g) a -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => (f :.: g) a -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => (f :.: g) a -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => (f :.: g) a -> a</p></div></div></td></tr><tr><td class="src clearfix"><span class="inst-left"><span id="control.i:ic:Foldable:Foldable:27" class="instance expander" onclick="toggleSection('i:ic:Foldable:Foldable:27')"></span> <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> (M1 i c f)</span></td><td class="doc empty"> </td></tr><tr><td colspan="2"><div id="section.i:ic:Foldable:Foldable:27" class="inst-details hide"><div class="subs methods"><p class="caption">Methods</p><p class="src"><a href="#v:fold">fold</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => M1 i c f m -> m</p><p class="src"><a href="#v:foldMap">foldMap</a> :: <a href="Eta-Classes-Monoid.html#t:Monoid">Monoid</a> m => (a -> m) -> M1 i c f a -> m <a href="#v:foldMap" class="selflink">#</a></p><p class="src"><a href="#v:foldr">foldr</a> :: (a -> b -> b) -> b -> M1 i c f a -> b <a href="#v:foldr" class="selflink">#</a></p><p class="src"><a href="#v:foldr-39-">foldr'</a> :: (a -> b -> b) -> b -> M1 i c f a -> b</p><p class="src"><a href="#v:foldl">foldl</a> :: (b -> a -> b) -> b -> M1 i c f a -> b</p><p class="src"><a href="#v:foldl-39-">foldl'</a> :: (b -> a -> b) -> b -> M1 i c f a -> b</p><p class="src"><a href="#v:foldr1">foldr1</a> :: (a -> a -> a) -> M1 i c f a -> a</p><p class="src"><a href="#v:foldl1">foldl1</a> :: (a -> a -> a) -> M1 i c f a -> a</p><p class="src"><a href="#v:toList">toList</a> :: M1 i c f a -> [a]</p><p class="src"><a href="#v:null">null</a> :: M1 i c f a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:length">length</a> :: M1 i c f a -> <a href="Eta-Types.html#t:Int">Int</a></p><p class="src"><a href="#v:elem">elem</a> :: <a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a => a -> M1 i c f a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a></p><p class="src"><a href="#v:maximum">maximum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => M1 i c f a -> a</p><p class="src"><a href="#v:minimum">minimum</a> :: <a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a => M1 i c f a -> a</p><p class="src"><a href="#v:sum">sum</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => M1 i c f a -> a</p><p class="src"><a href="#v:product">product</a> :: <a href="Eta-Classes-Num.html#t:Num">Num</a> a => M1 i c f a -> a</p></div></div></td></tr></table></div></div></div><div class="top"><p class="src"><a id="v:foldRight" class="def">foldRight</a> :: <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => (a -> b -> b) -> b -> f a -> b <a href="#v:foldRight" class="selflink">#</a></p><div class="doc"><p>The <code><a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a></code> type class defines that a type
can have a <code><a href="Eta-Classes-Foldable.html#v:foldRight">foldRight</a></code> operation which can be used
to reduce it by passing a binary operation and a
neutral element. This reduces starting from the right.</p><p>The List type is an example of <code><a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a></code></p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>foldRight (+) 0 [1, 2, 3]
</code></strong>6
</pre><p><em>Mnemonic: Reduceable</em></p></div></div><div class="top"><p class="src"><a id="v:foldLeft" class="def">foldLeft</a> :: <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => (b -> a -> b) -> b -> f a -> b <a href="#v:foldLeft" class="selflink">#</a></p><div class="doc"><p><code><a href="Eta-Classes-Foldable.html#v:foldLeft">foldLeft</a></code> starts from the left, using the lazy evaluation
capabilities of Eta. Note that this will get stuck in an
infite loop if you pass an infite list to it.</p></div></div><div class="top"><p class="src"><a id="v:strictFoldRight" class="def">strictFoldRight</a> :: <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => (a -> b -> b) -> b -> f a -> b <a href="#v:strictFoldRight" class="selflink">#</a></p><div class="doc"><p>A version of <code><a href="Eta-Classes-Foldable.html#v:foldRight">foldRight</a></code> that evaluates the operations inline,
hence <em>strict</em>, the opposite of lazy.</p></div></div><div class="top"><p class="src"><a id="v:strictFoldLeft" class="def">strictFoldLeft</a> :: <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => (b -> a -> b) -> b -> f a -> b <a href="#v:strictFoldLeft" class="selflink">#</a></p><div class="doc"><p>A version of <code><a href="Eta-Classes-Foldable.html#v:foldLeft">foldLeft</a></code> that evaluates the operations inline,
hence <em>strict</em>, the opposite of lazy.</p></div></div><div class="top"><p class="src"><a id="v:monadicFoldRight" class="def">monadicFoldRight</a> :: (<a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f, <a href="Eta-Classes-Monad.html#t:Monad">Monad</a> m) => (a -> b -> m b) -> b -> f a -> m b <a href="#v:monadicFoldRight" class="selflink">#</a></p><div class="doc"><p>A version of <code><a href="Eta-Classes-Foldable.html#v:foldRight">foldRight</a></code> that applies functions that are flatmappable,
in the context of a type that implements a monad, and returns the
result produced by the reduction of the structure, wrapped in that type:</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>:{
</code></strong> addIntoMaybe :: Int -> Int -> Maybe Int
addIntoMaybe a b = Just (a + b)
:}
</pre><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>monadicFoldRight addIntoMaybe 0 [1,2,3]
</code></strong>Just 6
</pre></div></div><div class="top"><p class="src"><a id="v:monadicFoldLeft" class="def">monadicFoldLeft</a> :: (<a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f, <a href="Eta-Classes-Monad.html#t:Monad">Monad</a> m) => (b -> a -> m b) -> b -> f a -> m b <a href="#v:monadicFoldLeft" class="selflink">#</a></p><div class="doc"><p>Left-biased version of <code><a href="Eta-Classes-Foldable.html#v:monadicFoldRight">monadicFoldRight</a></code></p></div></div><div class="top"><p class="src"><a id="v:toList" class="def">toList</a> :: <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => f a -> [a] <a href="#v:toList" class="selflink">#</a></p><div class="doc"><p>Converts a type that implements <code><a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a></code> into a list</p></div></div><div class="top"><p class="src"><a id="v:isEmpty" class="def">isEmpty</a> :: <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => f a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a> <a href="#v:isEmpty" class="selflink">#</a></p><div class="doc"><p>Checks if a <code><a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a></code> structure is empty.</p></div></div><div class="top"><p class="src"><a id="v:length" class="def">length</a> :: <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => f a -> <a href="Eta-Types.html#t:Int">Int</a> <a href="#v:length" class="selflink">#</a></p><div class="doc"><p>Returns the size of a structure.</p></div></div><div class="top"><p class="src"><a id="v:isElementOf" class="def">isElementOf</a> :: (<a href="Eta-Classes-Eq.html#t:Eq">Eq</a> a, <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f) => a -> f a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a> <a href="#v:isElementOf" class="selflink">#</a></p><div class="doc"><p>Checks if the element is contained in the structure.</p></div></div><div class="top"><p class="src"><a id="v:maximum" class="def">maximum</a> :: (<a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a, <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f) => f a -> <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> a <a href="#v:maximum" class="selflink">#</a></p><div class="doc"><p>Largest element in a structure.
Returns <code><a href="Eta-Types-Maybe.html#v:Nothing">Nothing</a></code> if the structure is empty.</p></div></div><div class="top"><p class="src"><a id="v:maximumBy" class="def">maximumBy</a> :: <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => (a -> a -> <a href="Eta-Classes-Ord.html#t:Ordering">Ordering</a>) -> f a -> <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> a <a href="#v:maximumBy" class="selflink">#</a></p><div class="doc"><p>Given some comparison function, return the maximum of a
structure. Returns <code><a href="Eta-Types-Maybe.html#v:Nothing">Nothing</a></code> if the structure is empty.</p></div></div><div class="top"><p class="src"><a id="v:unsafeMaximum" class="def">unsafeMaximum</a> :: (<a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a, <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f) => f a -> a <a href="#v:unsafeMaximum" class="selflink">#</a></p><div class="doc"><div class="warning"><p>Warning: Partial functions should be avoided</p></div><p>Largest element in a structure.
Errors if the structure is empty</p></div></div><div class="top"><p class="src"><a id="v:minimum" class="def">minimum</a> :: (<a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a, <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f) => f a -> <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> a <a href="#v:minimum" class="selflink">#</a></p><div class="doc"><p>Smallest element in a structure
Returns <code><a href="Eta-Types-Maybe.html#v:Nothing">Nothing</a></code> if the structure is empty.</p></div></div><div class="top"><p class="src"><a id="v:minimumBy" class="def">minimumBy</a> :: <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => (a -> a -> <a href="Eta-Classes-Ord.html#t:Ordering">Ordering</a>) -> f a -> <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> a <a href="#v:minimumBy" class="selflink">#</a></p><div class="doc"><p>Given some comparison function, return the minimum of a
structure. Returns <code><a href="Eta-Types-Maybe.html#v:Nothing">Nothing</a></code> if the structure is empty.</p></div></div><div class="top"><p class="src"><a id="v:unsafeMinimum" class="def">unsafeMinimum</a> :: (<a href="Eta-Classes-Ord.html#t:Ord">Ord</a> a, <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f) => f a -> a <a href="#v:unsafeMinimum" class="selflink">#</a></p><div class="doc"><div class="warning"><p>Warning: Partial functions should be avoided</p></div><p>Largest element in a structure.
Errors if the structure is empty</p></div></div><div class="top"><p class="src"><a id="v:sum" class="def">sum</a> :: (<a href="Eta-Classes-Num.html#t:Num">Num</a> a, <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f) => f a -> a <a href="#v:sum" class="selflink">#</a></p><div class="doc"><p>Sum of the numbers of a structure</p></div></div><div class="top"><p class="src"><a id="v:product" class="def">product</a> :: (<a href="Eta-Classes-Num.html#t:Num">Num</a> a, <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f) => f a -> a <a href="#v:product" class="selflink">#</a></p><div class="doc"><p>Product of the numbers of a structure</p></div></div><div class="top"><p class="src"><a id="v:findBy" class="def">findBy</a> :: <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => (a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a>) -> f a -> <a href="Eta-Types-Maybe.html#t:Maybe">Maybe</a> a <a href="#v:findBy" class="selflink">#</a></p><div class="doc"><p>Given some predicate, <code><a href="Eta-Classes-Foldable.html#v:findBy">findBy</a></code> will return
the first element that matches the predicate
or <code><a href="Eta-Types-Maybe.html#v:Nothing">Nothing</a></code> if there is no such element</p></div></div><div class="top"><p class="src"><a id="v:any" class="def">any</a> :: <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => (a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a>) -> f a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a> <a href="#v:any" class="selflink">#</a></p><div class="doc"><p>Determines if any element satisfies the predicate</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>any (== 1) [1, 2, 3]
</code></strong>True
<code class="prompt">>>> </code><strong class="userinput"><code>any (== 5) [1, 2, 3]
</code></strong>False
</pre></div></div><div class="top"><p class="src"><a id="v:all" class="def">all</a> :: <a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f => (a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a>) -> f a -> <a href="Eta-Types-Bool.html#t:Bool">Bool</a> <a href="#v:all" class="selflink">#</a></p><div class="doc"><p>Determines if all elements satisfy the predicate</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>all (== 1) [1, 2, 3]
</code></strong>False
<code class="prompt">>>> </code><strong class="userinput"><code>all (< 5) [1, 2, 3]
</code></strong>True
</pre></div></div><div class="top"><p class="src"><a id="v:discardTraverse" class="def">discardTraverse</a> :: (<a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f, <a href="Eta-Classes-Applicative.html#t:Applicative">Applicative</a> m) => (a -> m b) -> f a -> m () <a href="#v:discardTraverse" class="selflink">#</a></p><div class="doc"><p>Sometimes we need to apply an action to each one of
the elements. The function <code><a href="Eta-Classes-Foldable.html#v:discardTraverse">discardTraverse</a></code> maps an
action over each of the elements of the structure</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>discardTraverse printLine ["Hello", "world", "!"]
</code></strong>Hello
world
!
</pre></div></div><div class="top"><p class="src"><a id="v:foreach" class="def">foreach</a> :: (<a href="Eta-Classes-Foldable.html#t:Foldable">Foldable</a> f, <a href="Eta-Classes-Applicative.html#t:Applicative">Applicative</a> m) => f a -> (a -> m b) -> m () <a href="#v:foreach" class="selflink">#</a></p><div class="doc"><p>Another alternative to <code><a href="Eta-Classes-Foldable.html#v:discardTraverse">discardTraverse</a></code> is to use the
<code><a href="Eta-Classes-Foldable.html#v:foreach">foreach</a></code> function, which is very familiar to a lot
of developers.</p><pre class="screen"><code class="prompt">>>> </code><strong class="userinput"><code>foreach [1..3] printShow
</code></strong>1
2
3
</pre></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.17.4</p></div></body></html>