diff options
author | Isaac Dupree <id@isaac.cedarswampstudios.org> | 2008-01-17 01:13:12 +0000 |
---|---|---|
committer | Isaac Dupree <id@isaac.cedarswampstudios.org> | 2008-01-17 01:13:12 +0000 |
commit | 206b4dec78250efef3cd927d64dc6cbc54a16c3d (patch) | |
tree | 5c922e32a60500a0935e4bf378bb0bdd7819fef0 /compiler/parser/HaddockParse.y | |
parent | 1286da96dc65faa5992a8a34c5b3bf29dfe2be04 (diff) | |
download | haskell-206b4dec78250efef3cd927d64dc6cbc54a16c3d.tar.gz |
lots of portability changes (#1405)
re-recording to avoid new conflicts was too hard, so I just put it
all in one big patch :-( (besides, some of the changes depended on
each other.) Here are what the component patches were:
Fri Dec 28 11:02:55 EST 2007 Isaac Dupree <id@isaac.cedarswampstudios.org>
* document BreakArray better
Fri Dec 28 11:39:22 EST 2007 Isaac Dupree <id@isaac.cedarswampstudios.org>
* properly ifdef BreakArray for GHCI
Fri Jan 4 13:50:41 EST 2008 Isaac Dupree <id@isaac.cedarswampstudios.org>
* change ifs on __GLASGOW_HASKELL__ to account for... (#1405)
for it not being defined. I assume it being undefined implies
a compiler with relatively modern libraries but without most
unportable glasgow extensions.
Fri Jan 4 14:21:21 EST 2008 Isaac Dupree <id@isaac.cedarswampstudios.org>
* MyEither-->EitherString to allow Haskell98 instance
Fri Jan 4 16:13:29 EST 2008 Isaac Dupree <id@isaac.cedarswampstudios.org>
* re-portabilize Pretty, and corresponding changes
Fri Jan 4 17:19:55 EST 2008 Isaac Dupree <id@isaac.cedarswampstudios.org>
* Augment FastTypes to be much more complete
Fri Jan 4 20:14:19 EST 2008 Isaac Dupree <id@isaac.cedarswampstudios.org>
* use FastFunctions, cleanup FastString slightly
Fri Jan 4 21:00:22 EST 2008 Isaac Dupree <id@isaac.cedarswampstudios.org>
* Massive de-"#", mostly Int# --> FastInt (#1405)
Fri Jan 4 21:02:49 EST 2008 Isaac Dupree <id@isaac.cedarswampstudios.org>
* miscellaneous unnecessary-extension-removal
Sat Jan 5 19:30:13 EST 2008 Isaac Dupree <id@isaac.cedarswampstudios.org>
* add FastFunctions
Diffstat (limited to 'compiler/parser/HaddockParse.y')
-rw-r--r-- | compiler/parser/HaddockParse.y | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/compiler/parser/HaddockParse.y b/compiler/parser/HaddockParse.y index e3f45f9475..d46223ddb3 100644 --- a/compiler/parser/HaddockParse.y +++ b/compiler/parser/HaddockParse.y @@ -9,7 +9,7 @@ module HaddockParse ( parseHaddockParagraphs, parseHaddockString, - MyEither(..) + EitherString(..) ) where import {-# SOURCE #-} HaddockLex @@ -35,7 +35,7 @@ import RdrName PARA { TokPara } STRING { TokString $$ } -%monad { MyEither String } +%monad { EitherString } %name parseHaddockParagraphs doc %name parseHaddockString seq @@ -98,15 +98,18 @@ strings :: { String } | STRING strings { $1 ++ $2 } { -happyError :: [Token] -> MyEither String a +happyError :: [Token] -> EitherString a happyError toks = MyLeft ("parse error in doc string") -- We don't want to make an instance for Either String, -- since every user of the GHC API would get that instance -data MyEither a b = MyLeft a | MyRight b +-- But why use non-Haskell98 instances when MyEither String +-- is the only MyEither we're intending to use anyway? --Isaac Dupree +--data MyEither a b = MyLeft a | MyRight b +data EitherString b = MyLeft String | MyRight b -instance Monad (MyEither String) where +instance Monad EitherString where return = MyRight MyLeft l >>= _ = MyLeft l MyRight r >>= k = k r |