apecs 0.5.1.0 → 0.5.1.1
raw patch · 4 files changed
+12/−4 lines, 4 filesdep ~basedep ~template-haskellPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: base, template-haskell
API changes (from Hackage documentation)
- Apecs.Stores: data Register s
- Apecs.Stores: instance (Apecs.Core.ExplGet GHC.Types.IO s, Apecs.Core.ExplDestroy GHC.Types.IO s, GHC.Enum.Bounded (Apecs.Core.Elem s), GHC.Enum.Enum (Apecs.Core.Elem s)) => Apecs.Core.ExplDestroy GHC.Types.IO (Apecs.Stores.Register s)
- Apecs.Stores: instance (Apecs.Core.ExplGet GHC.Types.IO s, Apecs.Core.ExplSet GHC.Types.IO s, GHC.Enum.Bounded (Apecs.Core.Elem s), GHC.Enum.Enum (Apecs.Core.Elem s)) => Apecs.Core.ExplSet GHC.Types.IO (Apecs.Stores.Register s)
- Apecs.Stores: instance (Apecs.Stores.Cachable s, Apecs.Core.ExplInit GHC.Types.IO s, GHC.Enum.Bounded (Apecs.Core.Elem s), GHC.Enum.Enum (Apecs.Core.Elem s)) => Apecs.Core.ExplInit GHC.Types.IO (Apecs.Stores.Register s)
- Apecs.Stores: instance Apecs.Core.ExplGet m s => Apecs.Core.ExplGet m (Apecs.Stores.Register s)
- Apecs.Stores: instance Apecs.Core.ExplMembers m s => Apecs.Core.ExplMembers m (Apecs.Stores.Register s)
- Apecs.Stores: regLookup :: forall w s c. (Component c, Bounded c, Enum c, Has w IO c, Storage c ~ Register s, c ~ Elem s) => c -> System w [Entity]
Files
- CHANGELOG.md +4/−0
- apecs.cabal +3/−3
- src/Apecs/Stores.hs +3/−1
- test/Main.hs +2/−0
CHANGELOG.md view
@@ -1,3 +1,7 @@+## [0.5.1.1]+### Changed+- `Register` needs UndecidableInstances in GHC 8.6.2, I'm looking for a way around this. I've removed it for now.+ ## [0.5.1.0] ### Added - The `Register` store, which allows reverse lookups for bounded enums.
apecs.cabal view
@@ -1,5 +1,5 @@ name: apecs-version: 0.5.1.0+version: 0.5.1.1 homepage: https://github.com/jonascarpay/apecs#readme license: BSD3 license-file: LICENSE@@ -43,7 +43,7 @@ vector ghc-options: -Wall- -Odph+ -O2 test-suite apecs-test type:@@ -80,10 +80,10 @@ Haskell2010 ghc-options: -Wall- -Odph -- LLVM is disabled by default for travis/compatibility reasons -- For serious benchmarks, please run with -fllvm -- -fllvm+ -O2 -optlo-O3 -threaded -funfolding-use-threshold1000
src/Apecs/Stores.hs view
@@ -13,7 +13,7 @@ ( Map, Cache, Unique, Global, Cachable,- Register, regLookup+ -- Register, regLookup ) where import Control.Monad.Reader@@ -183,6 +183,7 @@ stored <- explMembers s return $! cached U.++ stored +{-- data Register s = Register (VM.IOVector S.IntSet) s type instance Elem (Register s) = Elem s @@ -233,3 +234,4 @@ let offset = negate $ fromEnum (minBound :: Elem s) Register vec _ :: Register s <- getStore fmap Entity . S.toList <$> lift (VM.read vec (fromEnum c - offset))+--}
test/Main.hs view
@@ -110,6 +110,7 @@ prop_setGetTuple = genericSetGet initTuples (undefined :: (T1,T2,T3)) prop_setSetTuple = genericSetSet initTuples (undefined :: (T1,T2,T3)) +{-- newtype TestBool = TestBool Bool deriving (Eq, Show, Bounded, Enum, Arbitrary) instance Component TestBool where type Storage TestBool = Register (Map TestBool) @@ -132,6 +133,7 @@ && sort rf == sort ef && all (`notElem` ef) et )+ --} return [] main = $quickCheckAll