anansi 0.4.2 → 0.4.3
raw patch · 3 files changed
+17/−10 lines, 3 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
Files
- anansi.cabal +2/−2
- lib/Anansi/Tangle.hs +11/−4
- lib/Anansi/Types.hs +4/−4
anansi.cabal view
@@ -1,5 +1,5 @@ name: anansi-version: 0.4.2+version: 0.4.3 license: GPL-3 license-file: license.txt author: John Millikin <jmillikin@gmail.com>, Dirk Laurie <dirk.laurie@gmail.com>@@ -32,7 +32,7 @@ source-repository this type: bazaar location: https://john-millikin.com/branches/anansi/0.4/- tag: anansi_0.4.2+ tag: anansi_0.4.3 library hs-source-dirs: lib
lib/Anansi/Tangle.hs view
@@ -180,7 +180,7 @@ S.put (TangleState newPos old) putMacro = do putPosition pos- lookupMacro name >>= mapM_ putContent+ lookupMacro name pos >>= mapM_ putContent putPosition :: Monad m => Position -> TangleT m () putPosition pos = do@@ -193,9 +193,16 @@ TangleEnv _ format <- RWS.ask RWS.tell (encodeUtf8 (format pos)) -lookupMacro :: Monad m => Text -> TangleT m [Content]-lookupMacro name = do+lookupMacro :: Monad m => Text -> Position -> TangleT m [Content]+lookupMacro name pos = do TangleEnv macros _ <- RWS.ask case Data.Map.lookup name macros of- Nothing -> error ("unknown macro: " ++ show name)+ Nothing -> error (concat+ [ "unknown macro "+ , show name+ , " at "+ , Data.Text.unpack (either id id (FP.toText (positionFile pos)))+ , ":"+ , show (positionLine pos)+ ]) Just content -> return content
lib/Anansi/Types.hs view
@@ -35,9 +35,9 @@ import Control.Monad (liftM) import qualified Control.Monad.Reader as Reader-import Control.Monad.Reader (ReaderT, runReaderT)+import Control.Monad.Reader (ReaderT, EnvType, runReaderT) import qualified Control.Monad.Writer as Writer-import Control.Monad.Writer (Writer, execWriter)+import Control.Monad.Writer (Writer, WriterType, execWriter) import Data.ByteString (ByteString) import qualified Data.Map import Data.Map (Map)@@ -106,12 +106,12 @@ unLoomM (f x) instance Reader.MonadReader LoomM where- type Reader.EnvType LoomM = LoomOptions+ type EnvType LoomM = LoomOptions ask = LoomM Reader.ask local f (LoomM m) = LoomM (Reader.local f m) instance Writer.MonadWriter LoomM where- type Writer.WriterType LoomM = ByteString+ type WriterType LoomM = ByteString tell = LoomM . Writer.tell listen (LoomM m) = LoomM (Writer.listen m) pass m = LoomM (Writer.pass (unLoomM m))