packages feed

indexation 0.6.4.1 → 0.8

raw patch · 2 files changed

+11/−5 lines, 2 filesdep ~dense-int-setPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: dense-int-set

API changes (from Hackage documentation)

- Indexation.Data: mergeIndexSets :: IndexSet entity -> IndexSet entity -> IndexSet entity
+ Indexation.Data: intersectIndexSets :: [IndexSet entity] -> IndexSet entity
+ Indexation.Data: invertIndexSet :: IndexSet entity -> IndexSet entity
+ Indexation.Data: uniteIndexSets :: [IndexSet entity] -> IndexSet entity

Files

indexation.cabal view
@@ -1,5 +1,5 @@ name: indexation-version: 0.6.4.1+version: 0.8 category: Data synopsis: Tools for entity indexation description: A set of tools for indexing entities@@ -43,7 +43,7 @@     contravariant >=1.4 && <2,     deepseq >=1.4.3 && <2,     deferred-folds >=0.9.6 && <0.10,-    dense-int-set >=0.2 && <0.3,+    dense-int-set >=0.3 && <0.4,     focus >=1.0.1 && <1.1,     foldl >=1 && <2,     hashable >=1 && <2,
library/Indexation/Functions.hs view
@@ -34,9 +34,15 @@ lookupNewIndex :: Index entity -> ReindexTable entity -> Maybe (Index entity) lookupNewIndex (Index oldIndexInt) (ReindexTable mapVector) = fmap Index (join (mapVector Vector.!? oldIndexInt)) -mergeIndexSets :: IndexSet entity -> IndexSet entity -> IndexSet entity-mergeIndexSets (IndexSet a) (IndexSet b) = IndexSet (DenseIntSet.intersection (DenseIntSet.compose a <> DenseIntSet.compose b))+intersectIndexSets :: [IndexSet entity] -> IndexSet entity+intersectIndexSets = IndexSet . DenseIntSet.intersections . coerce +uniteIndexSets :: [IndexSet entity] -> IndexSet entity+uniteIndexSets = IndexSet . DenseIntSet.unions . coerce++invertIndexSet :: IndexSet entity -> IndexSet entity+invertIndexSet (IndexSet x) = IndexSet (DenseIntSet.invert x)+ topCountedIndexSet :: Int -> IndexCounts a -> IndexSet a topCountedIndexSet amount (IndexCounts countVec) = IndexSet (DenseIntSet.topValueIndices compare amount countVec) @@ -44,7 +50,7 @@ indexSetByMinCount min (IndexCounts countVec) = IndexSet (DenseIntSet.filteredIndices (>= min) countVec)  countIndexSet :: IndexSet a -> Int-countIndexSet (IndexSet set) = DenseIntSet.size set+countIndexSet (IndexSet set) = DenseIntSet.population set  newIndexToOldIndexTable :: IndexSet a -> EntityTable (Index a) newIndexToOldIndexTable (IndexSet set) = EntityTable (DenseIntSet.presentElementsVector set Index)