aboutsummaryrefslogtreecommitdiff
path: root/src/Haddock
Commit message (Collapse)AuthorAgeFilesLines
* Only use needsTemplateHaskell when compiling with GHC 6.10.2 or aboveDavid Waern2009-01-101-0/+4
|
* Fix Trac #68: Turn on compilation via C for Template Haskell packagesDavid Waern2009-01-101-1/+14
| | | | | | | | We can't use HscNothing if we need to run code coming from modules inside the processed package during typechecking, which is the case for some packages using Template Haskell. This could be improved, to e.g. use HscInterpreted and HscNothing where possible, instead of using HscC for all modules in the package.
* Export modules also when coming from external packagesDavid Waern2009-01-081-4/+15
| | | | | This seems to have regressed since a refactoring that was part of the 2.3.0 release.
* Do not process boot modulesDavid Waern2009-01-061-26/+38
| | | | | | | | | | We should of course not try to produce documentation for boot modules! The reason this has worked in the past is that the output of "real" modules overwrites the output of boot modules later in the process. However, this causes a subtle link environment problem. So let's get rid of this stupid behaviour. We avoid processing boot modules, but we continue to typecheck them.
* Show re-exported names from external packages againDavid Waern2009-01-026-44/+85
| | | | | | | This fixes GHC ticket 2746. In order to also link to the exported subordinate names of a declaration, we need to re-introduce the sub map in the .haddock files.
* Wrap the GHC usage with defaultCleanupHandlerIan Lynagh2008-12-111-5/+6
| | | | This fixes a bug where haddock leaves /tmp/ghc* directories uncleaned.
* Make visible names from ExportItemsDavid Waern2008-12-084-69/+29
| | | | | | | | | | | | | | Instead of a complicated calculation of visible names out of GHC's export items, we can get them straight out of the already calculated ExportItems. The ExportItems should represent exactly those items that are visible in an interface. If store all the exported sub-names in ExportDecl instead of only those with documentation, the calculation becomes very simple. So we do this change as well (should perhaps have been a separate patch). This should fix the problem with names from ghc-prim not appearing in the link environment.
* Make forall's in constructors explicit, i.e. data Foo = Foo {foo :: Eq a => a}Neil Mitchell2008-12-151-2/+8
|
* Resolve conflict properlyDavid Waern2008-12-071-0/+1
|
* Solve conflictDavid Waern2008-12-071-1/+0
|
* Haddock really shouldn't try to overwrite files.Thomas Schilling2008-11-291-1/+1
|
* Allow referring to a specific section within a module in a module linkRoman Cheplyaka2008-11-271-1/+1
| | | | Fixes #65
* Drop HsDocTy annotations, they mess up pretty printing and also have a ↵Neil Mitchell2008-11-271-9/+29
| | | | bracketing bug (#2584)
* FIX #45: generate two anchors for each nameDavid Waern2008-11-231-1/+9
| | | | | | We generate two anchor tags for each name, one where we don't escape the name and one where we URI-encode it. This is for compatibility between IE and Opera. Test output is updated.
* Store hidden modules in .haddock filesDavid Waern2008-11-152-7/+11
| | | | | | | | | | | | | We store documentation for an entity in the 'InstalledInterface' of the definition site module, and never in the same structure for a module which re-exports the entity. So when a client of the Haddock library wants to look up some documentation, he/she might need to access a hidden module. But we currently don't store hidden modules in the .haddock files. So we add the hidden modules and the Haddock options to the .haddock files. The options will be used to filter the module list to obtain the visible modules only, which is necessary for generating the contents and index for installed packages.
* Make DocName an instance of NamedThingDavid Waern2008-11-101-0/+7
|
* Document the functions in H.DocNameDavid Waern2008-11-101-0/+2
|
* Set HscTarget to HscNothing instead of HscAsmDavid Waern2008-11-081-1/+1
| | | | | There used to be a bug in the GHC API that prevented us from setting this value.
* Fix warnings in H.GHC.TypecheckDavid Waern2008-11-061-10/+4
|
* Fix warnings in H.InterfaceFile and H.OptionsDavid Waern2008-11-062-3/+4
|
* Fix warnings in Haddock.VersionDavid Waern2008-11-061-0/+1
|
* Fix warnings in Haddock.ModuleTreeDavid Waern2008-11-061-8/+7
|
* Fix warnings in H.B.HH and H.B.HH2David Waern2008-11-062-0/+2
|
* Follow change to ExportDecl in frames codeDavid Waern2008-11-041-1/+1
|
* Enable framed view of the HTML documentation.Thomas Schilling2008-10-242-9/+128
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch introduces: - A page that displays the documentation in a framed view. The left side will show a full module index. Clicking a module name will show it in the right frame. If Javascript is enabled, the left side is split again to show the modules at the top and a very short synopsis for the module currently displayed on the right. - Code to generate the mini-synopsis for each module and the mini module index ("index-frames.html"). - CSS rules for the mini-synopsis. - A very small amount of javascript to update the mini-synopsis (but only if inside a frame.) Some perhaps controversial things: - Sharing code was very difficult, so there is a small amount of code duplication. - The amount of generated pages has been doubled, since every module now also gets a mini-synopsis. The overhead should not be too much, but I haven't checked. Alternatively, the mini-synopsis could also be generated using Javascript if we properly annotate the actual synopsis.
* Make named doc comments into ExportDoc instead of ExportDeclDavid Waern2008-10-271-0/+1
| | | | | Fixes a crash when processing modules without export lists containing named docs.
* WibbleDavid Waern2008-10-221-0/+1
|
* Fix warnings in H.UtilsDavid Waern2008-10-221-12/+10
|
* Fix warnings in H.GHC.UtilsDavid Waern2008-10-221-0/+5
|
* Tidy up code in H.I.Create a littleDavid Waern2008-10-221-38/+3
| | | | | Remove commented out half-done type instance support, and remove DeclWithDoc synonym.
* Remove subordinate map and its usageDavid Waern2008-10-222-23/+17
| | | | It is not needed now that we store subordinate names in the DeclInfo map.
* Make renamer consistentDavid Waern2008-10-201-9/+12
| | | | | Instead of explicitly making some binders Undocumented, treat all names the same way (that is, try to find a Documented name).
* Force interface more aggressively.Thomas Schilling2008-10-201-0/+2
| | | | | | | For running Haddock on GHC this reduces memory usage by about 50 MB on a 32 bit system. A heap profile shows total memory usage peak at about 100 MB, but actual usage is at around 300 MB even with compacting GC (+RTS -c).
* Document function and improve its layoutDavid Waern2008-10-161-5/+4
|
* Fix #61David Waern2008-10-167-66/+89
| | | | | | | | | | | | | | | | | | | We were not getting docs for re-exported class methods. This was because we were looking up the docs in a map made from the declarations in the current module being rendered. Obviously, re-exported class methods come from another module. Class methods and ATs were the only thing we were looking up using the doc map, everything else we found in the ExporItems. So now I've put subordinate docs in the ExportItem's directly, to make things a bit more consistent. To do this, I added subordinates to the the declarations in the declaration map. This was easy since we were computing subordinates anyway, to store stand-alone in the map. I added a new type synonym 'DeclInfo', which is what we call what is now stored in the map. This little refactoring removes duplicate code to retrieve subordinates and documentation from the HsGroup.
* WibbleDavid Waern2008-10-161-3/+2
|
* Add subordinates with docs to the declaration mapDavid Waern2008-10-153-12/+14
| | | | | | | | | | | The only place in the code where we want the subordinates for a declaration is right after having looked up the declaration in the map. And since we include subordinates in the map, we might as well take the opportunity to store those subordinates that belong to a particular declaration together with that declaration. We also store the documentation for each subordinate.
* Add DeclInfo to H.TypesDavid Waern2008-10-152-1/+6
|
* Move convenient type synonym to H.TypesDavid Waern2008-10-152-5/+5
|
* WibbleDavid Waern2008-10-151-5/+2
|
* Comment out unused type family stuff completelyDavid Waern2008-10-151-7/+6
|
* Use type synonyms for declarations and docs in H.I.CreateDavid Waern2008-10-151-13/+19
|
* WibbleDavid Waern2008-10-151-1/+1
|
* Remove interface from LinksInfoDavid Waern2008-10-111-49/+49
| | | | | It was there to know the documentation home module when creating a wiki link, but we already know this since we have the DocName.
* Add support for DocPicDavid Waern2008-10-105-3/+9
| | | | | | The support for DocPic was merged into the GHC source long ago, but the support in Haddock was forgotten. Thanks Peter Gavin for submitting this fix!
* Add back .haddock file versioning based on GHC versionDavid Waern2008-10-101-0/+9
| | | | It was accidentally removed in the patch for GHC 6.8.2 compatibility
* Fix documentation for createInterfacesDavid Waern2008-10-101-1/+1
|
* Make Haddock build with GHC 6.8.2David Waern2008-10-105-20/+81
|
* Remove typecheckFiles and MonadUtils import from H.GHC.TypeccheckDavid Waern2008-10-101-31/+0
|
* Add some strictness annotations in InterfaceDavid Waern2008-10-091-9/+9
| | | | | We add some strictness annotations to the fields of Interface, so that less GHC data is hold on to during processing.