Safe Haskell | None |
---|
Provides a monad that collects vocab during dungeon construction and reproduces it later.
- data Token
- newtype VocabT m a = Vocab {}
- class Monad m => MonadVocab m where
- lookupVocab :: String -> m Token
- insertVocab :: String -> (String -> Token) -> m ()
- vocabKnown :: String -> m Bool
Documentation
Algebraic type for primitive and complex tokens.
The vocab monad. Carries the currently noun vocab as its state.
MonadTrans VocabT | |
MonadError SplErr m0 => MonadError SplErr (VocabT m0) | |
ChannelPrinter Bool m0 => ChannelPrinter Bool (VocabT m0) | |
ChannelPrinter Int m0 => ChannelPrinter Int (VocabT m0) | |
ChannelPrinter Handle m0 => ChannelPrinter Handle (VocabT m0) | |
ChannelPrinter PlayerId m0 => ChannelPrinter PlayerId (VocabT m0) | |
(MonadDungeon m0, ChannelPrinter PlayerId m0) => Broadcaster PlayerId (VocabT m0) | |
Monad m => Monad (VocabT m) | |
Functor m => Functor (VocabT m) | |
MonadIO m => MonadIO (VocabT m) | |
MonadCounter m0 => MonadCounter (VocabT m0) | |
MonadAtoms m0 => MonadAtoms (VocabT m0) | |
Monad m => MonadVocab (VocabT m) | |
MonadPrinter m0 => MonadPrinter (VocabT m0) | |
MonadFinalizer m0 => MonadFinalizer (VocabT m0) | |
MonadScanner m0 => MonadScanner (VocabT m0) | |
MonadExpand m0 => MonadExpand (VocabT m0) | |
ExpanderEnv m0 => ExpanderEnv (VocabT m0) | |
MonadRandom m0 => MonadRandom (VocabT m0) | |
MonadClock m0 => MonadClock (VocabT m0) | |
ExtendedPrinter m0 => ExtendedPrinter (VocabT m0) | |
MonadDungeon m0 => MonadDungeon (VocabT m0) | |
MonadPlayer m0 => MonadPlayer (VocabT m0) | |
MonadRoom m0 => MonadRoom (VocabT m0) | |
MonadSpawn m0 => MonadSpawn (VocabT m0) | |
HistoryEnv m0 => HistoryEnv (VocabT m0) |
class Monad m => MonadVocab m whereSource
Tyepclass for all vocab-memorizing monads.
lookupVocab :: String -> m TokenSource
Lookup a word and return its token.
insertVocab :: String -> (String -> Token) -> m ()Source
Learn a new word.
vocabKnown :: String -> m BoolSource
Check if a word is already known.
MonadVocab m0 => MonadVocab (CounterT m0) | |
MonadVocab m0 => MonadVocab (SplErrT m0) | |
MonadVocab m0 => MonadVocab (AtomStoreT m0) | |
Monad m => MonadVocab (VocabT m) | |
MonadVocab m0 => MonadVocab (DungeonT m0) | |
MonadVocab m0 => MonadVocab (PlayerT m0) | |
MonadVocab m0 => MonadVocab (ObjectT m0) | |
MonadVocab m0 => MonadVocab (RoomT m0) | |
MonadVocab m0 => MonadVocab (PlayerFilterT m0) | |
MonadVocab m0 => MonadVocab (StereoBuilderT m0) |