antisplice 0.17.0.2 → 0.17.0.3
raw patch · 4 files changed
+14/−32 lines, 4 filesdep ~basedep ~template-haskelldep ~textPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: base, template-haskell, text
API changes (from Hackage documentation)
- Game.Antisplice.Monad: instance ChAtoms m0 => ChAtoms (CounterT m0)
- Game.Antisplice.Monad: instance ChBufferedScanner m0 => ChBufferedScanner (AtomStoreT m0)
- Game.Antisplice.Monad: instance ChBufferedScanner m0 => ChBufferedScanner (CounterT m0)
- Game.Antisplice.Monad: instance ChChannelPrinter Bool m0 => ChChannelPrinter Bool (AtomStoreT m0)
- Game.Antisplice.Monad: instance ChChannelPrinter Bool m0 => ChChannelPrinter Bool (CounterT m0)
- Game.Antisplice.Monad: instance ChChannelPrinter Handle m0 => ChChannelPrinter Handle (AtomStoreT m0)
- Game.Antisplice.Monad: instance ChChannelPrinter Handle m0 => ChChannelPrinter Handle (CounterT m0)
- Game.Antisplice.Monad: instance ChChannelPrinter Int m0 => ChChannelPrinter Int (AtomStoreT m0)
- Game.Antisplice.Monad: instance ChChannelPrinter Int m0 => ChChannelPrinter Int (CounterT m0)
- Game.Antisplice.Monad: instance ChClock m0 => ChClock (AtomStoreT m0)
- Game.Antisplice.Monad: instance ChClock m0 => ChClock (CounterT m0)
- Game.Antisplice.Monad: instance ChExpand m0 => ChExpand (AtomStoreT m0)
- Game.Antisplice.Monad: instance ChExpand m0 => ChExpand (CounterT m0)
- Game.Antisplice.Monad: instance ChExpanderEnv m0 => ChExpanderEnv (AtomStoreT m0)
- Game.Antisplice.Monad: instance ChExpanderEnv m0 => ChExpanderEnv (CounterT m0)
- Game.Antisplice.Monad: instance ChExtendedPrinter m0 => ChExtendedPrinter (AtomStoreT m0)
- Game.Antisplice.Monad: instance ChExtendedPrinter m0 => ChExtendedPrinter (CounterT m0)
- Game.Antisplice.Monad: instance ChFinalizer m0 => ChFinalizer (AtomStoreT m0)
- Game.Antisplice.Monad: instance ChFinalizer m0 => ChFinalizer (CounterT m0)
- Game.Antisplice.Monad: instance ChHistoryEnv m0 => ChHistoryEnv (AtomStoreT m0)
- Game.Antisplice.Monad: instance ChHistoryEnv m0 => ChHistoryEnv (CounterT m0)
- Game.Antisplice.Monad: instance ChPrinter m0 => ChPrinter (AtomStoreT m0)
- Game.Antisplice.Monad: instance ChPrinter m0 => ChPrinter (CounterT m0)
- Game.Antisplice.Monad: instance ChRandom m0 => ChRandom (AtomStoreT m0)
- Game.Antisplice.Monad: instance ChRandom m0 => ChRandom (CounterT m0)
- Game.Antisplice.Monad: instance ChScanner m0 => ChScanner (AtomStoreT m0)
- Game.Antisplice.Monad: instance ChScanner m0 => ChScanner (CounterT m0)
- Game.Antisplice.Monad: instance ChSpawn m0 => ChSpawn (AtomStoreT m0)
- Game.Antisplice.Monad: instance ChSpawn m0 => ChSpawn (CounterT m0)
- Game.Antisplice.Templates: mkAtoms :: Name -> DecsQ
- Game.Antisplice.Templates: mkCounter :: Name -> DecsQ
+ Game.Antisplice.Monad: instance (ChAtoms (ObjectT m0), ChFilesystem m0) => ChFilesystem (ObjectT m0)
+ Game.Antisplice.Monad: instance (ChAtoms (PlayerFilterT m0), ChFilesystem m0) => ChFilesystem (PlayerFilterT m0)
+ Game.Antisplice.Monad: instance (ChAtoms (PlayerT m0), ChFilesystem m0) => ChFilesystem (PlayerT m0)
+ Game.Antisplice.Monad: instance (ChAtoms (RoomT m0), ChFilesystem m0) => ChFilesystem (RoomT m0)
+ Game.Antisplice.Monad: instance (ChAtoms (SplErrT m0), ChFilesystem m0) => ChFilesystem (SplErrT m0)
+ Game.Antisplice.Monad: instance (ChAtoms (VocabT m0), ChFilesystem m0) => ChFilesystem (VocabT m0)
+ Game.Antisplice.Monad: instance CanLoad m0 n0 => CanLoad (ObjectT m0) n0
+ Game.Antisplice.Monad: instance CanLoad m0 n0 => CanLoad (PlayerFilterT m0) n0
+ Game.Antisplice.Monad: instance CanLoad m0 n0 => CanLoad (PlayerT m0) n0
+ Game.Antisplice.Monad: instance CanLoad m0 n0 => CanLoad (RoomT m0) n0
+ Game.Antisplice.Monad: instance CanLoad m0 n0 => CanLoad (SplErrT m0) n0
+ Game.Antisplice.Monad: instance CanLoad m0 n0 => CanLoad (VocabT m0) n0
+ Game.Antisplice.Monad: instance CanMount m0 n0 => CanMount (ObjectT m0) n0
+ Game.Antisplice.Monad: instance CanMount m0 n0 => CanMount (PlayerFilterT m0) n0
+ Game.Antisplice.Monad: instance CanMount m0 n0 => CanMount (PlayerT m0) n0
+ Game.Antisplice.Monad: instance CanMount m0 n0 => CanMount (RoomT m0) n0
+ Game.Antisplice.Monad: instance CanMount m0 n0 => CanMount (SplErrT m0) n0
+ Game.Antisplice.Monad: instance CanMount m0 n0 => CanMount (VocabT m0) n0
+ Game.Antisplice.Monad: instance CanSave m0 n0 => CanSave (ObjectT m0) n0
+ Game.Antisplice.Monad: instance CanSave m0 n0 => CanSave (PlayerFilterT m0) n0
+ Game.Antisplice.Monad: instance CanSave m0 n0 => CanSave (PlayerT m0) n0
+ Game.Antisplice.Monad: instance CanSave m0 n0 => CanSave (RoomT m0) n0
+ Game.Antisplice.Monad: instance CanSave m0 n0 => CanSave (SplErrT m0) n0
+ Game.Antisplice.Monad: instance CanSave m0 n0 => CanSave (VocabT m0) n0
+ Game.Antisplice.Stereos: instance (ChAtoms (StereoBuilderT m0), ChFilesystem m0) => ChFilesystem (StereoBuilderT m0)
+ Game.Antisplice.Stereos: instance CanLoad m0 n0 => CanLoad (StereoBuilderT m0) n0
+ Game.Antisplice.Stereos: instance CanMount m0 n0 => CanMount (StereoBuilderT m0) n0
+ Game.Antisplice.Stereos: instance CanSave m0 n0 => CanSave (StereoBuilderT m0) n0
Files
- antisplice.cabal +2/−2
- src/Game/Antisplice/Monad.hs +10/−10
- src/Game/Antisplice/Stereos.hs +2/−2
- src/Game/Antisplice/Templates.hs +0/−18
antisplice.cabal view
@@ -10,7 +10,7 @@ -- PVP summary: +-+------- breaking API changes -- | | +----- non-breaking API additions -- | | | +--- code changes with no API change-version: 0.17.0.2+version: 0.17.0.3 -- A short (one-line) description of the package. synopsis: An engine for text-based dungeons.@@ -57,7 +57,7 @@ other-extensions: TemplateHaskell, QuasiQuotes, FlexibleInstances, MultiParamTypeClasses, TypeSynonymInstances, FlexibleContexts, UndecidableInstances, RankNTypes, TypeFamilies, FunctionalDependencies, LambdaCase, ScopedTypeVariables, ExistentialQuantification, TupleSections, RecordWildCards, DeriveDataTypeable -- Other library packages from which modules are imported.- build-depends: base >=4.6 && <4.7, chatty >=0.6 && <0.7, chatty-utils >= 0.7 && <0.8, text >=0.11 && <0.12, template-haskell >=2.8 && <2.9, mtl >=2.1 && <2.2, transformers >=0.3 && <0.4, haskeline >= 0.7 && < 0.8, time >= 1.4 && < 1.5+ build-depends: base >=4.6 && <4.8, chatty >=0.6 && <0.7, chatty-utils >= 0.7 && <0.8, text >=1.1 && <1.2, template-haskell >=2.8 && <2.10, mtl >=2.1 && <2.2, transformers >=0.3 && <0.4, haskeline >= 0.7 && < 0.8, time >= 1.4 && < 1.5 -- Directories containing source files. hs-source-dirs: src
src/Game/Antisplice/Monad.hs view
@@ -1,4 +1,4 @@-{-# LANGUAGE TemplateHaskell, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}+{-# LANGUAGE TemplateHaskell, TypeSynonymInstances, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts, UndecidableInstances #-} {- This module is part of Antisplice.@@ -49,15 +49,15 @@ --import Language.Haskell.TH import System.IO -mkInteractor ''SplErrT mkChatty mkRoom mkDungeon mkObject mkCounter mkPlayer mkIO mkVocab mkAtoms (mkChannelPrinter ''PlayerId)-mkInteractor ''DungeonT mkPrinter mkDefCP mkExtendedPrinter mkScanner mkFinalizer mkClock mkExpanderEnv mkHistoryEnv mkRandom (mkFail ''SplErr) mkCounter mkIO mkVocab mkAtoms (mkChannelPrinter ''PlayerId)-mkInteractor ''RoomT mkChatty (mkFail ''SplErr) mkCounter mkIO mkVocab mkAtoms (mkChannelPrinter ''PlayerId)-mkInteractor ''ObjectT mkChatty (mkFail ''SplErr) mkCounter mkIO mkVocab mkAtoms (mkChannelPrinter ''PlayerId)-mkInteractor ''CounterT mkChatty (mkFail ''SplErr) mkRoom mkObject mkDungeon mkPlayer mkIO mkVocab mkAtoms (mkChannelPrinter ''PlayerId)-mkInteractor ''PlayerT mkChatty (mkFail ''SplErr) mkCounter mkIO mkVocab mkAtoms (mkChannelPrinter ''PlayerId)-mkInteractor ''VocabT mkChatty (mkFail ''SplErr) mkCounter mkDungeon mkRoom mkAtoms mkPlayer (mkChannelPrinter ''PlayerId)-mkInteractor ''AtomStoreT mkChatty (mkFail ''SplErr) mkDungeon mkRoom mkVocab mkPlayer (mkChannelPrinter ''PlayerId)-mkInteractor ''PlayerFilterT mkArchiver mkVocab mkAtoms mkCounter+mkInteractor ''SplErrT mkChatty mkRoom mkDungeon mkObject mkPlayer mkIO mkVocab (mkChannelPrinter ''PlayerId)+mkInteractor ''DungeonT mkPrinter mkDefCP mkExtendedPrinter mkScanner mkFinalizer mkClock mkExpanderEnv mkHistoryEnv mkRandom (mkFail ''SplErr) mkCounter mkAtoms mkIO mkVocab (mkChannelPrinter ''PlayerId)+mkInteractor ''RoomT mkChatty (mkFail ''SplErr) mkIO mkVocab (mkChannelPrinter ''PlayerId)+mkInteractor ''ObjectT mkChatty (mkFail ''SplErr) mkIO mkVocab (mkChannelPrinter ''PlayerId)+mkInteractor ''CounterT (mkFail ''SplErr) mkRoom mkObject mkDungeon mkPlayer mkIO mkVocab (mkChannelPrinter ''PlayerId)+mkInteractor ''PlayerT mkChatty (mkFail ''SplErr) mkIO mkVocab (mkChannelPrinter ''PlayerId)+mkInteractor ''VocabT mkChatty (mkFail ''SplErr) mkDungeon mkRoom mkPlayer (mkChannelPrinter ''PlayerId)+mkInteractor ''AtomStoreT (mkFail ''SplErr) mkDungeon mkRoom mkVocab mkPlayer (mkChannelPrinter ''PlayerId)+mkInteractor ''PlayerFilterT mkArchiver mkVocab liftM concat $ forM [''AnsiPrinterT,''HtmlPrinterT,''ExpanderT,''NullExpanderT,''RecorderT] $ \s -> mkInteractor s (mkChannelPrinter ''PlayerId) mkDungeon mkPlayer mkRoom (mkFail ''SplErr)
src/Game/Antisplice/Stereos.hs view
@@ -1,4 +1,4 @@-{-# LANGUAGE FlexibleContexts, MultiParamTypeClasses, TemplateHaskell, RecordWildCards #-}+{-# LANGUAGE FlexibleContexts, FlexibleInstances, MultiParamTypeClasses, TemplateHaskell, RecordWildCards, UndecidableInstances #-} {- This module is part of Antisplice.@@ -160,7 +160,7 @@ (_,s) <- runStereoBuilderT m none registerStereo s -mkInteractor ''StereoBuilderT mkChatty (mkFail ''SplErr) mkDungeon mkRoom mkVocab mkCounter mkAtoms mkPlayer mkIO mkObject (mkChannelPrinter ''PlayerId)+mkInteractor ''StereoBuilderT mkChatty (mkFail ''SplErr) mkDungeon mkRoom mkVocab mkPlayer mkIO mkObject (mkChannelPrinter ''PlayerId) -- | Default stereotype. defaultStereo :: MonadVocab m => m PlayerStereo
src/Game/Antisplice/Templates.hs view
@@ -67,13 +67,6 @@ |] where sx = strToType s --- | Automatically derive an instance for 'MonadCounter'-mkCounter s = [d|- instance ChCounter m => ChCounter ($sx m) where- countOn = lift countOn- |]- where sx = strToType s- -- | Automatically derive an instance for 'MonadObject' mkObject s = [d| instance MonadObject m => MonadObject ($sx m) where@@ -104,15 +97,4 @@ insertVocab k = lift . insertVocab k vocabKnown = lift . vocabKnown |]- where sx = strToType s---- | Automatically derive an instance for 'MonadAtoms'-mkAtoms s = [d|- instance ChAtoms m => ChAtoms ($sx m) where- newAtom = lift newAtom- putAtom k = lift . putAtom k- getAtom = lift . getAtom- dispAtom = lift . dispAtom- cloneAtom = lift . cloneAtom- |] where sx = strToType s