type-unary 0.1.15 → 0.1.16
raw patch · 3 files changed
+6/−6 lines, 3 filesdep ~basePVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: base
API changes (from Hackage documentation)
- TypeUnary.Nat: coerceToIndex :: (Integral i, IsNat m) => i -> Index m
+ TypeUnary.Nat: coerceToIndex :: (Show i, Integral i, IsNat m) => i -> Index m
- TypeUnary.Vec: getI :: (IsNat n, Integral i) => i -> Vec n a -> a
+ TypeUnary.Vec: getI :: (IsNat n, Show i, Integral i) => i -> Vec n a -> a
- TypeUnary.Vec: setI :: (IsNat n, Integral i) => i -> a -> Vec n a -> Vec n a
+ TypeUnary.Vec: setI :: (IsNat n, Show i, Integral i) => i -> a -> Vec n a -> Vec n a
Files
- src/TypeUnary/Nat.hs +3/−3
- src/TypeUnary/Vec.hs +2/−2
- type-unary.cabal +1/−1
src/TypeUnary/Nat.hs view
@@ -142,13 +142,13 @@ -- | Index generation from integer. Can fail dynamically if the integer is -- too large.-coerceToIndex :: (Integral i, IsNat m) => i -> Index m+coerceToIndex :: (Show i, Integral i, IsNat m) => i -> Index m coerceToIndex = coerceToIndex' nat -coerceToIndex' :: Integral i => Nat m -> i -> Index m+coerceToIndex' :: (Show i, Integral i) => Nat m -> i -> Index m coerceToIndex' mOrig niOrig = loop mOrig niOrig where- loop :: Integral i => Nat m -> i -> Index m+ loop :: (Show i, Integral i) => Nat m -> i -> Index m loop Zero _ = error $ "coerceToIndex: out of bounds: " ++ show niOrig ++ " should be less than " ++ show mOrig
src/TypeUnary/Vec.hs view
@@ -358,12 +358,12 @@ -- | Variant of 'get' in which the index size is checked at run-time -- instead of compile-time.-getI :: (IsNat n, Integral i) => i -> Vec n a -> a+getI :: (IsNat n, Show i, Integral i) => i -> Vec n a -> a getI = get . coerceToIndex -- | Variant of 'set' in which the index size is checked at run-time -- instead of compile-time.-setI :: (IsNat n, Integral i) => i -> a -> Vec n a -> Vec n a+setI :: (IsNat n, Show i, Integral i) => i -> a -> Vec n a -> Vec n a setI = set . coerceToIndex
type-unary.cabal view
@@ -1,5 +1,5 @@ Name: type-unary-Version: 0.1.15+Version: 0.1.16 Cabal-Version: >= 1.2 Synopsis: Type-level and typed unary natural numbers, inequality proofs, vectors