exception-hierarchy 0.1.0.4 → 0.1.0.6
raw patch · 2 files changed
+15/−12 lines, 2 filesdep ~template-haskell
Dependency ranges changed: template-haskell
Files
exception-hierarchy.cabal view
@@ -2,7 +2,7 @@ cabal-version: >= 1.10 name: exception-hierarchy-version: 0.1.0.4+version: 0.1.0.6 stability: Experimental author: Yoshikuni Jujo <PAF01143@nifty.ne.jp> maintainer: Yoshikuni Jujo <PAF01143@nifty.ne.jp>@@ -21,16 +21,16 @@ source-repository head type: git- location: git://github.com/YoshikuniJujo/test-haskell.git+ location: git://github.com/YoshikuniJujo/exception-hierarchy.git source-repository this type: git location: git://github.com/YoshikuniJujo/test-haskell.git- tag: exception-hierarchy-0.1.0.4+ tag: 0.1.0.5 library hs-source-dirs: src exposed-modules: Control.Exception.Hierarchy- build-depends: base == 4.*, template-haskell >= 2.15 && < 2.17+ build-depends: base == 4.*, template-haskell >= 2.17 && < 2.18 ghc-options: -Wall -fno-warn-tabs default-language: Haskell2010
src/Control/Exception/Hierarchy.hs view
@@ -35,22 +35,25 @@ exceptionContainer :: Name -> DecsQ exceptionContainer ec = sequence [- dataD (cxt []) he [] Nothing- [forallC [PlainTV e] (cxt [myClassP ''Exception [varT e]]) $- normalC he [bangType myNotStrict (varT e)]]- [derivClause Nothing [conT ''Typeable]],+ do tv <- plainInvisTV e specifiedSpec+ dataD (cxt []) he [] Nothing+ [forallC [tv] (cxt [myClassP ''Exception [varT e]]) $+ normalC he [bangType myNotStrict (varT e)]]+ [derivClause Nothing [conT ''Typeable]], instanceD (cxt []) (conT ''Show `appT` conT he) [funD 'showsPrec [clause [varP d, conP he [varP e]] (normalB $ varE 'showsPrec `appE` varE d `appE` varE e) []]],- sigD toEx . forallT [PlainTV e] (cxt [myClassP ''Exception [varT e]]) $- varT e `arrT` conT ''SomeException,+ do tv <- plainInvisTV e specifiedSpec+ sigD toEx . forallT [tv] (cxt [myClassP ''Exception [varT e]]) $+ varT e `arrT` conT ''SomeException, valD (varP toEx) (normalB $ infixE (Just $ varE 'toException) (varE '(.)) (Just $ conE he)) [],- sigD fromEx . forallT [PlainTV e] (cxt [myClassP ''Exception [varT e]]) $- conT ''SomeException `arrT` (conT ''Maybe `appT` varT e),+ do tv <- plainInvisTV e specifiedSpec+ sigD fromEx . forallT [tv] (cxt [myClassP ''Exception [varT e]]) $+ conT ''SomeException `arrT` (conT ''Maybe `appT` varT e), funD fromEx [clause [varP se] (normalB $ doE [