representable-tries 2.0.0.2 → 2.0.1.1
raw patch · 2 files changed
+23/−4 lines, 2 filesdep ~bifunctorsdep ~semigroupsPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: bifunctors, semigroups
API changes (from Hackage documentation)
+ Numeric.Nat.Zeroless: data EQ
+ Numeric.Nat.Zeroless: data GT
+ Numeric.Nat.Zeroless: data LT
+ Numeric.Nat.Zeroless: type Compare m n = Compare' EQ m n
Files
- Numeric/Nat/Zeroless.hs +20/−1
- representable-tries.cabal +3/−3
Numeric/Nat/Zeroless.hs view
@@ -14,6 +14,8 @@ module Numeric.Nat.Zeroless ( D0(..), D1(..), D2(..), (:+:), (:*:), Zeroless(..) , Succ, Pred+ , LT, GT, EQ+ , Compare , N1, N8, N16, N32, N64 , Nat(..), nat , Fin(..)@@ -87,6 +89,23 @@ -- * Adder type n :+: m = Add C0 n m +data LT+data EQ+data GT++type family Compare' a l r+type instance Compare' a D0 D0 = a+type instance Compare' a D0 (D1 r) = LT+type instance Compare' a D0 (D2 r) = LT+type instance Compare' a (D1 r) D0 = GT+type instance Compare' a (D1 l) (D1 r) = Compare' a l r+type instance Compare' a (D1 l) (D2 r) = Compare' LT l r+type instance Compare' a (D2 l) D0 = GT+type instance Compare' a (D2 l) (D1 r) = Compare' GT l r+type instance Compare' a (D2 l) (D2 r) = Compare' a l r++type Compare m n = Compare' EQ m n + -- * Multiplier type family n :*: m type instance D0 :*: m = D0@@ -121,7 +140,7 @@ -> (forall m. Zeroless m => f m -> f (D2 m)) -> f n caseNat- :: forall r. ((n ~ D0) => r) + :: ((n ~ D0) => r) -> (forall x. (n ~ D1 x, Zeroless x) => x -> r) -> (forall x. (n ~ D2 x, Zeroless x) => x -> r) -> n -> r
representable-tries.cabal view
@@ -1,6 +1,6 @@ name: representable-tries category: Data Structures, Functors, Monads, Comonads-version: 2.0.0.2+version: 2.0.1.1 license: BSD3 cabal-version: >= 1.6 license-file: LICENSE@@ -33,12 +33,12 @@ build-depends: base >= 4 && < 5,- bifunctors >= 0.1.1 && < 0.2,+ bifunctors >= 0.1.1.1 && < 0.2, comonad >= 1.1 && < 1.2, containers >= 0.3 && < 0.5, distributive >= 0.2 && < 0.3, mtl >= 2.0.1.0 && < 2.1,- semigroups >= 0.5 && < 0.6,+ semigroups >= 0.6 && < 0.7, semigroupoids >= 1.2.2 && < 1.3.0, transformers >= 0.2.0 && < 0.3, keys >= 1.8 && < 1.9,