aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* [haddock @ 2003-08-15 14:42:59 by simonmar]simonmar2003-08-153-158/+140
| | | | Convert the lexer to Alex, and fix a bug in the process.
* [haddock @ 2003-08-05 14:10:31 by simonmar]simonmar2003-08-051-1/+1
| | | | | | I'm not sure why, but it seems that the index entries for non-defining occurrences of entities did not have an anchor - the link just pointed to the module. This fixes it.
* [haddock @ 2003-08-04 10:18:24 by panne]panne2003-08-041-1/+2
| | | | Don't print parentheses around one-element contexts
* [haddock @ 2003-07-30 16:05:40 by simonmar]simonmar2003-07-304-79/+97
| | | | | | | | | | | | | | | Rename instances based on the import_env for the module in which they are to be displayed. This should give, in many cases, better links for the types and classes mentioned in the instance head. This involves keeping around the import_env in the iface until the end, because instances are not collected up until all the modules have been processed. Fortunately it doesn't seem to affect performance much. Instance heads are now attached to ExportDecls, rather than the HTML backend passing around a separate mapping for instances. This is a cleanup.
* [haddock @ 2003-07-30 15:04:52 by simonmar]simonmar2003-07-301-46/+59
| | | | | | Pay attention to import specs when building the the import env, as well as the orig env. This may fix some wrong links in documentation when import specs are being used.
* [haddock @ 2003-07-28 16:40:45 by panne]panne2003-07-281-1/+1
| | | | Make it compile with GHC >= 6.01
* [haddock @ 2003-07-28 14:32:42 by simonmar]simonmar2003-07-2810-31/+134
| | | | Update to avoid using hslibs with GHC >= 5.04
* [haddock @ 2003-07-28 13:35:16 by simonmar]simonmar2003-07-282-6/+49
| | | | | | When a module A exports another module's contents via 'module B', then modules which import entities from B re-exported by A should link to B.foo rather than A.foo. See examples/Bug2.hs.
* [haddock @ 2003-07-28 13:33:03 by simonmar]simonmar2003-07-281-4/+10
| | | | | Differentiate links to types/classes from links to variables/constructors with a prefix ("t:" and "v:" respectively).
* [haddock @ 2003-06-03 09:55:26 by simonmar]simonmar2003-06-031-1/+4
| | | | | | Two small fixes to make the output valid HTML 4.01 (transitional). Thanks to Malcolm Wallace for pointing out the problems.
* [haddock @ 2003-05-30 17:59:28 by sof]sof2003-05-301-2/+0
| | | | oops, drop test defn from prev commit
* [haddock @ 2003-05-30 16:50:45 by sof]sof2003-05-301-2/+8
| | | | cygpath: for now, steer clear of --mixed
* [haddock @ 2003-05-21 15:07:21 by simonmar]simonmar2003-05-211-2/+2
| | | | Only omit the module contents when there are no section headings at all.
* [haddock @ 2003-05-06 10:14:52 by simonmar]simonmar2003-05-061-1/+2
| | | | | Don't turn a single DocCodeBlock into a DocMonospaced, because that tends to remove the line breaks in the code.
* [haddock @ 2003-05-06 10:04:47 by simonmar]simonmar2003-05-061-1/+4
| | | | | Catch another case of a paragraph containing just a DocMonospaced that should turn into a DocCodeBlock.
* [haddock @ 2003-04-30 14:02:32 by simonmar]simonmar2003-04-301-1/+9
| | | | | | | | When installing on Windows, run cygpath over $(HADDOCKLIB) so that haddock (a mingw program, built by GHC) can understand it. You still need to be in a cygwin environment to run Haddock, because of the shell script wrapper.
* [haddock @ 2003-04-25 10:50:05 by ross]ross2003-04-252-3/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | | An 80% solution to generating derived instances. A complete solution would duplicate the instance inference logic, but if a type variable occurs as a constructor argument, then we can just propagate the derived class to the variable. But we know nothing of the constraints on any type variables that occur elsewhere. For example, the declarations data Either a b = Left a | Right b deriving (Eq, Ord) data Ptr a = Ptr Addr# deriving (Eq, Ord) newtype IORef a = IORef (STRef RealWorld a) deriving Eq yield the instances (Eq a, Eq b) => Eq (Either a b) (Ord a, Ord b) => Ord (Either a b) Eq (Ptr a) Ord (Ptr a) (??? a) => Eq (IORef a) The last example shows the limits of this local analysis. Note that a type variable may be in both categories: then we know a constraint, but there may be more, or a stronger constraint, e.g. data Tree a = Node a [Tree a] deriving Eq yields (Eq a, ??? a) => Eq (Tree a)
* [haddock @ 2003-03-10 21:34:24 by panne]panne2003-03-102-18/+29
| | | | Escape fragments. This fixes e.g. links to operators.
* [haddock @ 2003-03-09 21:13:43 by panne]panne2003-03-091-7/+10
| | | | | Don't append a fragment to non-defining index entries, only documents with a defining occurrence have a name anchor.
* [haddock @ 2003-03-08 19:02:38 by panne]panne2003-03-081-1/+1
| | | | | Fixed some broken/redirected/canonicalized links found by a very picky link checker.
* [haddock @ 2003-02-24 21:26:29 by panne]panne2003-02-241-2/+4
| | | | | | | | Don't convert a "newtype" to a single-constructor "data" for non-abstractly exported types, they are quite different regarding strictness/pattern matching. Now a "data" without any constructors is only emitted for an abstractly exported type, regardless if it is actually a "newtype" or a "data".
* [haddock @ 2003-02-20 21:31:40 by panne]panne2003-02-201-8/+14
| | | | | * Add varsyms and consyms to index * Exclude empty entries from index
* [haddock @ 2003-01-16 15:07:57 by ross]ross2003-01-161-1/+1
| | | | Adjust for the new exception libraries (as well as the old ones).
* [haddock @ 2002-11-13 09:49:46 by simonmar]simonmar2002-11-131-1/+1
| | | | Small bugfix in the --read-interface option parsing from Brett Letner.
* [haddock @ 2002-11-11 09:32:57 by simonmar]simonmar2002-11-111-2/+2
| | | | Fix cut-n-pasto
* [haddock @ 2002-08-02 09:25:20 by simonmar]simonmar2002-08-022-11/+29
| | | | | | | Remove <P>..</P> from around list items, to reduce excess whitespace between the items of bulleted and ordered lists. (Suggestion from Daan Leijen).
* [haddock @ 2002-07-25 14:37:28 by simonmar]simonmar2002-07-255-8/+18
| | | | | | | | | | | | | | | | Patch to allow simple hyperlinking to an arbitrary location in another module's documentation, from Volker Stolz. Now in a doc comment: #foo# creates <a name="foo"></a> And you can use the form "M\#foo" to hyperlink to the label 'foo' in module 'M'. Note that the backslash is necessary for now.
* [haddock @ 2002-07-24 09:42:17 by simonmar]simonmar2002-07-2417-653/+871
| | | | Patches to quieten ghc -Wall, from those nice folks at Galois.
* [haddock @ 2002-07-24 09:28:19 by simonmar]simonmar2002-07-241-25/+25
| | | | Remove ^Ms
* [haddock @ 2002-07-23 10:18:46 by simonmar]simonmar2002-07-231-12/+23
| | | | Add a version banner when invoked with -v
* [haddock @ 2002-07-19 10:00:16 by simonmar]simonmar2002-07-191-14/+16
| | | | | | | | | | | | Relax the restrictions which require doc comments to be followed by semi colons - in some cases this isn't necessary. Now you can write module M where { -- | some doc class C where {} } without needing to put a semicolon before the class declaration.
* [haddock @ 2002-07-19 09:59:02 by simonmar]simonmar2002-07-192-11/+17
| | | | Allow special id's ([], (), etc.) to be used in an import declarations.
* [haddock @ 2002-07-19 09:13:10 by simonmar]simonmar2002-07-191-16/+22
| | | | Allow special id's ([], (), etc.) to be used in an import declaration.
* [haddock @ 2002-07-15 16:16:50 by simonmar]simonmar2002-07-151-5/+7
| | | | | | | | Allow multiple sections/subsections before and after a comma in the export list. Also at the same time I made the syntax a little stricter (multiple commas now aren't allowed between export specs).
* [haddock @ 2002-07-15 10:14:30 by simonmar]simonmar2002-07-152-10/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Be a bit more liberal in the kind of commenting styles we allow, as suggested by Malcolm Wallace. Mostly this consists of allowing doc comments either side of a separator token. In an export list, a section heading is now allowed before the comma, as well as after it. eg. module M where ( T(..) -- * a section heading , f -- * another section heading , g ) In record fields, doc comments are allowed anywhere (previously a doc-next was allowed only after the comma, and a doc-before was allowed only before the comma). eg. data R = C { -- | describes 'f' f :: Int -- | describes 'g' , g :: Int }
* [haddock @ 2002-07-15 09:54:16 by simonmar]simonmar2002-07-151-17/+12
| | | | merge rev. 1.35
* [haddock @ 2002-07-15 09:19:38 by simonmar]simonmar2002-07-151-6/+7
| | | | | | | Fix a bug in mkExportItems when processing a module without an explicit export list. We were placing one copy of a declaration for each binder in the declaration, which for a data type would mean one copy of the whole declaration per constructor or record selector.
* [haddock @ 2002-07-10 10:58:31 by simonmar]simonmar2002-07-101-5/+5
| | | | Sort the options a bit
* [haddock @ 2002-07-10 10:26:11 by simonmar]simonmar2002-07-103-108/+118
| | | | | Tweaks to the MS Help support: the extra files are now only generated if you ask for them (--ms-help).
* [haddock @ 2002-07-10 09:40:56 by simonmar]simonmar2002-07-101-1/+3
| | | | Fix for rendering of the (->) type constructor, from Ross Paterson.
* [haddock @ 2002-07-09 16:33:31 by krasimir]krasimir2002-07-094-26/+128
| | | | 'Microsoft HTML Help' support
* [haddock @ 2002-07-09 10:12:51 by simonmar]simonmar2002-07-091-0/+2
| | | | commented-out debugging code
* [haddock @ 2002-07-09 10:12:10 by simonmar]simonmar2002-07-091-2/+2
| | | | | | Don't require that the list type comes from "Prelude" for it to be treated as special syntax (sometimes it comes from Data.List or maybe even GHC.Base).
* [haddock @ 2002-07-04 15:26:13 by simonmar]simonmar2002-07-041-14/+25
| | | | More bugfixes to the export handling
* [haddock @ 2002-07-04 14:56:10 by simonmar]simonmar2002-07-041-22/+27
| | | | | | | Clean up the code that constructs the exported declarations, and fix a couple of bugs along the way. Now if you import a class hiding one of the methods, then re-export the class, the version in the documentation will correctly have the appropriate method removed.
* [haddock @ 2002-07-03 16:01:07 by simonmar]simonmar2002-07-033-45/+112
| | | | | | Handle import specs properly, include 'hiding'. Haddock now has a complete implementation of the Haskell module system (more or less; I won't claim it's 100% correct).
* [haddock @ 2002-06-24 14:37:42 by simonmar]simonmar2002-06-243-50/+71
| | | | | | | | | | | | | | When reading an interface, allow a file path offset to be specified which represents the path to the HTML files for the modules specified by that interface. The path may be either relative (to the location of the HTML for this package), or absolute. The syntax is --read-interface=PATH,FILE where PATH is the path to the HTML, and FILE is the filename containing the interface.
* [haddock @ 2002-06-23 14:54:00 by panne]panne2002-06-232-3/+15
| | | | Make it compile with newer GHCs
* [haddock @ 2002-06-21 15:50:42 by simonmar]simonmar2002-06-214-9/+724
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for reading and writing interface files(!) This turned out to be quite easy, and necessary to get decent hyperlinks between the documentation for separate packages in the libraries. The functionality isn't quite complete yet: for a given package of modules, you'd like to say "the HTML for these modules lives in directory <dir>" (currently they are assumed to be all in the same place). Two new flags: --dump-interface=FILE dump an interface file in FILE --read-interface=FILE read interface from FILE an interface file describes *all* the modules being processed. Only the exported names are kept in the interface: if you re-export a name from a module in another interface the signature won't be copied. This is a compromise to keep the size of the interfaces sensible. Also, I added another useful option: --no-implicit-prelude avoids trying to import the Prelude. Previously this was the default, but now importing the Prelude from elsewhere makes sense if you also read in an interface containing the Prelude module, so Haddock imports the Prelude implicitly according to the Haskell spec.
* [haddock @ 2002-06-21 12:43:06 by simonmar]simonmar2002-06-211-0/+1
| | | | | | When we have a single code block paragraph, don't place it in <pre>..</pre>, just use <tt>..</tt> to avoid generating extra vertical white space in some browsers.