/usr/share/doc/libghc-classy-prelude-doc/html/ClassyPrelude.html is in libghc-classy-prelude-doc 0.9.3-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 | <!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>ClassyPrelude</title><link href="ocean.css" rel="stylesheet" type="text/css" title="Ocean" /><script src="haddock-util.js" type="text/javascript"></script><script type="text/javascript">//<![CDATA[
window.onload = function () {pageLoad();setSynopsis("mini_ClassyPrelude.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/ClassyPrelude.html">Source</a></li><li><a href="index.html">Contents</a></li><li><a href="doc-index.html">Index</a></li></ul><p class="caption">classy-prelude-0.9.3: A typeclass-based Prelude.</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Safe Haskell</th><td>None</td></tr></table><p class="caption">ClassyPrelude</p></div><div id="table-of-contents"><p class="caption">Contents</p><ul><li><a href="#g:1">CorePrelude
</a></li><li><a href="#g:2">Standard
</a><ul><li><a href="#g:3">Monoid
</a></li><li><a href="#g:4">Semigroup
</a></li><li><a href="#g:5">Monad
</a></li><li><a href="#g:6">Mutable references
</a></li><li><a href="#g:7">Debugging
</a></li><li><a href="#g:8">Time (since 0.6.1)
</a></li><li><a href="#g:9">Generics (since 0.8.1)
</a></li></ul></li><li><a href="#g:10">Poly hierarchy
</a></li><li><a href="#g:11">Mono hierarchy
</a></li><li><a href="#g:12">I/O
</a></li><li><a href="#g:13">Non-standard
</a><ul><li><a href="#g:14">List-like classes
</a></li><li><a href="#g:15">Set-like
</a></li><li><a href="#g:16">Text-like
</a><ul><li><a href="#g:17">Case conversion
</a></li></ul></li><li><a href="#g:18">IO
</a></li><li><a href="#g:19">FilePath
</a></li><li><a href="#g:20">Exceptions
</a></li><li><a href="#g:21">Force types
</a></li></ul></li></ul></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">module <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html">CorePrelude</a></li><li class="src short"><a href="#v:undefined">undefined</a> :: a</li><li class="src short"><a href="#v:-43--43-">(++)</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Monoid">Monoid</a> m => m -> m -> m</li><li class="src short"><span class="keyword">class</span> <a href="#t:Semigroup">Semigroup</a> a <span class="keyword">where</span><ul class="subs"><li><a href="#v:-60--62-">(<>)</a> :: a -> a -> a</li><li><a href="#v:sconcat">sconcat</a> :: <a href="/usr/share/doc/libghc-semigroups-doc/html/Data-List-NonEmpty.html#t:NonEmpty">NonEmpty</a> a -> a</li><li><a href="#v:times1p">times1p</a> :: Whole n => n -> a -> a</li></ul></li><li class="src short"><span class="keyword">data</span> <a href="#t:WrappedMonoid">WrappedMonoid</a> m</li><li class="src short">module <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad.html">Control.Monad</a></li><li class="src short"><a href="#v:whenM">whenM</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad.html#t:Monad">Monad</a> m => m <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a> -> m () -> m ()</li><li class="src short"><a href="#v:unlessM">unlessM</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad.html#t:Monad">Monad</a> m => m <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a> -> m () -> m ()</li><li class="src short">module <a href="/usr/share/doc/libghc-lifted-base-doc/html/Control-Concurrent-MVar-Lifted.html">Control.Concurrent.MVar.Lifted</a></li><li class="src short">module <a href="/usr/share/doc/libghc-stm-doc/html/Control-Concurrent-STM.html">Control.Concurrent.STM</a></li><li class="src short"><a href="#v:atomically">atomically</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:MonadIO">MonadIO</a> m => <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#t:STM">STM</a> a -> m a</li><li class="src short"><a href="#v:alwaysSTM">alwaysSTM</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#t:STM">STM</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a> -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#t:STM">STM</a> ()</li><li class="src short"><a href="#v:alwaysSucceedsSTM">alwaysSucceedsSTM</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#t:STM">STM</a> a -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#t:STM">STM</a> ()</li><li class="src short"><a href="#v:retrySTM">retrySTM</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#t:STM">STM</a> a</li><li class="src short"><a href="#v:orElseSTM">orElseSTM</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#t:STM">STM</a> a -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#t:STM">STM</a> a -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#t:STM">STM</a> a</li><li class="src short"><a href="#v:checkSTM">checkSTM</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a> -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#t:STM">STM</a> ()</li><li class="src short">module <a href="/usr/share/doc/libghc-lifted-base-doc/html/Data-IORef-Lifted.html">Data.IORef.Lifted</a></li><li class="src short"><a href="#v:trace">trace</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-String.html#t:String">String</a> -> a -> a</li><li class="src short"><a href="#v:traceShow">traceShow</a> :: <a href="ClassyPrelude.html#t:Show">Show</a> a => a -> b -> b</li><li class="src short"><a href="#v:traceId">traceId</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-String.html#t:String">String</a> -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-String.html#t:String">String</a></li><li class="src short"><a href="#v:traceM">traceM</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad.html#t:Monad">Monad</a> m => <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-String.html#t:String">String</a> -> m ()</li><li class="src short"><a href="#v:traceShowId">traceShowId</a> :: <a href="ClassyPrelude.html#t:Show">Show</a> a => a -> a</li><li class="src short"><a href="#v:traceShowM">traceShowM</a> :: (<a href="ClassyPrelude.html#t:Show">Show</a> a, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad.html#t:Monad">Monad</a> m) => a -> m ()</li><li class="src short"><a href="#v:assert">assert</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a> -> a -> a</li><li class="src short">module <a href="/usr/share/doc/ghc-doc/html/libraries/time-1.4.0.1/Data-Time.html">Data.Time</a></li><li class="src short"><a href="#v:defaultTimeLocale">defaultTimeLocale</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/old-locale-1.0.0.5/System-Locale.html#t:TimeLocale">TimeLocale</a></li><li class="src short"><span class="keyword">class</span> <a href="#t:Generic">Generic</a> a </li><li class="src short">module <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Foldable.html">Data.Foldable</a></li><li class="src short">module <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Traversable.html">Data.Traversable</a></li><li class="src short">module <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html">Data.MonoTraversable</a></li><li class="src short">module <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-Sequences.html">Data.Sequences</a></li><li class="src short">module <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-Sequences-Lazy.html">Data.Sequences.Lazy</a></li><li class="src short">module <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-Textual-Encoding.html">Data.Textual.Encoding</a></li><li class="src short">module <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-Containers.html">Data.Containers</a></li><li class="src short">module <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-Builder.html">Data.Builder</a></li><li class="src short">module <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MinLen.html">Data.MinLen</a></li><li class="src short">module <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-ByteVector.html">Data.ByteVector</a></li><li class="src short"><span class="keyword">data</span> <a href="#t:Handle">Handle</a> </li><li class="src short"><a href="#v:stdin">stdin</a> :: <a href="ClassyPrelude.html#t:Handle">Handle</a></li><li class="src short"><a href="#v:stdout">stdout</a> :: <a href="ClassyPrelude.html#t:Handle">Handle</a></li><li class="src short"><a href="#v:stderr">stderr</a> :: <a href="ClassyPrelude.html#t:Handle">Handle</a></li><li class="src short"><a href="#v:map">map</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad.html#t:Functor">Functor</a> f => (a -> b) -> f a -> f b</li><li class="src short"><a href="#v:concat">concat</a> :: (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Monoid">Monoid</a> (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c)) => c -> <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c</li><li class="src short"><a href="#v:concatMap">concatMap</a> :: (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Monoid">Monoid</a> m, <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c) => (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c -> m) -> c -> m</li><li class="src short"><a href="#v:length">length</a> :: <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c => c -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Int.html#t:Int">Int</a></li><li class="src short"><a href="#v:null">null</a> :: <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c => c -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:pack">pack</a> :: <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-Sequences.html#t:IsSequence">IsSequence</a> c => [<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c] -> c</li><li class="src short"><a href="#v:unpack">unpack</a> :: <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c => c -> [<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c]</li><li class="src short"><a href="#v:repack">repack</a> :: (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> a, <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-Sequences.html#t:IsSequence">IsSequence</a> b, <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> a ~ <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> b) => a -> b</li><li class="src short"><a href="#v:toList">toList</a> :: <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c => c -> [<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c]</li><li class="src short"><a href="#v:mapM">mapM</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Traversable.html#t:Traversable">Traversable</a> t => <span class="keyword">forall</span> a m b. <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad.html#t:Monad">Monad</a> m => (a -> m b) -> t a -> m (t b)</li><li class="src short"><a href="#v:mapM_">mapM_</a> :: (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad.html#t:Monad">Monad</a> m, <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c) => (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c -> m ()) -> c -> m ()</li><li class="src short"><a href="#v:forM">forM</a> :: (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Traversable.html#t:Traversable">Traversable</a> t, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad.html#t:Monad">Monad</a> m) => t a -> (a -> m b) -> m (t b)</li><li class="src short"><a href="#v:forM_">forM_</a> :: (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad.html#t:Monad">Monad</a> m, <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c) => c -> (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c -> m ()) -> m ()</li><li class="src short"><a href="#v:any">any</a> :: <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c => (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a>) -> c -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:all">all</a> :: <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c => (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a>) -> c -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:and">and</a> :: (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> mono, <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> mono ~ <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a>) => mono -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:or">or</a> :: (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> mono, <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> mono ~ <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a>) => mono -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:foldl-39-">foldl'</a> :: <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c => (a -> <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c -> a) -> a -> c -> a</li><li class="src short"><a href="#v:foldr">foldr</a> :: <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c => (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c -> b -> b) -> b -> c -> b</li><li class="src short"><a href="#v:foldM">foldM</a> :: (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad.html#t:Monad">Monad</a> m, <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c) => (a -> <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c -> m a) -> a -> c -> m a</li><li class="src short"><a href="#v:readMay">readMay</a> :: (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c ~ <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Char.html#t:Char">Char</a>, <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Text-Read.html#t:Read">Read</a> a) => c -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Maybe.html#t:Maybe">Maybe</a> a</li><li class="src short"><a href="#v:intercalate">intercalate</a> :: (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Monoid">Monoid</a> (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c), <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-Sequences.html#t:IsSequence">IsSequence</a> c) => <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c -> c -> <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c</li><li class="src short"><a href="#v:zip">zip</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip">Zip</a> f => <span class="keyword">forall</span> a b. f a -> f b -> f (a, b)</li><li class="src short"><a href="#v:zip3">zip3</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip3">Zip3</a> f => <span class="keyword">forall</span> a b c. f a -> f b -> f c -> f (a, b, c)</li><li class="src short"><a href="#v:zip4">zip4</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip4">Zip4</a> f => <span class="keyword">forall</span> a b c d. f a -> f b -> f c -> f d -> f (a, b, c, d)</li><li class="src short"><a href="#v:zip5">zip5</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip5">Zip5</a> f => <span class="keyword">forall</span> a b c d e. f a -> f b -> f c -> f d -> f e -> f (a, b, c, d, e)</li><li class="src short"><a href="#v:zip6">zip6</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip6">Zip6</a> f => <span class="keyword">forall</span> a b c d e g. f a -> f b -> f c -> f d -> f e -> f g -> f (a, b, c, d, e, g)</li><li class="src short"><a href="#v:zip7">zip7</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip7">Zip7</a> f => <span class="keyword">forall</span> a b c d e g h. f a -> f b -> f c -> f d -> f e -> f g -> f h -> f (a, b, c, d, e, g, h)</li><li class="src short"><a href="#v:unzip">unzip</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip">Zip</a> f => <span class="keyword">forall</span> a b. f (a, b) -> (f a, f b)</li><li class="src short"><a href="#v:unzip3">unzip3</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip3">Zip3</a> f => <span class="keyword">forall</span> a b c. f (a, b, c) -> (f a, f b, f c)</li><li class="src short"><a href="#v:unzip4">unzip4</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip4">Zip4</a> f => <span class="keyword">forall</span> a b c d. f (a, b, c, d) -> (f a, f b, f c, f d)</li><li class="src short"><a href="#v:unzip5">unzip5</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip5">Zip5</a> f => <span class="keyword">forall</span> a b c d e. f (a, b, c, d, e) -> (f a, f b, f c, f d, f e)</li><li class="src short"><a href="#v:unzip6">unzip6</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip6">Zip6</a> f => <span class="keyword">forall</span> a b c d e g. f (a, b, c, d, e, g) -> (f a, f b, f c, f d, f e, f g)</li><li class="src short"><a href="#v:unzip7">unzip7</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip7">Zip7</a> f => <span class="keyword">forall</span> a b c d e g h. f (a, b, c, d, e, g, h) -> (f a, f b, f c, f d, f e, f g, f h)</li><li class="src short"><a href="#v:zipWith">zipWith</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip">Zip</a> f => <span class="keyword">forall</span> a b c. (a -> b -> c) -> f a -> f b -> f c</li><li class="src short"><a href="#v:zipWith3">zipWith3</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip3">Zip3</a> f => <span class="keyword">forall</span> a b c d. (a -> b -> c -> d) -> f a -> f b -> f c -> f d</li><li class="src short"><a href="#v:zipWith4">zipWith4</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip4">Zip4</a> f => <span class="keyword">forall</span> a b c d e. (a -> b -> c -> d -> e) -> f a -> f b -> f c -> f d -> f e</li><li class="src short"><a href="#v:zipWith5">zipWith5</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip5">Zip5</a> f => <span class="keyword">forall</span> a b c d e g. (a -> b -> c -> d -> e -> g) -> f a -> f b -> f c -> f d -> f e -> f g</li><li class="src short"><a href="#v:zipWith6">zipWith6</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip6">Zip6</a> f => <span class="keyword">forall</span> a b c d e g h. (a -> b -> c -> d -> e -> g -> h) -> f a -> f b -> f c -> f d -> f e -> f g -> f h</li><li class="src short"><a href="#v:zipWith7">zipWith7</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip7">Zip7</a> f => <span class="keyword">forall</span> a b c d e g h i. (a -> b -> c -> d -> e -> g -> h -> i) -> f a -> f b -> f c -> f d -> f e -> f g -> f h -> f i</li><li class="src short"><a href="#v:hashNub">hashNub</a> :: (<a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Hashable">Hashable</a> a, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Eq.html#t:Eq">Eq</a> a) => [a] -> [a]</li><li class="src short"><a href="#v:ordNub">ordNub</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Ord.html#t:Ord">Ord</a> a => [a] -> [a]</li><li class="src short"><a href="#v:ordNubBy">ordNubBy</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Ord.html#t:Ord">Ord</a> b => (a -> b) -> (a -> a -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a>) -> [a] -> [a]</li><li class="src short"><a href="#v:sortWith">sortWith</a> :: (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Ord.html#t:Ord">Ord</a> a, <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-Sequences.html#t:IsSequence">IsSequence</a> c) => (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c -> a) -> c -> c</li><li class="src short"><a href="#v:compareLength">compareLength</a> :: (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Prelude.html#t:Integral">Integral</a> i, <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c) => c -> i -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Ord.html#t:Ordering">Ordering</a></li><li class="src short"><a href="#v:sum">sum</a> :: (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Prelude.html#t:Num">Num</a> (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c)) => c -> <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c</li><li class="src short"><a href="#v:product">product</a> :: (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Prelude.html#t:Num">Num</a> (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c)) => c -> <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c</li><li class="src short"><a href="#v:repeat">repeat</a> :: a -> [a]</li><li class="src short"><a href="#v:-92--92-">(\\)</a> :: <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-Containers.html#t:SetContainer">SetContainer</a> a => a -> a -> a</li><li class="src short"><a href="#v:intersect">intersect</a> :: <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-Containers.html#t:SetContainer">SetContainer</a> a => a -> a -> a</li><li class="src short"><a href="#v:unions">unions</a> :: (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c, <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-Containers.html#t:SetContainer">SetContainer</a> (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c)) => c -> <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c</li><li class="src short"><span class="keyword">class</span> <a href="#t:Show">Show</a> a <span class="keyword">where</span><ul class="subs"><li><a href="#v:showsPrec">showsPrec</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Int.html#t:Int">Int</a> -> a -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Text-Show.html#t:ShowS">ShowS</a></li><li><a href="#v:show">show</a> :: a -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-String.html#t:String">String</a></li><li><a href="#v:showList">showList</a> :: [a] -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Text-Show.html#t:ShowS">ShowS</a></li></ul></li><li class="src short"><a href="#v:tshow">tshow</a> :: <a href="ClassyPrelude.html#t:Show">Show</a> a => a -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Text">Text</a></li><li class="src short"><a href="#v:tlshow">tlshow</a> :: <a href="ClassyPrelude.html#t:Show">Show</a> a => a -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:LText">LText</a></li><li class="src short"><a href="#v:charToLower">charToLower</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Char.html#t:Char">Char</a> -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Char.html#t:Char">Char</a></li><li class="src short"><a href="#v:charToUpper">charToUpper</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Char.html#t:Char">Char</a> -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Char.html#t:Char">Char</a></li><li class="src short"><span class="keyword">class</span> <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-Sequences.html#t:IsSequence">IsSequence</a> a => <a href="#t:IOData">IOData</a> a <span class="keyword">where</span><ul class="subs"><li><a href="#v:readFile">readFile</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:MonadIO">MonadIO</a> m => <a href="/usr/share/doc/libghc-system-filepath-doc/html/Filesystem-Path.html#t:FilePath">FilePath</a> -> m a</li><li><a href="#v:writeFile">writeFile</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:MonadIO">MonadIO</a> m => <a href="/usr/share/doc/libghc-system-filepath-doc/html/Filesystem-Path.html#t:FilePath">FilePath</a> -> a -> m ()</li><li><a href="#v:getLine">getLine</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:MonadIO">MonadIO</a> m => m a</li><li><a href="#v:hGetContents">hGetContents</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:MonadIO">MonadIO</a> m => <a href="ClassyPrelude.html#t:Handle">Handle</a> -> m a</li><li><a href="#v:hGetLine">hGetLine</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:MonadIO">MonadIO</a> m => <a href="ClassyPrelude.html#t:Handle">Handle</a> -> m a</li><li><a href="#v:hPut">hPut</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:MonadIO">MonadIO</a> m => <a href="ClassyPrelude.html#t:Handle">Handle</a> -> a -> m ()</li><li><a href="#v:hPutStrLn">hPutStrLn</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:MonadIO">MonadIO</a> m => <a href="ClassyPrelude.html#t:Handle">Handle</a> -> a -> m ()</li><li><a href="#v:hGetChunk">hGetChunk</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:MonadIO">MonadIO</a> m => <a href="ClassyPrelude.html#t:Handle">Handle</a> -> m a</li></ul></li><li class="src short"><a href="#v:print">print</a> :: (<a href="ClassyPrelude.html#t:Show">Show</a> a, <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:MonadIO">MonadIO</a> m) => a -> m ()</li><li class="src short"><a href="#v:hClose">hClose</a> :: <a href="ClassyPrelude.html#t:Handle">Handle</a> -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/System-IO.html#t:IO">IO</a> ()</li><li class="src short"><a href="#v:fpToString">fpToString</a> :: <a href="/usr/share/doc/libghc-system-filepath-doc/html/Filesystem-Path.html#t:FilePath">FilePath</a> -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-String.html#t:String">String</a></li><li class="src short"><a href="#v:fpFromString">fpFromString</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-String.html#t:String">String</a> -> <a href="/usr/share/doc/libghc-system-filepath-doc/html/Filesystem-Path.html#t:FilePath">FilePath</a></li><li class="src short"><a href="#v:fpToText">fpToText</a> :: <a href="/usr/share/doc/libghc-system-filepath-doc/html/Filesystem-Path.html#t:FilePath">FilePath</a> -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Text">Text</a></li><li class="src short"><a href="#v:fpFromText">fpFromText</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Text">Text</a> -> <a href="/usr/share/doc/libghc-system-filepath-doc/html/Filesystem-Path.html#t:FilePath">FilePath</a></li><li class="src short"><a href="#v:fpToTextWarn">fpToTextWarn</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:MonadIO">MonadIO</a> m => <a href="/usr/share/doc/libghc-system-filepath-doc/html/Filesystem-Path.html#t:FilePath">FilePath</a> -> m <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Text">Text</a></li><li class="src short"><a href="#v:fpToTextEx">fpToTextEx</a> :: <a href="/usr/share/doc/libghc-system-filepath-doc/html/Filesystem-Path.html#t:FilePath">FilePath</a> -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Text">Text</a></li><li class="src short">module <a href="/usr/share/doc/libghc-enclosed-exceptions-doc/html/Control-Exception-Enclosed.html">Control.Exception.Enclosed</a></li><li class="src short"><span class="keyword">class</span> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad.html#t:Monad">Monad</a> m => <a href="#t:MonadThrow">MonadThrow</a> m <span class="keyword">where</span><ul class="subs"><li><a href="#v:throwM">throwM</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Exception-Base.html#t:Exception">Exception</a> e => e -> m a</li></ul></li><li class="src short"><a href="#v:asByteString">asByteString</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:ByteString">ByteString</a> -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:ByteString">ByteString</a></li><li class="src short"><a href="#v:asLByteString">asLByteString</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:LByteString">LByteString</a> -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:LByteString">LByteString</a></li><li class="src short"><a href="#v:asHashMap">asHashMap</a> :: <a href="/usr/share/doc/libghc-unordered-containers-doc/html/Data-HashMap-Strict.html#t:HashMap">HashMap</a> k v -> <a href="/usr/share/doc/libghc-unordered-containers-doc/html/Data-HashMap-Strict.html#t:HashMap">HashMap</a> k v</li><li class="src short"><a href="#v:asHashSet">asHashSet</a> :: <a href="/usr/share/doc/libghc-unordered-containers-doc/html/Data-HashSet.html#t:HashSet">HashSet</a> a -> <a href="/usr/share/doc/libghc-unordered-containers-doc/html/Data-HashSet.html#t:HashSet">HashSet</a> a</li><li class="src short"><a href="#v:asText">asText</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Text">Text</a> -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Text">Text</a></li><li class="src short"><a href="#v:asLText">asLText</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:LText">LText</a> -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:LText">LText</a></li><li class="src short"><a href="#v:asList">asList</a> :: [a] -> [a]</li><li class="src short"><a href="#v:asMap">asMap</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Map">Map</a> k v -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Map">Map</a> k v</li><li class="src short"><a href="#v:asIntMap">asIntMap</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:IntMap">IntMap</a> v -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:IntMap">IntMap</a> v</li><li class="src short"><a href="#v:asMaybe">asMaybe</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Maybe.html#t:Maybe">Maybe</a> a -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Maybe.html#t:Maybe">Maybe</a> a</li><li class="src short"><a href="#v:asSet">asSet</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Set">Set</a> a -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Set">Set</a> a</li><li class="src short"><a href="#v:asIntSet">asIntSet</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:IntSet">IntSet</a> -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:IntSet">IntSet</a></li><li class="src short"><a href="#v:asVector">asVector</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Vector">Vector</a> a -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Vector">Vector</a> a</li><li class="src short"><a href="#v:asUVector">asUVector</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:UVector">UVector</a> a -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:UVector">UVector</a> a</li><li class="src short"><a href="#v:asSVector">asSVector</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:SVector">SVector</a> a -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:SVector">SVector</a> a</li></ul></div><div id="interface"><h1 id="g:1">CorePrelude
</h1><div class="top"><p class="src">module <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html">CorePrelude</a></p></div><div class="top"><p class="src"><a name="v:undefined" class="def">undefined</a> :: a<a href="src/ClassyPrelude.html#undefined" class="link">Source</a></p><div class="doc"><div class="warning"><p>Deprecated: It is highly recommended that you either avoid partial functions or provide meaningful error messages
</p></div><p>We define our own <code>undefined</code> which is marked as deprecated. This makes it
useful to use during development, but let's you more easily getting
notification if you accidentally ship partial code in production.
</p><p>The classy prelude recommendation for when you need to really have a partial
function in production is to use <code>error</code> with a very descriptive message so
that, in case an exception is thrown, you get more information than
<code>Prelude.undefined</code>.
</p><p>Since 0.5.5
</p></div></div><h1 id="g:2">Standard
</h1><h2 id="g:3">Monoid
</h2><div class="top"><p class="src"><a name="v:-43--43-" class="def">(++)</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Monoid">Monoid</a> m => m -> m -> m<a href="src/ClassyPrelude.html#%2B%2B" class="link">Source</a></p></div><h2 id="g:4">Semigroup
</h2><div class="top"><p class="src"><span class="keyword">class</span> <a name="t:Semigroup" class="def">Semigroup</a> a <span class="keyword">where</span></p><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:-60--62-" class="def">(<>)</a> :: a -> a -> a</p><div class="doc"><p>An associative operation.
</p><pre>
(a <code><a href="ClassyPrelude.html#v:-60--62-"><></a></code> b) <code><a href="ClassyPrelude.html#v:-60--62-"><></a></code> c = a <code><a href="ClassyPrelude.html#v:-60--62-"><></a></code> (b <code><a href="ClassyPrelude.html#v:-60--62-"><></a></code> c)
</pre><p>If <code>a</code> is also a <code><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Monoid">Monoid</a></code> we further require
</p><pre>
(<code><a href="ClassyPrelude.html#v:-60--62-"><></a></code>) = <code><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#v:mappend">mappend</a></code>
</pre></div><p class="src"><a name="v:sconcat" class="def">sconcat</a> :: <a href="/usr/share/doc/libghc-semigroups-doc/html/Data-List-NonEmpty.html#t:NonEmpty">NonEmpty</a> a -> a</p><div class="doc"><p>Reduce a non-empty list with <code><></code>
</p><p>The default definition should be sufficient, but this can be overridden for efficiency.
</p></div><p class="src"><a name="v:times1p" class="def">times1p</a> :: Whole n => n -> a -> a</p><div class="doc"><p>Repeat a value (n + 1) times.
</p><pre>
<code><a href="ClassyPrelude.html#v:times1p">times1p</a></code> n a = a <code><a href="ClassyPrelude.html#v:-60--62-"><></a></code> a <code><a href="ClassyPrelude.html#v:-60--62-"><></a></code> ... <code><a href="ClassyPrelude.html#v:-60--62-"><></a></code> a -- using <code><a href="ClassyPrelude.html#v:-60--62-"><></a></code> n times
</pre><p>The default definition uses peasant multiplication, exploiting associativity to only
require <em>O(log n)</em> uses of <code><></code>.
</p><p>See also <code><a href="/usr/share/doc/libghc-semigroups-doc/html/Data-Semigroup.html#v:timesN">timesN</a></code>.
</p></div></div><div class="subs instances"><p id="control.i:Semigroup" class="caption collapser" onclick="toggleSection('i:Semigroup')">Instances</p><div id="section.i:Semigroup" class="show"><table><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Ord.html#t:Ordering">Ordering</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> ()</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:All">All</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Any">Any</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Text">Text</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:IntSet">IntSet</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:ByteString">ByteString</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> <a href="/usr/share/doc/ghc-doc/html/libraries/bytestring-0.10.0.2/Data-ByteString-Lazy.html#t:ByteString">ByteString</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> <a href="/usr/share/doc/libghc-text-doc/html/Data-Text-Lazy-Internal.html#t:Text">Text</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> [a]</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> a => <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Dual">Dual</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Endo">Endo</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Prelude.html#t:Num">Num</a> a => <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Sum">Sum</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Prelude.html#t:Num">Num</a> a => <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Product">Product</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:First">First</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Last">Last</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> a => <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Maybe.html#t:Maybe">Maybe</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Vector">Vector</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Ord.html#t:Ord">Ord</a> a => <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Set">Set</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:IntMap">IntMap</a> v)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Seq">Seq</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Ord.html#t:Ord">Ord</a> a => <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/libghc-semigroups-doc/html/Data-Semigroup.html#t:Min">Min</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Ord.html#t:Ord">Ord</a> a => <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/libghc-semigroups-doc/html/Data-Semigroup.html#t:Max">Max</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/libghc-semigroups-doc/html/Data-Semigroup.html#t:First">First</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/libghc-semigroups-doc/html/Data-Semigroup.html#t:Last">Last</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Monoid">Monoid</a> m => <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="ClassyPrelude.html#t:WrappedMonoid">WrappedMonoid</a> m)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> a => <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/libghc-semigroups-doc/html/Data-Semigroup.html#t:Option">Option</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/libghc-semigroups-doc/html/Data-List-NonEmpty.html#t:NonEmpty">NonEmpty</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Hashable">Hashable</a> a, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Eq.html#t:Eq">Eq</a> a) => <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/libghc-unordered-containers-doc/html/Data-HashSet.html#t:HashSet">HashSet</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Unbox">Unbox</a> a => <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/libghc-vector-doc/html/Data-Vector-Unboxed.html#t:Vector">Vector</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Foreign-Storable.html#t:Storable">Storable</a> a => <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/libghc-vector-doc/html/Data-Vector-Storable.html#t:Vector">Vector</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/libghc-vector-doc/html/Data-Vector-Primitive-Mutable.html#t:Prim">Prim</a> a => <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/libghc-vector-doc/html/Data-Vector-Primitive.html#t:Vector">Vector</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (DList a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> b => <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (a -> b)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Either.html#t:Either">Either</a> a b)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> a, <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> b) => <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (a, b)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> a => <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Applicative.html#t:Const">Const</a> a b)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Ord.html#t:Ord">Ord</a> k => <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Map">Map</a> k v)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MinLen.html#t:GrowingAppend">GrowingAppend</a> mono => <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MinLen.html#t:MinLen">MinLen</a> nat mono)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Hashable">Hashable</a> k, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Eq.html#t:Eq">Eq</a> k) => <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="/usr/share/doc/libghc-unordered-containers-doc/html/Data-HashMap-Strict.html#t:HashMap">HashMap</a> k a)</td><td class="doc empty"> </td></tr><tr><td class="src">Apply f => <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (Act f a)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> a, <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> b, <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> c) => <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (a, b, c)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> a, <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> b, <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> c, <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> d) => <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (a, b, c, d)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> a, <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> b, <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> c, <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> d, <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> e) => <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (a, b, c, d, e)</td><td class="doc empty"> </td></tr></table></div></div></div><div class="top"><p class="src"><span class="keyword">data</span> <a name="t:WrappedMonoid" class="def">WrappedMonoid</a> m </p><div class="doc"><p>Provide a Semigroup for an arbitrary Monoid.
</p></div><div class="subs instances"><p id="control.i:WrappedMonoid" class="caption collapser" onclick="toggleSection('i:WrappedMonoid')">Instances</p><div id="section.i:WrappedMonoid" class="show"><table><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Typeable-Internal.html#t:Typeable1">Typeable1</a> <a href="ClassyPrelude.html#t:WrappedMonoid">WrappedMonoid</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Prelude.html#t:Bounded">Bounded</a> m => <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Prelude.html#t:Bounded">Bounded</a> (<a href="ClassyPrelude.html#t:WrappedMonoid">WrappedMonoid</a> m)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Prelude.html#t:Enum">Enum</a> m => <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Prelude.html#t:Enum">Enum</a> (<a href="ClassyPrelude.html#t:WrappedMonoid">WrappedMonoid</a> m)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Eq.html#t:Eq">Eq</a> m => <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Eq.html#t:Eq">Eq</a> (<a href="ClassyPrelude.html#t:WrappedMonoid">WrappedMonoid</a> m)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Data.html#t:Data">Data</a> m => <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Data.html#t:Data">Data</a> (<a href="ClassyPrelude.html#t:WrappedMonoid">WrappedMonoid</a> m)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Ord.html#t:Ord">Ord</a> m => <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Ord.html#t:Ord">Ord</a> (<a href="ClassyPrelude.html#t:WrappedMonoid">WrappedMonoid</a> m)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Text-Read.html#t:Read">Read</a> m => <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Text-Read.html#t:Read">Read</a> (<a href="ClassyPrelude.html#t:WrappedMonoid">WrappedMonoid</a> m)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> m => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="ClassyPrelude.html#t:WrappedMonoid">WrappedMonoid</a> m)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Generic">Generic</a> (<a href="ClassyPrelude.html#t:WrappedMonoid">WrappedMonoid</a> m)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Monoid">Monoid</a> m => <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Monoid">Monoid</a> (<a href="ClassyPrelude.html#t:WrappedMonoid">WrappedMonoid</a> m)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Hashable">Hashable</a> m => <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Hashable">Hashable</a> (<a href="ClassyPrelude.html#t:WrappedMonoid">WrappedMonoid</a> m)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Monoid">Monoid</a> m => <a href="ClassyPrelude.html#t:Semigroup">Semigroup</a> (<a href="ClassyPrelude.html#t:WrappedMonoid">WrappedMonoid</a> m)</td><td class="doc empty"> </td></tr></table></div></div></div><h2 id="g:5">Monad
</h2><div class="top"><p class="src">module <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad.html">Control.Monad</a></p></div><div class="top"><p class="src"><a name="v:whenM" class="def">whenM</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad.html#t:Monad">Monad</a> m => m <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a> -> m () -> m ()<a href="src/ClassyPrelude.html#whenM" class="link">Source</a></p><div class="doc"><p>Only perform the action if the predicate returns <code>True</code>.
</p><p>Since 0.9.2
</p></div></div><div class="top"><p class="src"><a name="v:unlessM" class="def">unlessM</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad.html#t:Monad">Monad</a> m => m <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a> -> m () -> m ()<a href="src/ClassyPrelude.html#unlessM" class="link">Source</a></p><div class="doc"><p>Only perform the action if the predicate returns <code>False</code>.
</p><p>Since 0.9.2
</p></div></div><h2 id="g:6">Mutable references
</h2><div class="top"><p class="src">module <a href="/usr/share/doc/libghc-lifted-base-doc/html/Control-Concurrent-MVar-Lifted.html">Control.Concurrent.MVar.Lifted</a></p></div><div class="top"><p class="src">module <a href="/usr/share/doc/libghc-stm-doc/html/Control-Concurrent-STM.html">Control.Concurrent.STM</a></p></div><div class="top"><p class="src"><a name="v:atomically" class="def">atomically</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:MonadIO">MonadIO</a> m => <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#t:STM">STM</a> a -> m a<a href="src/ClassyPrelude.html#atomically" class="link">Source</a></p><div class="doc"><p>Generalized version of <code><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#v:atomically">atomically</a></code>.
</p></div></div><div class="top"><p class="src"><a name="v:alwaysSTM" class="def">alwaysSTM</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#t:STM">STM</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a> -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#t:STM">STM</a> ()<a href="src/ClassyPrelude.html#alwaysSTM" class="link">Source</a></p><div class="doc"><p>Synonym for <code><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#v:always">always</a></code>.
</p></div></div><div class="top"><p class="src"><a name="v:alwaysSucceedsSTM" class="def">alwaysSucceedsSTM</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#t:STM">STM</a> a -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#t:STM">STM</a> ()<a href="src/ClassyPrelude.html#alwaysSucceedsSTM" class="link">Source</a></p><div class="doc"><p>Synonym for <code><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#v:alwaysSucceeds">alwaysSucceeds</a></code>.
</p></div></div><div class="top"><p class="src"><a name="v:retrySTM" class="def">retrySTM</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#t:STM">STM</a> a<a href="src/ClassyPrelude.html#retrySTM" class="link">Source</a></p><div class="doc"><p>Synonym for <code><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#v:retry">retry</a></code>.
</p></div></div><div class="top"><p class="src"><a name="v:orElseSTM" class="def">orElseSTM</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#t:STM">STM</a> a -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#t:STM">STM</a> a -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#t:STM">STM</a> a<a href="src/ClassyPrelude.html#orElseSTM" class="link">Source</a></p><div class="doc"><p>Synonym for <code><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#v:orElse">orElse</a></code>.
</p></div></div><div class="top"><p class="src"><a name="v:checkSTM" class="def">checkSTM</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a> -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#t:STM">STM</a> ()<a href="src/ClassyPrelude.html#checkSTM" class="link">Source</a></p><div class="doc"><p>Synonym for <code><a href="/usr/share/doc/libghc-stm-doc/html/Control-Monad-STM.html#v:check">check</a></code>.
</p></div></div><div class="top"><p class="src">module <a href="/usr/share/doc/libghc-lifted-base-doc/html/Data-IORef-Lifted.html">Data.IORef.Lifted</a></p></div><h2 id="g:7">Debugging
</h2><div class="top"><p class="src"><a name="v:trace" class="def">trace</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-String.html#t:String">String</a> -> a -> a</p><div class="doc"><p>The <code><a href="ClassyPrelude.html#v:trace">trace</a></code> function outputs the trace message given as its first argument,
before returning the second argument as its result.
</p><p>For example, this returns the value of <code>f x</code> but first outputs the message.
</p><pre> trace ("calling f with x = " ++ show x) (f x)
</pre><p>The <code><a href="ClassyPrelude.html#v:trace">trace</a></code> function should <em>only</em> be used for debugging, or for monitoring
execution. The function is not referentially transparent: its type indicates
that it is a pure function but it has the side effect of outputting the
trace message.
</p></div></div><div class="top"><p class="src"><a name="v:traceShow" class="def">traceShow</a> :: <a href="ClassyPrelude.html#t:Show">Show</a> a => a -> b -> b</p><div class="doc"><p>Like <code><a href="ClassyPrelude.html#v:trace">trace</a></code>, but uses <code><a href="ClassyPrelude.html#v:show">show</a></code> on the argument to convert it to a <code><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-String.html#t:String">String</a></code>.
</p><p>This makes it convenient for printing the values of interesting variables or
expressions inside a function. For example here we print the value of the
variables <code>x</code> and <code>z</code>:
</p><pre> f x y =
traceShow (x, z) $ result
where
z = ...
...
</pre></div></div><div class="top"><p class="src"><a name="v:traceId" class="def">traceId</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-String.html#t:String">String</a> -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-String.html#t:String">String</a><a href="src/ClassyPrelude.html#traceId" class="link">Source</a></p><div class="doc"><p>Since 0.5.9
</p></div></div><div class="top"><p class="src"><a name="v:traceM" class="def">traceM</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad.html#t:Monad">Monad</a> m => <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-String.html#t:String">String</a> -> m ()<a href="src/ClassyPrelude.html#traceM" class="link">Source</a></p><div class="doc"><p>Since 0.5.9
</p></div></div><div class="top"><p class="src"><a name="v:traceShowId" class="def">traceShowId</a> :: <a href="ClassyPrelude.html#t:Show">Show</a> a => a -> a<a href="src/ClassyPrelude.html#traceShowId" class="link">Source</a></p><div class="doc"><p>Since 0.5.9
</p></div></div><div class="top"><p class="src"><a name="v:traceShowM" class="def">traceShowM</a> :: (<a href="ClassyPrelude.html#t:Show">Show</a> a, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad.html#t:Monad">Monad</a> m) => a -> m ()<a href="src/ClassyPrelude.html#traceShowM" class="link">Source</a></p><div class="doc"><p>Since 0.5.9
</p></div></div><div class="top"><p class="src"><a name="v:assert" class="def">assert</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a> -> a -> a</p><div class="doc"><p>If the first argument evaluates to <code><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#v:True">True</a></code>, then the result is the
second argument. Otherwise an <code>AssertionFailed</code> exception is raised,
containing a <code><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-String.html#t:String">String</a></code> with the source file and line number of the
call to <code><a href="ClassyPrelude.html#v:assert">assert</a></code>.
</p><p>Assertions can normally be turned on or off with a compiler flag
(for GHC, assertions are normally on unless optimisation is turned on
with <code>-O</code> or the <code>-fignore-asserts</code>
option is given). When assertions are turned off, the first
argument to <code><a href="ClassyPrelude.html#v:assert">assert</a></code> is ignored, and the second argument is
returned as the result.
</p></div></div><h2 id="g:8">Time (since 0.6.1)
</h2><div class="top"><p class="src">module <a href="/usr/share/doc/ghc-doc/html/libraries/time-1.4.0.1/Data-Time.html">Data.Time</a></p></div><div class="top"><p class="src"><a name="v:defaultTimeLocale" class="def">defaultTimeLocale</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/old-locale-1.0.0.5/System-Locale.html#t:TimeLocale">TimeLocale</a></p></div><h2 id="g:9">Generics (since 0.8.1)
</h2><div class="top"><p class="src"><span class="keyword">class</span> <a name="t:Generic" class="def">Generic</a> a </p><div class="doc"><p>Representable types of kind *.
This class is derivable in GHC with the DeriveGeneric flag on.
</p></div><div class="subs instances"><p id="control.i:Generic" class="caption collapser" onclick="toggleSection('i:Generic')">Instances</p><div id="section.i:Generic" class="show"><table><tr><td class="src"><a href="ClassyPrelude.html#t:Generic">Generic</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Generic">Generic</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Char.html#t:Char">Char</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Generic">Generic</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Prelude.html#t:Double">Double</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Generic">Generic</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Prelude.html#t:Float">Float</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Generic">Generic</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Int.html#t:Int">Int</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Generic">Generic</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Ord.html#t:Ordering">Ordering</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Generic">Generic</a> ()</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Generic">Generic</a> [a]</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Generic">Generic</a> (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Maybe.html#t:Maybe">Maybe</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Generic">Generic</a> (<a href="/usr/share/doc/libghc-semigroups-doc/html/Data-Semigroup.html#t:Max">Max</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Generic">Generic</a> (<a href="/usr/share/doc/libghc-semigroups-doc/html/Data-Semigroup.html#t:First">First</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Generic">Generic</a> (<a href="/usr/share/doc/libghc-semigroups-doc/html/Data-Semigroup.html#t:Last">Last</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Generic">Generic</a> (<a href="ClassyPrelude.html#t:WrappedMonoid">WrappedMonoid</a> m)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Generic">Generic</a> (<a href="/usr/share/doc/libghc-semigroups-doc/html/Data-Semigroup.html#t:Option">Option</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Generic">Generic</a> (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Either.html#t:Either">Either</a> a b)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Generic">Generic</a> (a, b)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Generic">Generic</a> (a, b, c)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Generic">Generic</a> (a, b, c, d)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Generic">Generic</a> (a, b, c, d, e)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Generic">Generic</a> (a, b, c, d, e, f)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Generic">Generic</a> (a, b, c, d, e, f, g)</td><td class="doc empty"> </td></tr></table></div></div></div><h1 id="g:10">Poly hierarchy
</h1><div class="top"><p class="src">module <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Foldable.html">Data.Foldable</a></p></div><div class="top"><p class="src">module <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Traversable.html">Data.Traversable</a></p></div><h1 id="g:11">Mono hierarchy
</h1><div class="top"><p class="src">module <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html">Data.MonoTraversable</a></p></div><div class="top"><p class="src">module <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-Sequences.html">Data.Sequences</a></p></div><div class="top"><p class="src">module <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-Sequences-Lazy.html">Data.Sequences.Lazy</a></p></div><div class="top"><p class="src">module <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-Textual-Encoding.html">Data.Textual.Encoding</a></p></div><div class="top"><p class="src">module <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-Containers.html">Data.Containers</a></p></div><div class="top"><p class="src">module <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-Builder.html">Data.Builder</a></p></div><div class="top"><p class="src">module <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MinLen.html">Data.MinLen</a></p></div><div class="top"><p class="src">module <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-ByteVector.html">Data.ByteVector</a></p></div><h1 id="g:12">I/O
</h1><div class="top"><p class="src"><span class="keyword">data</span> <a name="t:Handle" class="def">Handle</a> </p><div class="doc"><p>Haskell defines operations to read and write characters from and to files,
represented by values of type <code>Handle</code>. Each value of this type is a
<em>handle</em>: a record used by the Haskell run-time system to <em>manage</em> I/O
with file system objects. A handle has at least the following properties:
</p><ul><li> whether it manages input or output or both;
</li><li> whether it is <em>open</em>, <em>closed</em> or <em>semi-closed</em>;
</li><li> whether the object is seekable;
</li><li> whether buffering is disabled, or enabled on a line or block basis;
</li><li> a buffer (whose length may be zero).
</li></ul><p>Most handles will also have a current I/O position indicating where the next
input or output operation will occur. A handle is <em>readable</em> if it
manages only input or both input and output; likewise, it is <em>writable</em> if
it manages only output or both input and output. A handle is <em>open</em> when
first allocated.
Once it is closed it can no longer be used for either input or output,
though an implementation cannot re-use its storage while references
remain to it. Handles are in the <code><a href="ClassyPrelude.html#t:Show">Show</a></code> and <code><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Eq.html#t:Eq">Eq</a></code> classes. The string
produced by showing a handle is system dependent; it should include
enough information to identify the handle for debugging. A handle is
equal according to <code><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Eq.html#v:-61--61-">==</a></code> only to itself; no attempt
is made to compare the internal state of different handles for equality.
</p></div><div class="subs instances"><p id="control.i:Handle" class="caption collapser" onclick="toggleSection('i:Handle')">Instances</p><div id="section.i:Handle" class="show"><table><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Eq.html#t:Eq">Eq</a> <a href="ClassyPrelude.html#t:Handle">Handle</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="ClassyPrelude.html#t:Handle">Handle</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Typeable-Internal.html#t:Typeable">Typeable</a> <a href="ClassyPrelude.html#t:Handle">Handle</a></td><td class="doc empty"> </td></tr></table></div></div></div><div class="top"><p class="src"><a name="v:stdin" class="def">stdin</a> :: <a href="ClassyPrelude.html#t:Handle">Handle</a></p><div class="doc"><p>A handle managing input from the Haskell program's standard input channel.
</p></div></div><div class="top"><p class="src"><a name="v:stdout" class="def">stdout</a> :: <a href="ClassyPrelude.html#t:Handle">Handle</a></p><div class="doc"><p>A handle managing output to the Haskell program's standard output channel.
</p></div></div><div class="top"><p class="src"><a name="v:stderr" class="def">stderr</a> :: <a href="ClassyPrelude.html#t:Handle">Handle</a></p><div class="doc"><p>A handle managing output to the Haskell program's standard error channel.
</p></div></div><h1 id="g:13">Non-standard
</h1><h2 id="g:14">List-like classes
</h2><div class="top"><p class="src"><a name="v:map" class="def">map</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad.html#t:Functor">Functor</a> f => (a -> b) -> f a -> f b<a href="src/ClassyPrelude.html#map" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:concat" class="def">concat</a> :: (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Monoid">Monoid</a> (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c)) => c -> <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c<a href="src/ClassyPrelude.html#concat" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:concatMap" class="def">concatMap</a> :: (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Monoid">Monoid</a> m, <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c) => (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c -> m) -> c -> m<a href="src/ClassyPrelude.html#concatMap" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:length" class="def">length</a> :: <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c => c -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Int.html#t:Int">Int</a><a href="src/ClassyPrelude.html#length" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:null" class="def">null</a> :: <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c => c -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a><a href="src/ClassyPrelude.html#null" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:pack" class="def">pack</a> :: <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-Sequences.html#t:IsSequence">IsSequence</a> c => [<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c] -> c<a href="src/ClassyPrelude.html#pack" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:unpack" class="def">unpack</a> :: <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c => c -> [<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c]<a href="src/ClassyPrelude.html#unpack" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:repack" class="def">repack</a> :: (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> a, <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-Sequences.html#t:IsSequence">IsSequence</a> b, <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> a ~ <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> b) => a -> b<a href="src/ClassyPrelude.html#repack" class="link">Source</a></p><div class="doc"><p>Repack from one type to another, dropping to a list in the middle.
</p><p><code>repack = pack . unpack</code>.
</p></div></div><div class="top"><p class="src"><a name="v:toList" class="def">toList</a> :: <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c => c -> [<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c]<a href="src/ClassyPrelude.html#toList" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:mapM" class="def">mapM</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Traversable.html#t:Traversable">Traversable</a> t => <span class="keyword">forall</span> a m b. <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad.html#t:Monad">Monad</a> m => (a -> m b) -> t a -> m (t b)</p><div class="doc"><p>Map each element of a structure to a monadic action, evaluate
these actions from left to right, and collect the results.
</p></div></div><div class="top"><p class="src"><a name="v:mapM_" class="def">mapM_</a> :: (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad.html#t:Monad">Monad</a> m, <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c) => (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c -> m ()) -> c -> m ()<a href="src/ClassyPrelude.html#mapM_" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:forM" class="def">forM</a> :: (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Traversable.html#t:Traversable">Traversable</a> t, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad.html#t:Monad">Monad</a> m) => t a -> (a -> m b) -> m (t b)</p><div class="doc"><p><code><a href="ClassyPrelude.html#v:forM">forM</a></code> is <code><a href="ClassyPrelude.html#v:mapM">mapM</a></code> with its arguments flipped.
</p></div></div><div class="top"><p class="src"><a name="v:forM_" class="def">forM_</a> :: (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad.html#t:Monad">Monad</a> m, <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c) => c -> (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c -> m ()) -> m ()<a href="src/ClassyPrelude.html#forM_" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:any" class="def">any</a> :: <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c => (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a>) -> c -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a><a href="src/ClassyPrelude.html#any" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:all" class="def">all</a> :: <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c => (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a>) -> c -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a><a href="src/ClassyPrelude.html#all" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:and" class="def">and</a> :: (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> mono, <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> mono ~ <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a>) => mono -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a><a href="src/ClassyPrelude.html#and" class="link">Source</a></p><div class="doc"><p>Since 0.9.2
</p></div></div><div class="top"><p class="src"><a name="v:or" class="def">or</a> :: (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> mono, <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> mono ~ <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a>) => mono -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a><a href="src/ClassyPrelude.html#or" class="link">Source</a></p><div class="doc"><p>Since 0.9.2
</p></div></div><div class="top"><p class="src"><a name="v:foldl-39-" class="def">foldl'</a> :: <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c => (a -> <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c -> a) -> a -> c -> a<a href="src/ClassyPrelude.html#foldl%27" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:foldr" class="def">foldr</a> :: <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c => (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c -> b -> b) -> b -> c -> b<a href="src/ClassyPrelude.html#foldr" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:foldM" class="def">foldM</a> :: (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad.html#t:Monad">Monad</a> m, <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c) => (a -> <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c -> m a) -> a -> c -> m a<a href="src/ClassyPrelude.html#foldM" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:readMay" class="def">readMay</a> :: (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c ~ <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Char.html#t:Char">Char</a>, <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Text-Read.html#t:Read">Read</a> a) => c -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Maybe.html#t:Maybe">Maybe</a> a<a href="src/ClassyPrelude.html#readMay" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:intercalate" class="def">intercalate</a> :: (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Monoid">Monoid</a> (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c), <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-Sequences.html#t:IsSequence">IsSequence</a> c) => <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c -> c -> <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c<a href="src/ClassyPrelude.html#intercalate" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:zip" class="def">zip</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip">Zip</a> f => <span class="keyword">forall</span> a b. f a -> f b -> f (a, b)</p></div><div class="top"><p class="src"><a name="v:zip3" class="def">zip3</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip3">Zip3</a> f => <span class="keyword">forall</span> a b c. f a -> f b -> f c -> f (a, b, c)</p></div><div class="top"><p class="src"><a name="v:zip4" class="def">zip4</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip4">Zip4</a> f => <span class="keyword">forall</span> a b c d. f a -> f b -> f c -> f d -> f (a, b, c, d)</p></div><div class="top"><p class="src"><a name="v:zip5" class="def">zip5</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip5">Zip5</a> f => <span class="keyword">forall</span> a b c d e. f a -> f b -> f c -> f d -> f e -> f (a, b, c, d, e)</p></div><div class="top"><p class="src"><a name="v:zip6" class="def">zip6</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip6">Zip6</a> f => <span class="keyword">forall</span> a b c d e g. f a -> f b -> f c -> f d -> f e -> f g -> f (a, b, c, d, e, g)</p></div><div class="top"><p class="src"><a name="v:zip7" class="def">zip7</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip7">Zip7</a> f => <span class="keyword">forall</span> a b c d e g h. f a -> f b -> f c -> f d -> f e -> f g -> f h -> f (a, b, c, d, e, g, h)</p></div><div class="top"><p class="src"><a name="v:unzip" class="def">unzip</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip">Zip</a> f => <span class="keyword">forall</span> a b. f (a, b) -> (f a, f b)</p></div><div class="top"><p class="src"><a name="v:unzip3" class="def">unzip3</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip3">Zip3</a> f => <span class="keyword">forall</span> a b c. f (a, b, c) -> (f a, f b, f c)</p></div><div class="top"><p class="src"><a name="v:unzip4" class="def">unzip4</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip4">Zip4</a> f => <span class="keyword">forall</span> a b c d. f (a, b, c, d) -> (f a, f b, f c, f d)</p></div><div class="top"><p class="src"><a name="v:unzip5" class="def">unzip5</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip5">Zip5</a> f => <span class="keyword">forall</span> a b c d e. f (a, b, c, d, e) -> (f a, f b, f c, f d, f e)</p></div><div class="top"><p class="src"><a name="v:unzip6" class="def">unzip6</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip6">Zip6</a> f => <span class="keyword">forall</span> a b c d e g. f (a, b, c, d, e, g) -> (f a, f b, f c, f d, f e, f g)</p></div><div class="top"><p class="src"><a name="v:unzip7" class="def">unzip7</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip7">Zip7</a> f => <span class="keyword">forall</span> a b c d e g h. f (a, b, c, d, e, g, h) -> (f a, f b, f c, f d, f e, f g, f h)</p></div><div class="top"><p class="src"><a name="v:zipWith" class="def">zipWith</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip">Zip</a> f => <span class="keyword">forall</span> a b c. (a -> b -> c) -> f a -> f b -> f c</p></div><div class="top"><p class="src"><a name="v:zipWith3" class="def">zipWith3</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip3">Zip3</a> f => <span class="keyword">forall</span> a b c d. (a -> b -> c -> d) -> f a -> f b -> f c -> f d</p></div><div class="top"><p class="src"><a name="v:zipWith4" class="def">zipWith4</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip4">Zip4</a> f => <span class="keyword">forall</span> a b c d e. (a -> b -> c -> d -> e) -> f a -> f b -> f c -> f d -> f e</p></div><div class="top"><p class="src"><a name="v:zipWith5" class="def">zipWith5</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip5">Zip5</a> f => <span class="keyword">forall</span> a b c d e g. (a -> b -> c -> d -> e -> g) -> f a -> f b -> f c -> f d -> f e -> f g</p></div><div class="top"><p class="src"><a name="v:zipWith6" class="def">zipWith6</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip6">Zip6</a> f => <span class="keyword">forall</span> a b c d e g h. (a -> b -> c -> d -> e -> g -> h) -> f a -> f b -> f c -> f d -> f e -> f g -> f h</p></div><div class="top"><p class="src"><a name="v:zipWith7" class="def">zipWith7</a> :: <a href="/usr/share/doc/libghc-chunked-data-doc/html/Data-ChunkedZip.html#t:Zip7">Zip7</a> f => <span class="keyword">forall</span> a b c d e g h i. (a -> b -> c -> d -> e -> g -> h -> i) -> f a -> f b -> f c -> f d -> f e -> f g -> f h -> f i</p></div><div class="top"><p class="src"><a name="v:hashNub" class="def">hashNub</a> :: (<a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Hashable">Hashable</a> a, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Eq.html#t:Eq">Eq</a> a) => [a] -> [a]<a href="src/ClassyPrelude.html#hashNub" class="link">Source</a></p><div class="doc"><p>same behavior as nub, but requires Hashable & Eq and is O(n log n)
https:<em></em>github.com<em>nh2</em>haskell-ordnub
</p></div></div><div class="top"><p class="src"><a name="v:ordNub" class="def">ordNub</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Ord.html#t:Ord">Ord</a> a => [a] -> [a]<a href="src/ClassyPrelude.html#ordNub" class="link">Source</a></p><div class="doc"><p>same behavior as nub, but requires Ord and is O(n log n)
https:<em></em>github.com<em>nh2</em>haskell-ordnub
</p></div></div><div class="top"><p class="src"><a name="v:ordNubBy" class="def">ordNubBy</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Ord.html#t:Ord">Ord</a> b => (a -> b) -> (a -> a -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a>) -> [a] -> [a]<a href="src/ClassyPrelude.html#ordNubBy" class="link">Source</a></p><div class="doc"><p>same behavior as nubBy, but requires Ord and is O(n log n)
https:<em></em>github.com<em>nh2</em>haskell-ordnub
</p></div></div><div class="top"><p class="src"><a name="v:sortWith" class="def">sortWith</a> :: (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Ord.html#t:Ord">Ord</a> a, <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-Sequences.html#t:IsSequence">IsSequence</a> c) => (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c -> a) -> c -> c<a href="src/ClassyPrelude.html#sortWith" class="link">Source</a></p><div class="doc"><p>Sort elements using the user supplied function to project something out of
each element.
Inspired by <a href="http://hackage.haskell.org/packages/archive/base/latest/doc/html/GHC-Exts.html#v:sortWith">http://hackage.haskell.org/packages/archive/base/latest/doc/html/GHC-Exts.html#v:sortWith</a>.
</p></div></div><div class="top"><p class="src"><a name="v:compareLength" class="def">compareLength</a> :: (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Prelude.html#t:Integral">Integral</a> i, <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c) => c -> i -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Ord.html#t:Ordering">Ordering</a><a href="src/ClassyPrelude.html#compareLength" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:sum" class="def">sum</a> :: (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Prelude.html#t:Num">Num</a> (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c)) => c -> <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c<a href="src/ClassyPrelude.html#sum" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:product" class="def">product</a> :: (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Prelude.html#t:Num">Num</a> (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c)) => c -> <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c<a href="src/ClassyPrelude.html#product" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:repeat" class="def">repeat</a> :: a -> [a]</p><div class="doc"><p><code><a href="ClassyPrelude.html#v:repeat">repeat</a></code> <code>x</code> is an infinite list, with <code>x</code> the value of every element.
</p></div></div><h2 id="g:15">Set-like
</h2><div class="top"><p class="src"><a name="v:-92--92-" class="def">(\\)</a> :: <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-Containers.html#t:SetContainer">SetContainer</a> a => a -> a -> a<a href="src/ClassyPrelude.html#%5C%5C" class="link">Source</a></p><div class="doc"><p>An alias for <code><a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-Containers.html#v:difference">difference</a></code>.
</p></div></div><div class="top"><p class="src"><a name="v:intersect" class="def">intersect</a> :: <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-Containers.html#t:SetContainer">SetContainer</a> a => a -> a -> a<a href="src/ClassyPrelude.html#intersect" class="link">Source</a></p><div class="doc"><p>An alias for <code><a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-Containers.html#v:intersection">intersection</a></code>.
</p></div></div><div class="top"><p class="src"><a name="v:unions" class="def">unions</a> :: (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:MonoFoldable">MonoFoldable</a> c, <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-Containers.html#t:SetContainer">SetContainer</a> (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c)) => c -> <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:Element">Element</a> c<a href="src/ClassyPrelude.html#unions" class="link">Source</a></p></div><h2 id="g:16">Text-like
</h2><div class="top"><p class="src"><span class="keyword">class</span> <a name="t:Show" class="def">Show</a> a <span class="keyword">where</span></p><div class="doc"><p>Conversion of values to readable <code><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-String.html#t:String">String</a></code>s.
</p><p>Minimal complete definition: <code><a href="ClassyPrelude.html#v:showsPrec">showsPrec</a></code> or <code><a href="ClassyPrelude.html#v:show">show</a></code>.
</p><p>Derived instances of <code><a href="ClassyPrelude.html#t:Show">Show</a></code> have the following properties, which
are compatible with derived instances of <code><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Text-Read.html#t:Read">Read</a></code>:
</p><ul><li> The result of <code><a href="ClassyPrelude.html#v:show">show</a></code> is a syntactically correct Haskell
expression containing only constants, given the fixity
declarations in force at the point where the type is declared.
It contains only the constructor names defined in the data type,
parentheses, and spaces. When labelled constructor fields are
used, braces, commas, field names, and equal signs are also used.
</li><li> If the constructor is defined to be an infix operator, then
<code><a href="ClassyPrelude.html#v:showsPrec">showsPrec</a></code> will produce infix applications of the constructor.
</li><li> the representation will be enclosed in parentheses if the
precedence of the top-level constructor in <code>x</code> is less than <code>d</code>
(associativity is ignored). Thus, if <code>d</code> is <code>0</code> then the result
is never surrounded in parentheses; if <code>d</code> is <code>11</code> it is always
surrounded in parentheses, unless it is an atomic expression.
</li><li> If the constructor is defined using record syntax, then <code><a href="ClassyPrelude.html#v:show">show</a></code>
will produce the record-syntax form, with the fields given in the
same order as the original declaration.
</li></ul><p>For example, given the declarations
</p><pre> infixr 5 :^:
data Tree a = Leaf a | Tree a :^: Tree a
</pre><p>the derived instance of <code><a href="ClassyPrelude.html#t:Show">Show</a></code> is equivalent to
</p><pre> instance (Show a) => Show (Tree a) where
showsPrec d (Leaf m) = showParen (d > app_prec) $
showString "Leaf " . showsPrec (app_prec+1) m
where app_prec = 10
showsPrec d (u :^: v) = showParen (d > up_prec) $
showsPrec (up_prec+1) u .
showString " :^: " .
showsPrec (up_prec+1) v
where up_prec = 5
</pre><p>Note that right-associativity of <code>:^:</code> is ignored. For example,
</p><ul><li> <code><code><a href="ClassyPrelude.html#v:show">show</a></code> (Leaf 1 :^: Leaf 2 :^: Leaf 3)</code> produces the string
<code>"Leaf 1 :^: (Leaf 2 :^: Leaf 3)"</code>.
</li></ul></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:showsPrec" class="def">showsPrec</a></p><div class="subs arguments"><p class="caption">Arguments</p><table><tr><td class="src">:: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Int.html#t:Int">Int</a></td><td class="doc"><p>the operator precedence of the enclosing
context (a number from <code>0</code> to <code>11</code>).
Function application has precedence <code>10</code>.
</p></td></tr><tr><td class="src">-> a</td><td class="doc"><p>the value to be converted to a <code><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-String.html#t:String">String</a></code>
</p></td></tr><tr><td class="src">-> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Text-Show.html#t:ShowS">ShowS</a></td><td class="doc empty"> </td></tr></table></div><div class="doc"><p>Convert a value to a readable <code><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-String.html#t:String">String</a></code>.
</p><p><code><a href="ClassyPrelude.html#v:showsPrec">showsPrec</a></code> should satisfy the law
</p><pre> showsPrec d x r ++ s == showsPrec d x (r ++ s)
</pre><p>Derived instances of <code><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Text-Read.html#t:Read">Read</a></code> and <code><a href="ClassyPrelude.html#t:Show">Show</a></code> satisfy the following:
</p><ul><li> <code>(x,"")</code> is an element of
<code>(<code><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Text-Read.html#t:readsPrec">readsPrec</a></code> d (<code><a href="ClassyPrelude.html#v:showsPrec">showsPrec</a></code> d x ""))</code>.
</li></ul><p>That is, <code><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Text-Read.html#t:readsPrec">readsPrec</a></code> parses the string produced by
<code><a href="ClassyPrelude.html#v:showsPrec">showsPrec</a></code>, and delivers the value that <code><a href="ClassyPrelude.html#v:showsPrec">showsPrec</a></code> started with.
</p></div><p class="src"><a name="v:show" class="def">show</a> :: a -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-String.html#t:String">String</a></p><div class="doc"><p>A specialised variant of <code><a href="ClassyPrelude.html#v:showsPrec">showsPrec</a></code>, using precedence context
zero, and returning an ordinary <code><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-String.html#t:String">String</a></code>.
</p></div><p class="src"><a name="v:showList" class="def">showList</a> :: [a] -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Text-Show.html#t:ShowS">ShowS</a></p><div class="doc"><p>The method <code><a href="ClassyPrelude.html#v:showList">showList</a></code> is provided to allow the programmer to
give a specialised way of showing lists of values.
For example, this is used by the predefined <code><a href="ClassyPrelude.html#t:Show">Show</a></code> instance of
the <code><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Char.html#t:Char">Char</a></code> type, where values of type <code><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-String.html#t:String">String</a></code> should be shown
in double quotes, rather than between square brackets.
</p></div></div><div class="subs instances"><p id="control.i:Show" class="caption collapser" onclick="toggleSection('i:Show')">Instances</p><div id="section.i:Show" class="show"><table><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Bool.html#t:Bool">Bool</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Char.html#t:Char">Char</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Prelude.html#t:Double">Double</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Prelude.html#t:Float">Float</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Int.html#t:Int">Int</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Int.html#t:Int8">Int8</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Int.html#t:Int16">Int16</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Int.html#t:Int32">Int32</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Int.html#t:Int64">Int64</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Prelude.html#t:Integer">Integer</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Ord.html#t:Ordering">Ordering</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Word.html#t:Word">Word</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Word.html#t:Word8">Word8</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Word.html#t:Word16">Word16</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Word.html#t:Word32">Word32</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Word.html#t:Word64">Word64</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> ()</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="ClassyPrelude.html#t:Handle">Handle</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> HandleType</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-IO-Handle.html#t:HandlePosn">HandlePosn</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Concurrent.html#t:ThreadId">ThreadId</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#t:BlockReason">BlockReason</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Conc.html#t:ThreadStatus">ThreadStatus</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-IO-Handle.html#t:BufferMode">BufferMode</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-IO-Handle.html#t:Newline">Newline</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-IO-Handle.html#t:NewlineMode">NewlineMode</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:All">All</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Any">Any</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Generics.html#t:Arity">Arity</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Generics.html#t:Fixity">Fixity</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-Generics.html#t:Associativity">Associativity</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Char.html#t:GeneralCategory">GeneralCategory</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Typeable-Internal.html#t:TypeRep">TypeRep</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Typeable-Internal.html#t:TyCon">TyCon</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Text">Text</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:IntSet">IntSet</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:ByteString">ByteString</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/bytestring-0.10.0.2/Data-ByteString-Lazy.html#t:ByteString">ByteString</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/old-locale-1.0.0.5/System-Locale.html#t:TimeLocale">TimeLocale</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> Root</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/libghc-system-filepath-doc/html/Filesystem-Path.html#t:FilePath">FilePath</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/libghc-text-doc/html/Data-Text-Lazy-Internal.html#t:Text">Text</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> Padding</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> DateFormatSpec</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/time-1.4.0.1/Data-Time-LocalTime.html#t:LocalTime">LocalTime</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/time-1.4.0.1/Data-Time-LocalTime.html#t:ZonedTime">ZonedTime</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/time-1.4.0.1/Data-Time-Clock.html#t:UTCTime">UTCTime</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> <a href="/usr/share/doc/ghc-doc/html/libraries/time-1.4.0.1/Data-Time-Calendar.html#t:Day">Day</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> a => <a href="ClassyPrelude.html#t:Show">Show</a> [a]</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Prelude.html#t:Integral">Integral</a> a, <a href="ClassyPrelude.html#t:Show">Show</a> a) => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Ratio.html#t:Ratio">Ratio</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> a => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Dual">Dual</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> a => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Sum">Sum</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> a => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Product">Product</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> a => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:First">First</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> a => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Last">Last</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> a => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Maybe.html#t:Maybe">Maybe</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> a => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Vector">Vector</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> a => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Set">Set</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> a => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:IntMap">IntMap</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> a => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-semigroups-doc/html/Data-Semigroup.html#t:Min">Min</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> a => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-semigroups-doc/html/Data-Semigroup.html#t:Max">Max</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> a => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-semigroups-doc/html/Data-Semigroup.html#t:First">First</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> a => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-semigroups-doc/html/Data-Semigroup.html#t:Last">Last</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> m => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="ClassyPrelude.html#t:WrappedMonoid">WrappedMonoid</a> m)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> a => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-semigroups-doc/html/Data-Semigroup.html#t:Option">Option</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-system-filepath-doc/html/Filesystem-Path-Rules.html#t:Rules">Rules</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> a => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-transformers-doc/html/Data-Functor-Identity.html#t:Identity">Identity</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> a => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-unordered-containers-doc/html/Data-HashSet.html#t:HashSet">HashSet</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Show">Show</a> a, <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Unbox">Unbox</a> a) => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-vector-doc/html/Data-Vector-Unboxed.html#t:Vector">Vector</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Show">Show</a> a, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Foreign-Storable.html#t:Storable">Storable</a> a) => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-vector-doc/html/Data-Vector-Storable.html#t:Vector">Vector</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Show">Show</a> a, <a href="/usr/share/doc/libghc-vector-doc/html/Data-Vector-Primitive-Mutable.html#t:Prim">Prim</a> a) => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-vector-doc/html/Data-Vector-Primitive.html#t:Vector">Vector</a> a)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Show">Show</a> a, <a href="ClassyPrelude.html#t:Show">Show</a> b) => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Either.html#t:Either">Either</a> a b)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Show">Show</a> a, <a href="ClassyPrelude.html#t:Show">Show</a> b) => <a href="ClassyPrelude.html#t:Show">Show</a> (a, b)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad-ST-Safe.html#t:ST">ST</a> s a)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Show">Show</a> k, <a href="ClassyPrelude.html#t:Show">Show</a> a) => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Map">Map</a> k a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> mono => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MinLen.html#t:MinLen">MinLen</a> nat mono)</td><td class="doc empty"> </td></tr><tr><td class="src">(Show1 f, <a href="ClassyPrelude.html#t:Show">Show</a> a) => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-transformers-doc/html/Data-Functor-Reverse.html#t:Reverse">Reverse</a> f a)</td><td class="doc empty"> </td></tr><tr><td class="src">(Show1 f, <a href="ClassyPrelude.html#t:Show">Show</a> a) => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-transformers-doc/html/Control-Applicative-Backwards.html#t:Backwards">Backwards</a> f a)</td><td class="doc empty"> </td></tr><tr><td class="src">(Show1 f, <a href="ClassyPrelude.html#t:Show">Show</a> a) => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-transformers-doc/html/Control-Applicative-Lift.html#t:Lift">Lift</a> f a)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:Show">Show</a> a => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-transformers-doc/html/Data-Functor-Constant.html#t:Constant">Constant</a> a b)</td><td class="doc empty"> </td></tr><tr><td class="src">(Show1 m, <a href="ClassyPrelude.html#t:Show">Show</a> a) => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-transformers-doc/html/Control-Monad-Trans-Maybe.html#t:MaybeT">MaybeT</a> m a)</td><td class="doc empty"> </td></tr><tr><td class="src">(Show1 m, <a href="ClassyPrelude.html#t:Show">Show</a> a) => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-transformers-doc/html/Control-Monad-Trans-List.html#t:ListT">ListT</a> m a)</td><td class="doc empty"> </td></tr><tr><td class="src">(Show1 f, <a href="ClassyPrelude.html#t:Show">Show</a> a) => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-transformers-doc/html/Control-Monad-Trans-Identity.html#t:IdentityT">IdentityT</a> f a)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Show">Show</a> k, <a href="ClassyPrelude.html#t:Show">Show</a> v) => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-unordered-containers-doc/html/Data-HashMap-Strict.html#t:HashMap">HashMap</a> k v)</td><td class="doc empty"> </td></tr><tr><td class="src">(Show1 g, <a href="ClassyPrelude.html#t:Show">Show</a> a) => <a href="ClassyPrelude.html#t:Show">Show</a> (Apply g a)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Show">Show</a> a, <a href="ClassyPrelude.html#t:Show">Show</a> b, <a href="ClassyPrelude.html#t:Show">Show</a> c) => <a href="ClassyPrelude.html#t:Show">Show</a> (a, b, c)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Show">Show</a> w, Show1 m, <a href="ClassyPrelude.html#t:Show">Show</a> a) => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-transformers-doc/html/Control-Monad-Trans-Writer-Strict.html#t:WriterT">WriterT</a> w m a)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Show">Show</a> w, Show1 m, <a href="ClassyPrelude.html#t:Show">Show</a> a) => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-transformers-doc/html/Control-Monad-Trans-Writer-Lazy.html#t:WriterT">WriterT</a> w m a)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Show">Show</a> e, Show1 m, <a href="ClassyPrelude.html#t:Show">Show</a> a) => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-transformers-doc/html/Control-Monad-Trans-Error.html#t:ErrorT">ErrorT</a> e m a)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad.html#t:Functor">Functor</a> f, Show1 f, Show1 g, <a href="ClassyPrelude.html#t:Show">Show</a> a) => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-transformers-doc/html/Data-Functor-Compose.html#t:Compose">Compose</a> f g a)</td><td class="doc empty"> </td></tr><tr><td class="src">(Show1 f, Show1 g, <a href="ClassyPrelude.html#t:Show">Show</a> a) => <a href="ClassyPrelude.html#t:Show">Show</a> (<a href="/usr/share/doc/libghc-transformers-doc/html/Data-Functor-Product.html#t:Product">Product</a> f g a)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Show">Show</a> a, <a href="ClassyPrelude.html#t:Show">Show</a> b, <a href="ClassyPrelude.html#t:Show">Show</a> c, <a href="ClassyPrelude.html#t:Show">Show</a> d) => <a href="ClassyPrelude.html#t:Show">Show</a> (a, b, c, d)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Show">Show</a> a, <a href="ClassyPrelude.html#t:Show">Show</a> b, <a href="ClassyPrelude.html#t:Show">Show</a> c, <a href="ClassyPrelude.html#t:Show">Show</a> d, <a href="ClassyPrelude.html#t:Show">Show</a> e) => <a href="ClassyPrelude.html#t:Show">Show</a> (a, b, c, d, e)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Show">Show</a> a, <a href="ClassyPrelude.html#t:Show">Show</a> b, <a href="ClassyPrelude.html#t:Show">Show</a> c, <a href="ClassyPrelude.html#t:Show">Show</a> d, <a href="ClassyPrelude.html#t:Show">Show</a> e, <a href="ClassyPrelude.html#t:Show">Show</a> f) => <a href="ClassyPrelude.html#t:Show">Show</a> (a, b, c, d, e, f)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Show">Show</a> a, <a href="ClassyPrelude.html#t:Show">Show</a> b, <a href="ClassyPrelude.html#t:Show">Show</a> c, <a href="ClassyPrelude.html#t:Show">Show</a> d, <a href="ClassyPrelude.html#t:Show">Show</a> e, <a href="ClassyPrelude.html#t:Show">Show</a> f, <a href="ClassyPrelude.html#t:Show">Show</a> g) => <a href="ClassyPrelude.html#t:Show">Show</a> (a, b, c, d, e, f, g)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Show">Show</a> a, <a href="ClassyPrelude.html#t:Show">Show</a> b, <a href="ClassyPrelude.html#t:Show">Show</a> c, <a href="ClassyPrelude.html#t:Show">Show</a> d, <a href="ClassyPrelude.html#t:Show">Show</a> e, <a href="ClassyPrelude.html#t:Show">Show</a> f, <a href="ClassyPrelude.html#t:Show">Show</a> g, <a href="ClassyPrelude.html#t:Show">Show</a> h) => <a href="ClassyPrelude.html#t:Show">Show</a> (a, b, c, d, e, f, g, h)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Show">Show</a> a, <a href="ClassyPrelude.html#t:Show">Show</a> b, <a href="ClassyPrelude.html#t:Show">Show</a> c, <a href="ClassyPrelude.html#t:Show">Show</a> d, <a href="ClassyPrelude.html#t:Show">Show</a> e, <a href="ClassyPrelude.html#t:Show">Show</a> f, <a href="ClassyPrelude.html#t:Show">Show</a> g, <a href="ClassyPrelude.html#t:Show">Show</a> h, <a href="ClassyPrelude.html#t:Show">Show</a> i) => <a href="ClassyPrelude.html#t:Show">Show</a> (a, b, c, d, e, f, g, h, i)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Show">Show</a> a, <a href="ClassyPrelude.html#t:Show">Show</a> b, <a href="ClassyPrelude.html#t:Show">Show</a> c, <a href="ClassyPrelude.html#t:Show">Show</a> d, <a href="ClassyPrelude.html#t:Show">Show</a> e, <a href="ClassyPrelude.html#t:Show">Show</a> f, <a href="ClassyPrelude.html#t:Show">Show</a> g, <a href="ClassyPrelude.html#t:Show">Show</a> h, <a href="ClassyPrelude.html#t:Show">Show</a> i, <a href="ClassyPrelude.html#t:Show">Show</a> j) => <a href="ClassyPrelude.html#t:Show">Show</a> (a, b, c, d, e, f, g, h, i, j)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Show">Show</a> a, <a href="ClassyPrelude.html#t:Show">Show</a> b, <a href="ClassyPrelude.html#t:Show">Show</a> c, <a href="ClassyPrelude.html#t:Show">Show</a> d, <a href="ClassyPrelude.html#t:Show">Show</a> e, <a href="ClassyPrelude.html#t:Show">Show</a> f, <a href="ClassyPrelude.html#t:Show">Show</a> g, <a href="ClassyPrelude.html#t:Show">Show</a> h, <a href="ClassyPrelude.html#t:Show">Show</a> i, <a href="ClassyPrelude.html#t:Show">Show</a> j, <a href="ClassyPrelude.html#t:Show">Show</a> k) => <a href="ClassyPrelude.html#t:Show">Show</a> (a, b, c, d, e, f, g, h, i, j, k)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Show">Show</a> a, <a href="ClassyPrelude.html#t:Show">Show</a> b, <a href="ClassyPrelude.html#t:Show">Show</a> c, <a href="ClassyPrelude.html#t:Show">Show</a> d, <a href="ClassyPrelude.html#t:Show">Show</a> e, <a href="ClassyPrelude.html#t:Show">Show</a> f, <a href="ClassyPrelude.html#t:Show">Show</a> g, <a href="ClassyPrelude.html#t:Show">Show</a> h, <a href="ClassyPrelude.html#t:Show">Show</a> i, <a href="ClassyPrelude.html#t:Show">Show</a> j, <a href="ClassyPrelude.html#t:Show">Show</a> k, <a href="ClassyPrelude.html#t:Show">Show</a> l) => <a href="ClassyPrelude.html#t:Show">Show</a> (a, b, c, d, e, f, g, h, i, j, k, l)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Show">Show</a> a, <a href="ClassyPrelude.html#t:Show">Show</a> b, <a href="ClassyPrelude.html#t:Show">Show</a> c, <a href="ClassyPrelude.html#t:Show">Show</a> d, <a href="ClassyPrelude.html#t:Show">Show</a> e, <a href="ClassyPrelude.html#t:Show">Show</a> f, <a href="ClassyPrelude.html#t:Show">Show</a> g, <a href="ClassyPrelude.html#t:Show">Show</a> h, <a href="ClassyPrelude.html#t:Show">Show</a> i, <a href="ClassyPrelude.html#t:Show">Show</a> j, <a href="ClassyPrelude.html#t:Show">Show</a> k, <a href="ClassyPrelude.html#t:Show">Show</a> l, <a href="ClassyPrelude.html#t:Show">Show</a> m) => <a href="ClassyPrelude.html#t:Show">Show</a> (a, b, c, d, e, f, g, h, i, j, k, l, m)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Show">Show</a> a, <a href="ClassyPrelude.html#t:Show">Show</a> b, <a href="ClassyPrelude.html#t:Show">Show</a> c, <a href="ClassyPrelude.html#t:Show">Show</a> d, <a href="ClassyPrelude.html#t:Show">Show</a> e, <a href="ClassyPrelude.html#t:Show">Show</a> f, <a href="ClassyPrelude.html#t:Show">Show</a> g, <a href="ClassyPrelude.html#t:Show">Show</a> h, <a href="ClassyPrelude.html#t:Show">Show</a> i, <a href="ClassyPrelude.html#t:Show">Show</a> j, <a href="ClassyPrelude.html#t:Show">Show</a> k, <a href="ClassyPrelude.html#t:Show">Show</a> l, <a href="ClassyPrelude.html#t:Show">Show</a> m, <a href="ClassyPrelude.html#t:Show">Show</a> n) => <a href="ClassyPrelude.html#t:Show">Show</a> (a, b, c, d, e, f, g, h, i, j, k, l, m, n)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:Show">Show</a> a, <a href="ClassyPrelude.html#t:Show">Show</a> b, <a href="ClassyPrelude.html#t:Show">Show</a> c, <a href="ClassyPrelude.html#t:Show">Show</a> d, <a href="ClassyPrelude.html#t:Show">Show</a> e, <a href="ClassyPrelude.html#t:Show">Show</a> f, <a href="ClassyPrelude.html#t:Show">Show</a> g, <a href="ClassyPrelude.html#t:Show">Show</a> h, <a href="ClassyPrelude.html#t:Show">Show</a> i, <a href="ClassyPrelude.html#t:Show">Show</a> j, <a href="ClassyPrelude.html#t:Show">Show</a> k, <a href="ClassyPrelude.html#t:Show">Show</a> l, <a href="ClassyPrelude.html#t:Show">Show</a> m, <a href="ClassyPrelude.html#t:Show">Show</a> n, <a href="ClassyPrelude.html#t:Show">Show</a> o) => <a href="ClassyPrelude.html#t:Show">Show</a> (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o)</td><td class="doc empty"> </td></tr></table></div></div></div><div class="top"><p class="src"><a name="v:tshow" class="def">tshow</a> :: <a href="ClassyPrelude.html#t:Show">Show</a> a => a -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Text">Text</a><a href="src/ClassyPrelude.html#tshow" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:tlshow" class="def">tlshow</a> :: <a href="ClassyPrelude.html#t:Show">Show</a> a => a -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:LText">LText</a><a href="src/ClassyPrelude.html#tlshow" class="link">Source</a></p></div><h3 id="g:17">Case conversion
</h3><div class="top"><p class="src"><a name="v:charToLower" class="def">charToLower</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Char.html#t:Char">Char</a> -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Char.html#t:Char">Char</a><a href="src/ClassyPrelude.html#charToLower" class="link">Source</a></p><div class="doc"><p>Convert a character to lower case.
</p><p>Character-based case conversion is lossy in comparison to string-based <code><a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:toLower">toLower</a></code>.
For instance, 'İ' will be converted to 'i', instead of "i̇".
</p></div></div><div class="top"><p class="src"><a name="v:charToUpper" class="def">charToUpper</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Char.html#t:Char">Char</a> -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Char.html#t:Char">Char</a><a href="src/ClassyPrelude.html#charToUpper" class="link">Source</a></p><div class="doc"><p>Convert a character to upper case.
</p><p>Character-based case conversion is lossy in comparison to string-based <code><a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-MonoTraversable.html#t:toUpper">toUpper</a></code>.
For instance, 'ß' won't be converted to "SS".
</p></div></div><h2 id="g:18">IO
</h2><div class="top"><p class="src"><span class="keyword">class</span> <a href="/usr/share/doc/libghc-mono-traversable-doc/html/Data-Sequences.html#t:IsSequence">IsSequence</a> a => <a name="t:IOData" class="def">IOData</a> a <span class="keyword">where</span></p><div class="doc"><p>Data which can be read to and from files and handles.
</p><p>Note that, for lazy sequences, these operations may perform
lazy I/O.
</p></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:readFile" class="def">readFile</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:MonadIO">MonadIO</a> m => <a href="/usr/share/doc/libghc-system-filepath-doc/html/Filesystem-Path.html#t:FilePath">FilePath</a> -> m a</p><p class="src"><a name="v:writeFile" class="def">writeFile</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:MonadIO">MonadIO</a> m => <a href="/usr/share/doc/libghc-system-filepath-doc/html/Filesystem-Path.html#t:FilePath">FilePath</a> -> a -> m ()</p><p class="src"><a name="v:getLine" class="def">getLine</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:MonadIO">MonadIO</a> m => m a</p><p class="src"><a name="v:hGetContents" class="def">hGetContents</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:MonadIO">MonadIO</a> m => <a href="ClassyPrelude.html#t:Handle">Handle</a> -> m a</p><p class="src"><a name="v:hGetLine" class="def">hGetLine</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:MonadIO">MonadIO</a> m => <a href="ClassyPrelude.html#t:Handle">Handle</a> -> m a</p><p class="src"><a name="v:hPut" class="def">hPut</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:MonadIO">MonadIO</a> m => <a href="ClassyPrelude.html#t:Handle">Handle</a> -> a -> m ()</p><p class="src"><a name="v:hPutStrLn" class="def">hPutStrLn</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:MonadIO">MonadIO</a> m => <a href="ClassyPrelude.html#t:Handle">Handle</a> -> a -> m ()</p><p class="src"><a name="v:hGetChunk" class="def">hGetChunk</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:MonadIO">MonadIO</a> m => <a href="ClassyPrelude.html#t:Handle">Handle</a> -> m a</p></div><div class="subs instances"><p id="control.i:IOData" class="caption collapser" onclick="toggleSection('i:IOData')">Instances</p><div id="section.i:IOData" class="show"><table><tr><td class="src"><a href="ClassyPrelude.html#t:IOData">IOData</a> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Text">Text</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:IOData">IOData</a> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:ByteString">ByteString</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:IOData">IOData</a> <a href="/usr/share/doc/ghc-doc/html/libraries/bytestring-0.10.0.2/Data-ByteString-Lazy.html#t:ByteString">ByteString</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:IOData">IOData</a> <a href="/usr/share/doc/libghc-text-doc/html/Data-Text-Lazy-Internal.html#t:Text">Text</a></td><td class="doc empty"> </td></tr><tr><td class="src">~ * <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Char.html#t:Char">Char</a> c => <a href="ClassyPrelude.html#t:IOData">IOData</a> [c]</td><td class="doc empty"> </td></tr></table></div></div></div><div class="top"><p class="src"><a name="v:print" class="def">print</a> :: (<a href="ClassyPrelude.html#t:Show">Show</a> a, <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:MonadIO">MonadIO</a> m) => a -> m ()<a href="src/ClassyPrelude.html#print" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:hClose" class="def">hClose</a> :: <a href="ClassyPrelude.html#t:Handle">Handle</a> -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/System-IO.html#t:IO">IO</a> ()</p><div class="doc"><p>Computation <code><a href="ClassyPrelude.html#v:hClose">hClose</a></code> <code>hdl</code> makes handle <code>hdl</code> closed. Before the
computation finishes, if <code>hdl</code> is writable its buffer is flushed as
for <code><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/GHC-IO-Handle.html#v:hFlush">hFlush</a></code>.
Performing <code><a href="ClassyPrelude.html#v:hClose">hClose</a></code> on a handle that has already been closed has no effect;
doing so is not an error. All other operations on a closed handle will fail.
If <code><a href="ClassyPrelude.html#v:hClose">hClose</a></code> fails for any reason, any further operations (apart from
<code><a href="ClassyPrelude.html#v:hClose">hClose</a></code>) on the handle will still fail as if <code>hdl</code> had been successfully
closed.
</p></div></div><h2 id="g:19">FilePath
</h2><div class="top"><p class="src"><a name="v:fpToString" class="def">fpToString</a> :: <a href="/usr/share/doc/libghc-system-filepath-doc/html/Filesystem-Path.html#t:FilePath">FilePath</a> -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-String.html#t:String">String</a><a href="src/ClassyPrelude.html#fpToString" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:fpFromString" class="def">fpFromString</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-String.html#t:String">String</a> -> <a href="/usr/share/doc/libghc-system-filepath-doc/html/Filesystem-Path.html#t:FilePath">FilePath</a><a href="src/ClassyPrelude.html#fpFromString" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:fpToText" class="def">fpToText</a> :: <a href="/usr/share/doc/libghc-system-filepath-doc/html/Filesystem-Path.html#t:FilePath">FilePath</a> -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Text">Text</a><a href="src/ClassyPrelude.html#fpToText" class="link">Source</a></p><div class="doc"><p>Translates a FilePath to a Text
This translation is not correct for a (unix) filename
which can contain arbitrary (non-unicode) bytes: those bytes will be discarded
</p><p>This means you cannot translate the Text back to the original file name.
</p><p>If you control or otherwise understand the filenames
and believe them to be unicode valid consider using <code><a href="ClassyPrelude.html#v:fpToTextEx">fpToTextEx</a></code> or <code><a href="ClassyPrelude.html#v:fpToTextWarn">fpToTextWarn</a></code>
</p></div></div><div class="top"><p class="src"><a name="v:fpFromText" class="def">fpFromText</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Text">Text</a> -> <a href="/usr/share/doc/libghc-system-filepath-doc/html/Filesystem-Path.html#t:FilePath">FilePath</a><a href="src/ClassyPrelude.html#fpFromText" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:fpToTextWarn" class="def">fpToTextWarn</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:MonadIO">MonadIO</a> m => <a href="/usr/share/doc/libghc-system-filepath-doc/html/Filesystem-Path.html#t:FilePath">FilePath</a> -> m <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Text">Text</a><a href="src/ClassyPrelude.html#fpToTextWarn" class="link">Source</a></p><div class="doc"><p>Translates a FilePath to a Text
Warns if there are non-unicode
sequences in the file name
</p></div></div><div class="top"><p class="src"><a name="v:fpToTextEx" class="def">fpToTextEx</a> :: <a href="/usr/share/doc/libghc-system-filepath-doc/html/Filesystem-Path.html#t:FilePath">FilePath</a> -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Text">Text</a><a href="src/ClassyPrelude.html#fpToTextEx" class="link">Source</a></p><div class="doc"><p>Translates a FilePath to a Text
Throws an exception if there are non-unicode
sequences in the file name
</p><p>Use this to assert that you know
a filename will translate properly into a Text
If you created the filename, this should be the case.
</p></div></div><h2 id="g:20">Exceptions
</h2><div class="top"><p class="src">module <a href="/usr/share/doc/libghc-enclosed-exceptions-doc/html/Control-Exception-Enclosed.html">Control.Exception.Enclosed</a></p></div><div class="top"><p class="src"><span class="keyword">class</span> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Monad.html#t:Monad">Monad</a> m => <a name="t:MonadThrow" class="def">MonadThrow</a> m <span class="keyword">where</span></p><div class="doc"><p>A class for monads in which exceptions may be thrown.
</p><p>Instances should obey the following law:
</p><pre> throwM e >> x = throwM e
</pre><p>In other words, throwing an exception short-circuits the rest of the monadic
computation.
</p></div><div class="subs methods"><p class="caption">Methods</p><p class="src"><a name="v:throwM" class="def">throwM</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Exception-Base.html#t:Exception">Exception</a> e => e -> m a</p><div class="doc"><p>Throw an exception. Note that this throws when this action is run in
the monad <code>m</code>, not when it is applied. It is a generalization of
<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Exception.html">Control.Exception</a>'s <code><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Exception-Base.html#v:throwIO">throwIO</a></code>.
</p><p>Should satisfy the law:
</p><pre> throwM e >> f = throwM e
</pre></div></div><div class="subs instances"><p id="control.i:MonadThrow" class="caption collapser" onclick="toggleSection('i:MonadThrow')">Instances</p><div id="section.i:MonadThrow" class="show"><table><tr><td class="src"><a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> []</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/System-IO.html#t:IO">IO</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Maybe.html#t:Maybe">Maybe</a></td><td class="doc empty"> </td></tr><tr><td class="src">~ * e <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Control-Exception-Base.html#t:SomeException">SomeException</a> => <a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Either.html#t:Either">Either</a> e)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> m => <a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> (<a href="/usr/share/doc/libghc-transformers-doc/html/Control-Monad-Trans-Maybe.html#t:MaybeT">MaybeT</a> m)</td><td class="doc"><p>Throws exceptions into the base monad.
</p></td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> m => <a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> (<a href="/usr/share/doc/libghc-transformers-doc/html/Control-Monad-Trans-List.html#t:ListT">ListT</a> m)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> m => <a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> (<a href="/usr/share/doc/libghc-transformers-doc/html/Control-Monad-Trans-Identity.html#t:IdentityT">IdentityT</a> m)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> m, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Monoid">Monoid</a> w) => <a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> (<a href="/usr/share/doc/libghc-transformers-doc/html/Control-Monad-Trans-Writer-Strict.html#t:WriterT">WriterT</a> w m)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> m, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Monoid">Monoid</a> w) => <a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> (<a href="/usr/share/doc/libghc-transformers-doc/html/Control-Monad-Trans-Writer-Lazy.html#t:WriterT">WriterT</a> w m)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> m => <a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> (<a href="/usr/share/doc/libghc-transformers-doc/html/Control-Monad-Trans-State-Strict.html#t:StateT">StateT</a> s m)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> m => <a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> (<a href="/usr/share/doc/libghc-transformers-doc/html/Control-Monad-Trans-State-Lazy.html#t:StateT">StateT</a> s m)</td><td class="doc empty"> </td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> m => <a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> (<a href="/usr/share/doc/libghc-transformers-doc/html/Control-Monad-Trans-Reader.html#t:ReaderT">ReaderT</a> r m)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="/usr/share/doc/libghc-transformers-doc/html/Control-Monad-Trans-Error.html#t:Error">Error</a> e, <a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> m) => <a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> (<a href="/usr/share/doc/libghc-transformers-doc/html/Control-Monad-Trans-Error.html#t:ErrorT">ErrorT</a> e m)</td><td class="doc"><p>Throws exceptions into the base monad.
</p></td></tr><tr><td class="src"><a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> m => <a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> (<a href="/usr/share/doc/libghc-transformers-doc/html/Control-Monad-Trans-Cont.html#t:ContT">ContT</a> r m)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> m, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Monoid">Monoid</a> w) => <a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> (<a href="/usr/share/doc/libghc-transformers-doc/html/Control-Monad-Trans-RWS-Strict.html#t:RWST">RWST</a> r w s m)</td><td class="doc empty"> </td></tr><tr><td class="src">(<a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> m, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Monoid.html#t:Monoid">Monoid</a> w) => <a href="ClassyPrelude.html#t:MonadThrow">MonadThrow</a> (<a href="/usr/share/doc/libghc-transformers-doc/html/Control-Monad-Trans-RWS-Lazy.html#t:RWST">RWST</a> r w s m)</td><td class="doc empty"> </td></tr></table></div></div></div><h2 id="g:21">Force types
</h2><div class="doc"><p>Helper functions for situations where type inferer gets confused.
</p></div><div class="top"><p class="src"><a name="v:asByteString" class="def">asByteString</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:ByteString">ByteString</a> -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:ByteString">ByteString</a><a href="src/ClassyPrelude.html#asByteString" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:asLByteString" class="def">asLByteString</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:LByteString">LByteString</a> -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:LByteString">LByteString</a><a href="src/ClassyPrelude.html#asLByteString" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:asHashMap" class="def">asHashMap</a> :: <a href="/usr/share/doc/libghc-unordered-containers-doc/html/Data-HashMap-Strict.html#t:HashMap">HashMap</a> k v -> <a href="/usr/share/doc/libghc-unordered-containers-doc/html/Data-HashMap-Strict.html#t:HashMap">HashMap</a> k v<a href="src/ClassyPrelude.html#asHashMap" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:asHashSet" class="def">asHashSet</a> :: <a href="/usr/share/doc/libghc-unordered-containers-doc/html/Data-HashSet.html#t:HashSet">HashSet</a> a -> <a href="/usr/share/doc/libghc-unordered-containers-doc/html/Data-HashSet.html#t:HashSet">HashSet</a> a<a href="src/ClassyPrelude.html#asHashSet" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:asText" class="def">asText</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Text">Text</a> -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Text">Text</a><a href="src/ClassyPrelude.html#asText" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:asLText" class="def">asLText</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:LText">LText</a> -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:LText">LText</a><a href="src/ClassyPrelude.html#asLText" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:asList" class="def">asList</a> :: [a] -> [a]<a href="src/ClassyPrelude.html#asList" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:asMap" class="def">asMap</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Map">Map</a> k v -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Map">Map</a> k v<a href="src/ClassyPrelude.html#asMap" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:asIntMap" class="def">asIntMap</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:IntMap">IntMap</a> v -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:IntMap">IntMap</a> v<a href="src/ClassyPrelude.html#asIntMap" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:asMaybe" class="def">asMaybe</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Maybe.html#t:Maybe">Maybe</a> a -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Maybe.html#t:Maybe">Maybe</a> a<a href="src/ClassyPrelude.html#asMaybe" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:asSet" class="def">asSet</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Set">Set</a> a -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Set">Set</a> a<a href="src/ClassyPrelude.html#asSet" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:asIntSet" class="def">asIntSet</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:IntSet">IntSet</a> -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:IntSet">IntSet</a><a href="src/ClassyPrelude.html#asIntSet" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:asVector" class="def">asVector</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Vector">Vector</a> a -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:Vector">Vector</a> a<a href="src/ClassyPrelude.html#asVector" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:asUVector" class="def">asUVector</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:UVector">UVector</a> a -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:UVector">UVector</a> a<a href="src/ClassyPrelude.html#asUVector" class="link">Source</a></p></div><div class="top"><p class="src"><a name="v:asSVector" class="def">asSVector</a> :: <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:SVector">SVector</a> a -> <a href="/usr/share/doc/libghc-basic-prelude-doc/html/CorePrelude.html#t:SVector">SVector</a> a<a href="src/ClassyPrelude.html#asSVector" class="link">Source</a></p></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.13.2</p></div></body></html>
|