packages feed

hw-hedgehog 0.1.0.1 → 0.1.0.2

raw patch · 3 files changed

+105/−34 lines, 3 filesdep ~basedep ~hedgehogdep ~vectorPVP: minor bump suggested

API additions: PVP suggests at least a minor version bump

Dependency ranges changed: base, hedgehog, vector

API changes (from Hackage documentation)

+ HaskellWorks.Hedgehog.Gen: tuple2 :: MonadGen m => m a -> m (a, a)
+ HaskellWorks.Hedgehog.Gen: tuple3 :: MonadGen m => m a -> m (a, a, a)
+ HaskellWorks.Hedgehog.Gen: tuple4 :: MonadGen m => m a -> m (a, a, a, a)
+ HaskellWorks.Hedgehog.Gen: tuple5 :: MonadGen m => m a -> m (a, a, a, a, a)
+ HaskellWorks.Hedgehog.Gen: tuple6 :: MonadGen m => m a -> m (a, a, a, a, a, a)
+ HaskellWorks.Hedgehog.Gen: tuple7 :: MonadGen m => m a -> m (a, a, a, a, a, a, a)
+ HaskellWorks.Hedgehog.Gen: tuple8 :: MonadGen m => m a -> m (a, a, a, a, a, a, a, a)
+ HaskellWorks.Hedgehog.Gen: tuple9 :: MonadGen m => m a -> m (a, a, a, a, a, a, a, a, a)
+ HaskellWorks.Hedgehog.Gen: word8x8 :: MonadGen m => m Word8 -> m Word64

Files

LICENSE view
@@ -1,4 +1,4 @@-Copyright Author name here (c) 2017+Copyright John Ky (c) 2017-2018  All rights reserved. 
hw-hedgehog.cabal view
@@ -1,36 +1,51 @@-name:                 hw-hedgehog-version:              0.1.0.1-synopsis:             Extra hedgehog functionality-description:          Extra hedgehog functionality-homepage:             https://github.com/githubuser/hw-hedgehog#readme-license:              BSD3-license-file:         LICENSE-author:               Author name here-maintainer:           example@example.com-copyright:            2017 Author name here-category:             Web-build-type:           Simple-extra-source-files:   README.md-cabal-version:        >=1.10+-- This file has been generated from package.yaml by hpack version 0.18.1.+--+-- see: https://github.com/sol/hpack -library-  hs-source-dirs:       src-  exposed-modules:      HaskellWorks.Hedgehog-                      , HaskellWorks.Hedgehog.Gen-  build-depends:        base >= 4.7 && < 5-                      , hedgehog-                      , vector-  default-language:     Haskell2010+name:           hw-hedgehog+version:        0.1.0.2+synopsis:       Extra hedgehog functionality+description:    Extra hedgehog functionality.+category:       Test+homepage:       https://github.com/haskell-works/hw-hedgehog#readme+bug-reports:    https://github.com/haskell-works/hw-hedgehog/issues+author:         John Ky+maintainer:     newhoggy@gmail.com+copyright:      2017-2018 John Ky+license:        BSD3+license-file:   LICENSE+tested-with:    GHC == 7.10.3, GHC == 8.0.2, GHC == 8.2.2, GHC == 8.4.2+build-type:     Simple+cabal-version:  >= 1.10 -test-suite hw-hedgehog-test-  type:                 exitcode-stdio-1.0-  hs-source-dirs:       test-  main-is:              Spec.hs-  build-depends:        base-                      , hw-hedgehog-  ghc-options:          -threaded -rtsopts -with-rtsopts=-N-  default-language:     Haskell2010+extra-source-files:+    README.md  source-repository head-  type:       git-  location:   https://github.com/githubuser/hw-hedgehog+  type: git+  location: https://github.com/haskell-works/hw-hedgehog++library+  hs-source-dirs:+      src+  build-depends:+      base >=4.8 && <5+    , hedgehog >= 0.5 && < 0.7+    , vector >= 0.10 && < 0.13+  exposed-modules:+      HaskellWorks.Hedgehog+      HaskellWorks.Hedgehog.Gen+  other-modules:+      Paths_hw_hedgehog+  default-language: Haskell2010++test-suite hw-hedgehog-test+  type: exitcode-stdio-1.0+  main-is: Spec.hs+  hs-source-dirs:+      test+  ghc-options: -threaded -rtsopts -with-rtsopts=-N+  build-depends:+      base+    , hw-hedgehog+  default-language: Haskell2010
src/HaskellWorks/Hedgehog/Gen.hs view
@@ -1,10 +1,23 @@+{-# LANGUAGE ScopedTypeVariables #-}+ module HaskellWorks.Hedgehog.Gen   ( vector   , storableVector+  , word8x8+  , tuple2+  , tuple3+  , tuple4+  , tuple5+  , tuple6+  , tuple7+  , tuple8+  , tuple9   ) where -import Hedgehog+import Data.Bits+import Data.Word import Foreign.Storable+import Hedgehog  import qualified Data.Vector          as DV import qualified Data.Vector.Storable as DVS@@ -16,3 +29,46 @@  storableVector :: (Storable a, MonadGen m) => Range Int -> m a -> m (DVS.Vector a) storableVector n g = DVS.fromList <$> G.list n g++word8x8 :: MonadGen m => m Word8 -> m Word64+word8x8 gen = do+  a :: Word64 <- fromIntegral <$> gen+  b :: Word64 <- fromIntegral <$> gen+  c :: Word64 <- fromIntegral <$> gen+  d :: Word64 <- fromIntegral <$> gen+  e :: Word64 <- fromIntegral <$> gen+  f :: Word64 <- fromIntegral <$> gen+  g :: Word64 <- fromIntegral <$> gen+  h :: Word64 <- fromIntegral <$> gen+  return $  (a `shiftL` 56) .|.+            (b `shiftL` 48) .|.+            (c `shiftL` 40) .|.+            (d `shiftL` 32) .|.+            (e `shiftL` 24) .|.+            (f `shiftL` 16) .|.+            (g `shiftL`  8) .|.+            (h `shiftL`  0)++tuple2 :: MonadGen m => m a -> m (a, a)+tuple2 gen = (,) <$> gen <*> gen++tuple3 :: MonadGen m => m a -> m (a, a, a)+tuple3 gen = (,,) <$> gen <*> gen <*> gen++tuple4 :: MonadGen m => m a -> m (a, a, a, a)+tuple4 gen = (,,,) <$> gen <*> gen <*> gen <*> gen++tuple5 :: MonadGen m => m a -> m (a, a, a, a, a)+tuple5 gen = (,,,,) <$> gen <*> gen <*> gen <*> gen <*> gen++tuple6 :: MonadGen m => m a -> m (a, a, a, a, a, a)+tuple6 gen = (,,,,,) <$> gen <*> gen <*> gen <*> gen <*> gen <*> gen++tuple7 :: MonadGen m => m a -> m (a, a, a, a, a, a, a)+tuple7 gen = (,,,,,,) <$> gen <*> gen <*> gen <*> gen <*> gen <*> gen <*> gen++tuple8 :: MonadGen m => m a -> m (a, a, a, a, a, a, a, a)+tuple8 gen = (,,,,,,,) <$> gen <*> gen <*> gen <*> gen <*> gen <*> gen <*> gen <*> gen++tuple9 :: MonadGen m => m a -> m (a, a, a, a, a, a, a, a, a)+tuple9 gen = (,,,,,,,,) <$> gen <*> gen <*> gen <*> gen <*> gen <*> gen <*> gen <*> gen <*> gen