packages feed

hw-rankselect-base 0.1.0.0 → 0.2.0.0

raw patch · 6 files changed

+75/−34 lines, 6 filesdep +criteriondep +hw-intdep ~hw-bitsdep ~hw-primPVP ok

version bump matches the API change (PVP)

Dependencies added: criterion, hw-int

Dependency ranges changed: hw-bits, hw-prim

API changes (from Hackage documentation)

Files

LICENSE view
@@ -1,21 +1,30 @@-MIT License+Copyright John Ky (c) 2016 -Copyright (c) 2016 John Ky+All rights reserved. -Permission is hereby granted, free of charge, to any person obtaining a copy-of this software and associated documentation files (the "Software"), to deal-in the Software without restriction, including without limitation the rights-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell-copies of the Software, and to permit persons to whom the Software is-furnished to do so, subject to the following conditions:+Redistribution and use in source and binary forms, with or without+modification, are permitted provided that the following conditions are met: -The above copyright notice and this permission notice shall be included in all-copies or substantial portions of the Software.+    * Redistributions of source code must retain the above copyright+      notice, this list of conditions and the following disclaimer. -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE-SOFTWARE.+    * Redistributions in binary form must reproduce the above+      copyright notice, this list of conditions and the following+      disclaimer in the documentation and/or other materials provided+      with the distribution.++    * Neither the name of Author name here nor the names of other+      contributors may be used to endorse or promote products derived+      from this software without specific prior written permission.++THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
README.md view
@@ -1,9 +1,4 @@-# hw-rankselect-[![0.0-branch](https://circleci.com/gh/haskell-works/hw-rankselect/tree/0.0-branch.svg?style=svg)](https://circleci.com/gh/haskell-works/hw-rankselect/tree/0.0-branch)+# hw-rankselect-base+[![0.0-branch](https://circleci.com/gh/haskell-works/hw-rankselect-base/tree/0.0-branch.svg?style=svg)](https://circleci.com/gh/haskell-works/hw-rankselect-base/tree/0.0-branch)  Rank and select operations.--```-cabal repl hw-rankselect-test-λ> :trace main-```
+ bench/Main.hs view
@@ -0,0 +1,23 @@+{-# LANGUAGE OverloadedStrings #-}++module Main where++import           Criterion.Main+import qualified Data.Vector.Storable                                   as DVS+import           Data.Word+import           HaskellWorks.Data.RankSelect.Base++setupEnvVector :: Int -> IO (DVS.Vector Word64)+setupEnvVector n = return $ DVS.fromList (take n (cycle [maxBound, 0]))++benchRankSelect :: [Benchmark]+benchRankSelect =+  [ env (setupEnvVector 1000000) $ \bv -> bgroup "Rank"+    [ bench "Rank - Once"   (whnf (rank1    bv) 1)+    , bench "Select - Once" (whnf (select1  bv) 1)+    , bench "Rank - Many"   (nf   (map (rank1 bv)) [0, 1000..10000000])+    ]+  ]++main :: IO ()+main = defaultMain benchRankSelect
hw-rankselect-base.cabal view
@@ -1,14 +1,14 @@ name:                   hw-rankselect-base-version:                0.1.0.0-synopsis:               Conduits for tokenizing streams.+version:                0.2.0.0+synopsis:               Rank-select base description:            Please see README.md homepage:               http://github.com/haskell-works/hw-rankselect-base#readme-license:                MIT+license:                BSD3 license-file:           LICENSE author:                 John Ky maintainer:             newhoggy@gmail.com copyright:              2016 John Ky-category:               Data, Conduit+category:               Data build-type:             Simple extra-source-files:     README.md cabal-version:          >= 1.22@@ -23,8 +23,9 @@                       , HaskellWorks.Data.RankSelect.Base.Select0                       , HaskellWorks.Data.RankSelect.Base.Select1   build-depends:        base                          >= 4          && < 5-                      , hw-bits                       >= 0.3.0.0-                      , hw-prim                       >= 0.3.0.5+                      , hw-bits                       >= 0.4.0.0+                      , hw-int                        >= 0.0.0.1+                      , hw-prim                       >= 0.4.0.0                       , hw-string-parse               >= 0.0.0.2                       , safe                       , vector@@ -43,8 +44,8 @@    build-depends:        base                          >= 4          && < 5                       , hspec-                      , hw-bits                       >= 0.3.0.0-                      , hw-prim                       >= 0.3.0.5+                      , hw-bits                       >= 0.4.0.0+                      , hw-prim                       >= 0.4.0.0                       , hw-rankselect-base                       , QuickCheck                       , vector@@ -54,3 +55,16 @@ source-repository head   type:     git   location: https://github.com/haskell-works/hw-rankselect-base++benchmark bench+    Type: exitcode-stdio-1.0+    HS-Source-Dirs: bench+    Main-Is: Main.hs+    GHC-Options: -O2 -Wall -msse4.2+    Default-Language: Haskell2010+    Build-Depends:      base                          >= 4          && < 5+                      , criterion+                      , hw-bits                       >= 0.4.0.0+                      , hw-prim                       >= 0.4.0.0+                      , hw-rankselect-base+                      , vector
src/HaskellWorks/Data/RankSelect/Base/Rank1.hs view
@@ -14,8 +14,8 @@ import           HaskellWorks.Data.Bits.BitWise import           HaskellWorks.Data.Bits.ElemFixedBitSize import           HaskellWorks.Data.Bits.PopCount.PopCount1+import           HaskellWorks.Data.Int.Widen.Widen64 import           HaskellWorks.Data.Positioning-import           HaskellWorks.Data.Widen.Widen64 import           Prelude                                   as P  {-# ANN module ("HLint: Ignore Reduce duplication"  :: String) #-}
src/HaskellWorks/Data/RankSelect/Base/Select1.hs view
@@ -14,7 +14,7 @@ import           HaskellWorks.Data.Bits.BitWise import           HaskellWorks.Data.Bits.ElemFixedBitSize import           HaskellWorks.Data.Bits.PopCount.PopCount1-import           HaskellWorks.Data.Narrow+import           HaskellWorks.Data.Int.Narrow import           HaskellWorks.Data.Positioning import           Prelude                                   as P