From d8450a233a8e9e0fabcd34e9daf53c82db4dd3bd Mon Sep 17 00:00:00 2001 From: simonmar Date: Wed, 2 Feb 2005 16:23:04 +0000 Subject: [haddock @ 2005-02-02 16:23:00 by simonmar] Revamp the linking strategy in Haddock. Now name resolution is done in two phases: - first resolve everything to original names, like a Haskell compiler would. - then, figure out the "home" location for every entity, and point all the links to there. The home location is the lowest non-hidden module in the import hierarchy that documents the entity. If there are multiple candidates, one is chosen at random. Also: - Haddock should not generate any HTML with dangling links any more. Unlinked references are just rendered as plain text. - Error reporting is better: if we can't find a link destination for an entity reference, we now emit a warning. --- TODO | 13 ------------- 1 file changed, 13 deletions(-) (limited to 'TODO') diff --git a/TODO b/TODO index 58a470e4..a68d064c 100644 --- a/TODO +++ b/TODO @@ -1,16 +1,6 @@ ----------------------------------------------------------------------------- -- bugs -* I've been thinking of a solution along these lines: Haddock - processes the modules in two phases. The first phase resolves all the - names and determines the "definitive" documentation for each entity. - The second phase makes all the links point to the definitive - documentation, with certain exceptions: if the entity is also - documented in the local module, then point there instead. Perhaps - there are other exceptions. We might need a way to indicate - "definitive", or maybe just the module(s) furthest up the dependency - tree would do. - * The lexer should handle "...." in doc strings, only recognising it if the contents looks like a module name. @@ -39,9 +29,6 @@ * derived instance support isn't quite right (doing it properly is hard, though). -* Referring to something that has a defn but no type signature doesn't - elicit a useful message. - * The synopsis generated for a module with no docs should not attempt to link to the doc for each entity. We need a different kind of summary here: what we really want is just the documentation section but without -- cgit v1.2.3