diff options
| author | simonmar <unknown> | 2005-02-02 16:23:04 +0000 | 
|---|---|---|
| committer | simonmar <unknown> | 2005-02-02 16:23:04 +0000 | 
| commit | d8450a233a8e9e0fabcd34e9daf53c82db4dd3bd (patch) | |
| tree | 4d05856cf7d2181061b6deb5931a34756dec57c4 /src/Map.hs | |
| parent | a8c82f239a7fa8940abb35c32b82b4ebec9f6761 (diff) | |
[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.
Diffstat (limited to 'src/Map.hs')
| -rw-r--r-- | src/Map.hs | 4 | 
1 files changed, 2 insertions, 2 deletions
| @@ -34,13 +34,13 @@ insert :: Ord k => k -> a -> Map k a -> Map k a  insert k a m = addToFM m k a  insertWith :: Ord k => (a -> a -> a) -> k -> a -> Map k a -> Map k a -insertWith c k a m = addToFM_C c m k a +insertWith c k a m = addToFM_C (flip c) m k a  union :: Ord k => Map k a -> Map k a -> Map k a  union = flip plusFM  unionWith :: Ord k => (a -> a -> a) -> Map k a -> Map k a -> Map k a -unionWith c l r = plusFM_C c r l +unionWith c l r = plusFM_C (flip c) r l  unions :: Ord k => [Map k a] -> Map k a  unions = foldl (flip plusFM) emptyFM | 
