/usr/share/doc/libghc-ghc-syb-utils-doc/html/GHC-SYB-Utils.html is in libghc-ghc-syb-utils-doc 0.2.1.1-2build2.
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 | <!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>GHC.SYB.Utils</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_GHC-SYB-Utils.html");};
//]]>
</script></head><body><div id="package-header"><ul class="links" id="page-menu"><li><a href="src/GHC-SYB-Utils.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">ghc-syb-utils-0.2.1.1: Scrap Your Boilerplate utilities for the GHC API.</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">GHC.SYB.Utils</p></div><div id="description"><p class="caption">Description</p><div class="doc"><p><a href="GHC-Syb-Utils.html">GHC.Syb.Utils</a> provides common utilities for the Ghc Api,
either based on Data/Typeable or for use with Data.Generics
over Ghc Api types.
</p><p>example output of <code><a href="GHC-SYB-Utils.html#v:showData">showData</a></code> on <code><a href="/usr/share/doc/ghc-doc/html/libraries/ghc-7.6.3/GHC.html#v:parsedSource">parsedSource</a></code>, <code><a href="/usr/share/doc/ghc-doc/html/libraries/ghc-7.6.3/GHC.html#v:renamedSource">renamedSource</a></code>, and
<code><a href="/usr/share/doc/ghc-doc/html/libraries/ghc-7.6.3/GHC.html#v:typecheckedSource">typecheckedSource</a></code> for a trivial <code>HelloWorld</code> module, compared with
<code><a href="/usr/share/doc/ghc-doc/html/libraries/ghc-7.6.3/Outputable.html#v:ppr">ppr</a></code> output:
</p><pre>
------------------------- pretty-printed parsedSource
module HelloWorld where
main = putStrLn <a href="Hello, World!.html">Hello, World!</a>
------------------------- pretty-printed renamedSource
Just (HelloWorld.main = System.IO.putStrLn <a href="Hello, World!.html">Hello, World!</a>,
[import Prelude],
Nothing,
Nothing,
(HaddockModInfo
(Nothing)
(Nothing)
(Nothing)
(Nothing)))
------------------------- pretty-printed typecheckedSource
Just <AbsBinds [] [] [HelloWorld.main <= [] main]
HelloWorld.main :: GHC.IOBase.IO ()
[]
{ main = System.IO.putStrLn <a href="Hello, World!.html">Hello, World!</a> }>
------------------------- shown parsedSource
(L {HelloWorld.hs:1:0}
(HsModule
(Just
(L {HelloWorld.hs:1:7-16} {ModuleName: HelloWorld}))
(Nothing)
[]
[
(L {HelloWorld.hs:2:0-30}
(ValD
(FunBind
(L {HelloWorld.hs:2:0-3}
(Unqual {OccName: main}))
(False)
(MatchGroup
[
(L {HelloWorld.hs:2:0-30}
(Match
[]
(Nothing)
(GRHSs
[
(L {HelloWorld.hs:2:7-30}
(GRHS
[]
(L {HelloWorld.hs:2:7-30}
(HsApp
(L {HelloWorld.hs:2:7-14}
(HsVar
(Unqual {OccName: putStrLn})))
(L {HelloWorld.hs:2:16-30}
(HsLit
(HsString {FastString: <a href="Hello, World!.html">Hello, World!</a>})))))))]
(EmptyLocalBinds))))] {!type placeholder here?!})
(WpHole) {!NameSet placeholder here!}
(Nothing))))]
(Nothing)
(HaddockModInfo
(Nothing)
(Nothing)
(Nothing)
(Nothing))
(Nothing)))
------------------------- shown renamedSource
((,,,,)
(HsGroup
(ValBindsOut
[
((,)
(NonRecursive) {Bag(Located (HsBind Name)):
[
(L {HelloWorld.hs:2:0-30}
(FunBind
(L {HelloWorld.hs:2:0-3} {Name: HelloWorld.main})
(False)
(MatchGroup
[
(L {HelloWorld.hs:2:0-30}
(Match
[]
(Nothing)
(GRHSs
[
(L {HelloWorld.hs:2:7-30}
(GRHS
[]
(L {HelloWorld.hs:2:7-30}
(HsApp
(L {HelloWorld.hs:2:7-14}
(HsVar {Name: System.IO.putStrLn}))
(L {HelloWorld.hs:2:16-30}
(HsLit
(HsString {FastString: <a href="Hello, World!.html">Hello, World!</a>})))))))]
(EmptyLocalBinds))))] {!type placeholder here?!})
(WpHole) {NameSet:
[{Name: System.IO.putStrLn}]}
(Nothing)))]})]
[])
[]
[]
[]
[]
[]
[]
[]
[]
[])
[
(L {Implicit import declaration}
(ImportDecl
(L {Implicit import declaration} {ModuleName: Prelude})
(False)
(False)
(Nothing)
(Nothing)))]
(Nothing)
(Nothing)
(HaddockModInfo
(Nothing)
(Nothing)
(Nothing)
(Nothing)))
------------------------- shown typecheckedSource
{Bag(Located (HsBind Var)):
[
(L {HelloWorld.hs:2:0-30}
(AbsBinds
[]
[]
[
((,,,)
[] {Var: HelloWorld.main} {Var: main}
[])] {Bag(Located (HsBind Var)):
[
(L {HelloWorld.hs:2:0-30}
(FunBind
(L {HelloWorld.hs:2:0-3} {Var: main})
(False)
(MatchGroup
[
(L {HelloWorld.hs:2:0-30}
(Match
[]
(Nothing)
(GRHSs
[
(L {HelloWorld.hs:2:7-30}
(GRHS
[]
(L {HelloWorld.hs:2:7-30}
(HsApp
(L {HelloWorld.hs:2:7-14}
(HsVar {Var: System.IO.putStrLn}))
(L {HelloWorld.hs:2:16-30}
(HsLit
(HsString {FastString: <a href="Hello, World!.html">Hello, World!</a>})))))))]
(EmptyLocalBinds))))] GHC.IOBase.IO ())
(WpHole) {!NameSet placeholder here!}
(Nothing)))]}))]}
</pre></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:showSDoc_">showSDoc_</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/ghc-7.6.3/Outputable.html#t:SDoc">SDoc</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"><span class="keyword">data</span> <a href="#t:Stage">Stage</a> <ul class="subs"><li>= <a href="#v:Parser">Parser</a> </li><li>| <a href="#v:Renamer">Renamer</a> </li><li>| <a href="#v:TypeChecker">TypeChecker</a> </li></ul></li><li class="src short"><a href="#v:showData">showData</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Data.html#t:Data">Data</a> a => <a href="GHC-SYB-Utils.html#t:Stage">Stage</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/Data-String.html#t:String">String</a></li><li class="src short"><a href="#v:everythingStaged">everythingStaged</a> :: <a href="GHC-SYB-Utils.html#t:Stage">Stage</a> -> (r -> r -> r) -> r -> <a href="/usr/share/doc/libghc-syb-doc/html/Data-Generics-Aliases.html#t:GenericQ">GenericQ</a> r -> <a href="/usr/share/doc/libghc-syb-doc/html/Data-Generics-Aliases.html#t:GenericQ">GenericQ</a> r</li></ul></div><div id="interface"><h1>Documentation</h1><div class="top"><p class="src"><a name="v:showSDoc_" class="def">showSDoc_</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/ghc-7.6.3/Outputable.html#t:SDoc">SDoc</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/GHC-SYB-Utils.html#showSDoc_" class="link">Source</a></p></div><div class="top"><p class="src"><span class="keyword">data</span> <a name="t:Stage" class="def">Stage</a> <a href="src/GHC-SYB-Utils.html#Stage" class="link">Source</a></p><div class="doc"><p>Ghc Ast types tend to have undefined holes, to be filled
by later compiler phases. We tag Asts with their source,
so that we can avoid such holes based on who generated the Asts.
</p></div><div class="subs constructors"><p class="caption">Constructors</p><table><tr><td class="src"><a name="v:Parser" class="def">Parser</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a name="v:Renamer" class="def">Renamer</a></td><td class="doc empty"> </td></tr><tr><td class="src"><a name="v:TypeChecker" class="def">TypeChecker</a></td><td class="doc empty"> </td></tr></table></div><div class="subs instances"><p id="control.i:Stage" class="caption collapser" onclick="toggleSection('i:Stage')">Instances</p><div id="section.i:Stage" 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="GHC-SYB-Utils.html#t:Stage">Stage</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 href="GHC-SYB-Utils.html#t:Stage">Stage</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/Text-Show.html#t:Show">Show</a> <a href="GHC-SYB-Utils.html#t:Stage">Stage</a></td><td class="doc empty"> </td></tr></table></div></div></div><div class="top"><p class="src"><a name="v:showData" class="def">showData</a> :: <a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Data.html#t:Data">Data</a> a => <a href="GHC-SYB-Utils.html#t:Stage">Stage</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/Data-String.html#t:String">String</a><a href="src/GHC-SYB-Utils.html#showData" class="link">Source</a></p><div class="doc"><p>Generic Data-based show, with special cases for GHC Ast types,
and simplistic indentation-based layout (the <code><a href="/usr/share/doc/ghc-doc/html/libraries/base-4.6.0.1/Data-Int.html#t:Int">Int</a></code> parameter);
showing abstract types abstractly and avoiding known potholes
(based on the <code><a href="GHC-SYB-Utils.html#t:Stage">Stage</a></code> that generated the Ast)
</p></div></div><div class="top"><p class="src"><a name="v:everythingStaged" class="def">everythingStaged</a> :: <a href="GHC-SYB-Utils.html#t:Stage">Stage</a> -> (r -> r -> r) -> r -> <a href="/usr/share/doc/libghc-syb-doc/html/Data-Generics-Aliases.html#t:GenericQ">GenericQ</a> r -> <a href="/usr/share/doc/libghc-syb-doc/html/Data-Generics-Aliases.html#t:GenericQ">GenericQ</a> r<a href="src/GHC-SYB-Utils.html#everythingStaged" class="link">Source</a></p><div class="doc"><p>Like <code><a href="/usr/share/doc/libghc-syb-doc/html/Data-Generics-Schemes.html#v:everything">everything</a></code>, but avoid known potholes, based on the <code><a href="GHC-SYB-Utils.html#t:Stage">Stage</a></code> that
generated the Ast.
</p></div></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>
|