/usr/share/doc/libghc-syb-doc/html/Data-Generics-Twins.html is in libghc-syb-doc 0.3.6-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 | <!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>Data.Generics.Twins</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_Data-Generics-Twins.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/Data-Generics-Twins.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">syb-0.3.6: Scrap Your Boilerplate</p></div><div id="content"><div id="module-header"><table class="info"><tr><th>Portability</th><td>non-portable (local universal quantification)</td></tr><tr><th>Stability</th><td>experimental</td></tr><tr><th>Maintainer</th><td>generics@haskell.org</td></tr><tr><th>Safe Haskell</th><td>Safe-Infered</td></tr></table><p class="caption">Data.Generics.Twins</p></div><div id="table-of-contents"><p class="caption">Contents</p><ul><li><a href="#g:1">Generic folds and maps that also accumulate
</a></li><li><a href="#g:2">Mapping combinators for twin traversal
</a></li><li><a href="#g:3">Typical twin traversals
</a></li></ul></div><div id="description"><p class="caption">Description</p><div class="doc"><p>"Scrap your boilerplate" --- Generic programming in Haskell
See <a href="http://www.cs.uu.nl/wiki/GenericProgramming/SYB">http://www.cs.uu.nl/wiki/GenericProgramming/SYB</a>. The present module
provides support for multi-parameter traversal, which is also
demonstrated with generic operations like equality.
</p></div></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"><a href="#v:gfoldlAccum">gfoldlAccum</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> d => (<span class="keyword">forall</span> e r. <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> e => a -> c (e -> r) -> e -> (a, c r)) -> (<span class="keyword">forall</span> g. a -> g -> (a, c g)) -> a -> d -> (a, c d)</li><li class="src short"><a href="#v:gmapAccumT">gmapAccumT</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> d => (<span class="keyword">forall</span> e. <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> e => a -> e -> (a, e)) -> a -> d -> (a, d)</li><li class="src short"><a href="#v:gmapAccumM">gmapAccumM</a> :: (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> d, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Control-Monad.html#t:Monad">Monad</a> m) => (<span class="keyword">forall</span> e. <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> e => a -> e -> (a, m e)) -> a -> d -> (a, m d)</li><li class="src short"><a href="#v:gmapAccumQl">gmapAccumQl</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> d => (r -> r' -> r) -> r -> (<span class="keyword">forall</span> e. <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> e => a -> e -> (a, r')) -> a -> d -> (a, r)</li><li class="src short"><a href="#v:gmapAccumQr">gmapAccumQr</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> d => (r' -> r -> r) -> r -> (<span class="keyword">forall</span> e. <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> e => a -> e -> (a, r')) -> a -> d -> (a, r)</li><li class="src short"><a href="#v:gmapAccumQ">gmapAccumQ</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> d => (<span class="keyword">forall</span> e. <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> e => a -> e -> (a, q)) -> a -> d -> (a, [q])</li><li class="src short"><a href="#v:gmapAccumA">gmapAccumA</a> :: <span class="keyword">forall</span> b d a. (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> d, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Control-Applicative.html#t:Applicative">Applicative</a> a) => (<span class="keyword">forall</span> e. <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> e => b -> e -> (b, a e)) -> b -> d -> (b, a d)</li><li class="src short"><a href="#v:gzipWithT">gzipWithT</a> :: <a href="Data-Generics-Aliases.html#t:GenericQ">GenericQ</a> <a href="Data-Generics-Aliases.html#t:GenericT">GenericT</a> -> <a href="Data-Generics-Aliases.html#t:GenericQ">GenericQ</a> <a href="Data-Generics-Aliases.html#t:GenericT">GenericT</a></li><li class="src short"><a href="#v:gzipWithM">gzipWithM</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Control-Monad.html#t:Monad">Monad</a> m => <a href="Data-Generics-Aliases.html#t:GenericQ">GenericQ</a> (<a href="Data-Generics-Aliases.html#t:GenericM">GenericM</a> m) -> <a href="Data-Generics-Aliases.html#t:GenericQ">GenericQ</a> (<a href="Data-Generics-Aliases.html#t:GenericM">GenericM</a> m)</li><li class="src short"><a href="#v:gzipWithQ">gzipWithQ</a> :: <a href="Data-Generics-Aliases.html#t:GenericQ">GenericQ</a> (<a href="Data-Generics-Aliases.html#t:GenericQ">GenericQ</a> r) -> <a href="Data-Generics-Aliases.html#t:GenericQ">GenericQ</a> (<a href="Data-Generics-Aliases.html#t:GenericQ">GenericQ</a> [r])</li><li class="src short"><a href="#v:geq">geq</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> a => a -> a -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Bool.html#t:Bool">Bool</a></li><li class="src short"><a href="#v:gzip">gzip</a> :: <a href="Data-Generics-Aliases.html#t:GenericQ">GenericQ</a> (<a href="Data-Generics-Aliases.html#t:GenericM">GenericM</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Maybe.html#t:Maybe">Maybe</a>) -> <a href="Data-Generics-Aliases.html#t:GenericQ">GenericQ</a> (<a href="Data-Generics-Aliases.html#t:GenericM">GenericM</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Maybe.html#t:Maybe">Maybe</a>)</li></ul></div><div id="interface"><h1 id="g:1">Generic folds and maps that also accumulate
</h1><div class="top"><p class="src"><a name="v:gfoldlAccum" class="def">gfoldlAccum</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> d => (<span class="keyword">forall</span> e r. <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> e => a -> c (e -> r) -> e -> (a, c r)) -> (<span class="keyword">forall</span> g. a -> g -> (a, c g)) -> a -> d -> (a, c d)<a href="src/Data-Generics-Twins.html#gfoldlAccum" class="link">Source</a></p><div class="doc"><p>gfoldl with accumulation
</p></div></div><div class="top"><p class="src"><a name="v:gmapAccumT" class="def">gmapAccumT</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> d => (<span class="keyword">forall</span> e. <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> e => a -> e -> (a, e)) -> a -> d -> (a, d)<a href="src/Data-Generics-Twins.html#gmapAccumT" class="link">Source</a></p><div class="doc"><p>gmapT with accumulation
</p></div></div><div class="top"><p class="src"><a name="v:gmapAccumM" class="def">gmapAccumM</a> :: (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> d, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Control-Monad.html#t:Monad">Monad</a> m) => (<span class="keyword">forall</span> e. <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> e => a -> e -> (a, m e)) -> a -> d -> (a, m d)<a href="src/Data-Generics-Twins.html#gmapAccumM" class="link">Source</a></p><div class="doc"><p>gmapM with accumulation
</p></div></div><div class="top"><p class="src"><a name="v:gmapAccumQl" class="def">gmapAccumQl</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> d => (r -> r' -> r) -> r -> (<span class="keyword">forall</span> e. <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> e => a -> e -> (a, r')) -> a -> d -> (a, r)<a href="src/Data-Generics-Twins.html#gmapAccumQl" class="link">Source</a></p><div class="doc"><p>gmapQl with accumulation
</p></div></div><div class="top"><p class="src"><a name="v:gmapAccumQr" class="def">gmapAccumQr</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> d => (r' -> r -> r) -> r -> (<span class="keyword">forall</span> e. <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> e => a -> e -> (a, r')) -> a -> d -> (a, r)<a href="src/Data-Generics-Twins.html#gmapAccumQr" class="link">Source</a></p><div class="doc"><p>gmapQr with accumulation
</p></div></div><div class="top"><p class="src"><a name="v:gmapAccumQ" class="def">gmapAccumQ</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> d => (<span class="keyword">forall</span> e. <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> e => a -> e -> (a, q)) -> a -> d -> (a, [q])<a href="src/Data-Generics-Twins.html#gmapAccumQ" class="link">Source</a></p><div class="doc"><p>gmapQ with accumulation
</p></div></div><div class="top"><p class="src"><a name="v:gmapAccumA" class="def">gmapAccumA</a> :: <span class="keyword">forall</span> b d a. (<a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> d, <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Control-Applicative.html#t:Applicative">Applicative</a> a) => (<span class="keyword">forall</span> e. <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> e => b -> e -> (b, a e)) -> b -> d -> (b, a d)<a href="src/Data-Generics-Twins.html#gmapAccumA" class="link">Source</a></p><div class="doc"><p>Applicative version
</p></div></div><h1 id="g:2">Mapping combinators for twin traversal
</h1><div class="top"><p class="src"><a name="v:gzipWithT" class="def">gzipWithT</a> :: <a href="Data-Generics-Aliases.html#t:GenericQ">GenericQ</a> <a href="Data-Generics-Aliases.html#t:GenericT">GenericT</a> -> <a href="Data-Generics-Aliases.html#t:GenericQ">GenericQ</a> <a href="Data-Generics-Aliases.html#t:GenericT">GenericT</a><a href="src/Data-Generics-Twins.html#gzipWithT" class="link">Source</a></p><div class="doc"><p>Twin map for transformation
</p></div></div><div class="top"><p class="src"><a name="v:gzipWithM" class="def">gzipWithM</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Control-Monad.html#t:Monad">Monad</a> m => <a href="Data-Generics-Aliases.html#t:GenericQ">GenericQ</a> (<a href="Data-Generics-Aliases.html#t:GenericM">GenericM</a> m) -> <a href="Data-Generics-Aliases.html#t:GenericQ">GenericQ</a> (<a href="Data-Generics-Aliases.html#t:GenericM">GenericM</a> m)<a href="src/Data-Generics-Twins.html#gzipWithM" class="link">Source</a></p><div class="doc"><p>Twin map for monadic transformation
</p></div></div><div class="top"><p class="src"><a name="v:gzipWithQ" class="def">gzipWithQ</a> :: <a href="Data-Generics-Aliases.html#t:GenericQ">GenericQ</a> (<a href="Data-Generics-Aliases.html#t:GenericQ">GenericQ</a> r) -> <a href="Data-Generics-Aliases.html#t:GenericQ">GenericQ</a> (<a href="Data-Generics-Aliases.html#t:GenericQ">GenericQ</a> [r])<a href="src/Data-Generics-Twins.html#gzipWithQ" class="link">Source</a></p><div class="doc"><p>Twin map for queries
</p></div></div><h1 id="g:3">Typical twin traversals
</h1><div class="top"><p class="src"><a name="v:geq" class="def">geq</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Data.html#t:Data">Data</a> a => a -> a -> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Bool.html#t:Bool">Bool</a><a href="src/Data-Generics-Twins.html#geq" class="link">Source</a></p><div class="doc"><p>Generic equality: an alternative to "deriving Eq"
</p></div></div><div class="top"><p class="src"><a name="v:gzip" class="def">gzip</a> :: <a href="Data-Generics-Aliases.html#t:GenericQ">GenericQ</a> (<a href="Data-Generics-Aliases.html#t:GenericM">GenericM</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Maybe.html#t:Maybe">Maybe</a>) -> <a href="Data-Generics-Aliases.html#t:GenericQ">GenericQ</a> (<a href="Data-Generics-Aliases.html#t:GenericM">GenericM</a> <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.5.0.0/Data-Maybe.html#t:Maybe">Maybe</a>)<a href="src/Data-Generics-Twins.html#gzip" class="link">Source</a></p><div class="doc"><p>Generic zip controlled by a function with type-specific branches
</p></div></div></div></div><div id="footer"><p>Produced by <a href="http://www.haskell.org/haddock/">Haddock</a> version 2.10.0</p></div></body></html>
|