packages feed

hw-rankselect-base 0.3.2.3 → 0.3.2.4

raw patch · 3 files changed

+39/−1 lines, 3 filesPVP: minor bump suggested

API additions: PVP suggests at least a minor version bump

API changes (from Hackage documentation)

+ HaskellWorks.Data.RankSelect.Base.Rank: class Eq a => Rank v a
+ HaskellWorks.Data.RankSelect.Base.Rank: instance HaskellWorks.Data.RankSelect.Base.Rank.Rank [GHC.Types.Bool] GHC.Types.Bool
+ HaskellWorks.Data.RankSelect.Base.Rank: rank :: Rank v a => a -> v -> Count -> Count
+ HaskellWorks.Data.RankSelect.Base.Select: class Eq a => Select v a
+ HaskellWorks.Data.RankSelect.Base.Select: instance HaskellWorks.Data.RankSelect.Base.Select.Select [GHC.Types.Bool] GHC.Types.Bool
+ HaskellWorks.Data.RankSelect.Base.Select: select :: Select v a => a -> v -> Count -> Count

Files

hw-rankselect-base.cabal view
@@ -1,7 +1,7 @@ cabal-version: 2.2  name:                   hw-rankselect-base-version:                0.3.2.3+version:                0.3.2.4 synopsis:               Rank-select base description:            Please see README.md category:               Data, Bit, Succinct Data Structures, Data Structures@@ -57,8 +57,10 @@                       , vector   exposed-modules:      HaskellWorks.Data.RankSelect.Base                         HaskellWorks.Data.RankSelect.Base.Internal+                        HaskellWorks.Data.RankSelect.Base.Rank                         HaskellWorks.Data.RankSelect.Base.Rank0                         HaskellWorks.Data.RankSelect.Base.Rank1+                        HaskellWorks.Data.RankSelect.Base.Select                         HaskellWorks.Data.RankSelect.Base.Select0                         HaskellWorks.Data.RankSelect.Base.Select1   other-modules:        Paths_hw_rankselect_base
+ src/HaskellWorks/Data/RankSelect/Base/Rank.hs view
@@ -0,0 +1,18 @@+{-# LANGUAGE FlexibleInstances     #-}+{-# LANGUAGE MultiParamTypeClasses #-}++module HaskellWorks.Data.RankSelect.Base.Rank+  ( -- * Rank & Select+    Rank(..)+  ) where++import HaskellWorks.Data.Positioning+import HaskellWorks.Data.RankSelect.Base.Rank0+import HaskellWorks.Data.RankSelect.Base.Rank1++class Eq a => Rank v a where+  rank :: a -> v -> Count -> Count++instance Rank [Bool] Bool where+  rank a = if a then rank1 else rank0+  {-# INLINABLE rank #-}
+ src/HaskellWorks/Data/RankSelect/Base/Select.hs view
@@ -0,0 +1,18 @@+{-# LANGUAGE FlexibleInstances     #-}+{-# LANGUAGE MultiParamTypeClasses #-}++module HaskellWorks.Data.RankSelect.Base.Select+    ( -- * Rank & Select+      Select(..)+    ) where++import HaskellWorks.Data.Positioning+import HaskellWorks.Data.RankSelect.Base.Select0+import HaskellWorks.Data.RankSelect.Base.Select1++class Eq a => Select v a where+  select :: a -> v -> Count -> Count++instance Select [Bool] Bool where+  select a = if a then select1 else select0+  {-# INLINABLE select #-}