@@ -11,12 +11,14 @@ import qualified Data.Map as M
1111import Data.List (isPrefixOf)
1212import Data.Char (isSpace)
1313import Data.Maybe (fromMaybe)
14−import Control.Parallel.Strategies (rdeepseq, ($|))
14+import Control.Monad (liftM)
1515import Control.Monad.Reader (liftIO)
16+import Control.Parallel.Strategies (rdeepseq, ($|))
1617import System.FilePath (takeExtension)
1718import System.IO
1819
1920import Text.Pandoc
21+import Data.Binary
2022
2123import Text.Hakyll.Internal.Cache
2224import Text.Hakyll.Hakyll (Hakyll)
@@ -148,3 +150,8 @@ instance Renderable Page where
148150 getDependencies = (:[]) . getPagePath
149151 getURL = getPageURL
150152 toContext (Page page) = return page
153+
154+-- Make pages serializable.
155+instance Binary Page where
156+ put (Page context) = put $ M.toList context
157+ get = liftM (Page . M.fromList) get