packages feed

ghc-typelits-extra 0.2.4 → 0.2.5

raw patch · 3 files changed

+12/−6 lines, 3 filesdep ~ghc-tcplugins-extradep ~ghc-typelits-knownnatdep ~ghc-typelits-natnormalisePVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependency ranges changed: ghc-tcplugins-extra, ghc-typelits-knownnat, ghc-typelits-natnormalise

API changes (from Hackage documentation)

- GHC.TypeLits.Extra: instance (GHC.TypeNats.KnownNat x, GHC.TypeNats.KnownNat y, 1 GHC.TypeNats.<= y) => GHC.TypeLits.KnownNat.KnownNat2 "GHC.TypeLits.Extra.Div" x y
- GHC.TypeLits.Extra: instance (GHC.TypeNats.KnownNat x, GHC.TypeNats.KnownNat y, 1 GHC.TypeNats.<= y) => GHC.TypeLits.KnownNat.KnownNat2 "GHC.TypeLits.Extra.Mod" x y
+ GHC.TypeLits.Extra: instance (GHC.TypeNats.KnownNat x, GHC.TypeNats.KnownNat y, 1 GHC.TypeNats.<= y) => GHC.TypeLits.KnownNat.KnownNat2 "GHC.TypeNats.Div" x y
+ GHC.TypeLits.Extra: instance (GHC.TypeNats.KnownNat x, GHC.TypeNats.KnownNat y, 1 GHC.TypeNats.<= y) => GHC.TypeLits.KnownNat.KnownNat2 "GHC.TypeNats.Mod" x y

Files

CHANGELOG.md view
@@ -1,5 +1,8 @@ # Changelog for the [`ghc-typelits-extra`](http://hackage.haskell.org/package/ghc-typelits-extra) package +# 0.2.5 *May 9th 2018*+* Add support for ghc-typelits-natnormalise-0.6+ # 0.2.4 *January 4th 2018* * Add support for GHC-8.4.1-alpha1 
ghc-typelits-extra.cabal view
@@ -1,5 +1,5 @@ name:                ghc-typelits-extra-version:             0.2.4+version:             0.2.5 synopsis:            Additional type-level operations on GHC.TypeLits.Nat description:   Additional type-level operations on @GHC.TypeLits.Nat@:@@ -47,7 +47,8 @@ extra-source-files:  README.md                      CHANGELOG.md cabal-version:       >=1.10-tested-with:         GHC == 8.0.2, GHC == 8.2.2, GHC == 8.4.1+tested-with:         GHC == 8.0.2, GHC == 8.2.2, GHC == 8.4.1, GHC == 8.4.2,+                     GHC == 8.5.0  source-repository head   type: git@@ -68,8 +69,8 @@                        ghc                       >= 7.10    && <8.6,                        ghc-prim                  >= 0.5     && <1.0,                        ghc-tcplugins-extra       >= 0.2,-                       ghc-typelits-knownnat     >= 0.4     && <0.5,-                       ghc-typelits-natnormalise >= 0.5     && <0.6,+                       ghc-typelits-knownnat     >= 0.5     && <0.6,+                       ghc-typelits-natnormalise >= 0.6     && <0.7,                        integer-gmp               >= 1.0     && <1.1,                        transformers              >= 0.4.2.0 && <0.6   hs-source-dirs:      src
src/GHC/TypeLits/Extra/Solver/Operations.hs view
@@ -25,6 +25,8 @@ where  -- external+import Control.Monad.Trans.Writer.Strict+ import GHC.Base                     (isTrue#,(==#),(+#)) import GHC.Integer                  (smallInteger) import GHC.Integer.Logarithms       (integerLogBase#)@@ -108,7 +110,7 @@ mergeMax defs x y =   let x' = reifyEOP defs x       y' = reifyEOP defs y-      z  = normaliseNat (mkTyConApp typeNatSubTyCon [y',x'])+      z  = fst (runWriter (normaliseNat (mkTyConApp typeNatSubTyCon [y',x'])))   in  case isNatural z of         Just True  -> y         Just False -> x@@ -118,7 +120,7 @@ mergeMin defs x y =   let x' = reifyEOP defs x       y' = reifyEOP defs y-      z  = normaliseNat (mkTyConApp typeNatSubTyCon [y',x'])+      z  = fst (runWriter (normaliseNat (mkTyConApp typeNatSubTyCon [y',x'])))   in  case isNatural z of         Just True  -> x         Just False -> y