From 020dc9bd4443aa0075dfaae0f11ad09c72e978a2 Mon Sep 17 00:00:00 2001 From: Nicolas Date: Wed, 3 Jun 2015 16:30:15 +0200 Subject: [PATCH] update memoise.cabal and fix Main.hs --- memoise.cabal | 10 ++++++---- src/Main.hs | 8 ++++++-- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/memoise.cabal b/memoise.cabal index 8549923..8d8a064 100644 --- a/memoise.cabal +++ b/memoise.cabal @@ -15,11 +15,13 @@ Executable memoise Hs-source-dirs: src Main-is: Main.hs Build-depends: base >= 4 && < 5 - , snap >= 0.12 && < 0.13 + , snap >= 0.12 , snap-core >= 0.9 && < 0.10 - , heist >= 0.12 && < 0.13 - , lens >= 3.9 && < 3.10 - , text >= 0.11 && < 0.12 + , heist >= 0.12 + , lens >= 3.9 + , text >= 0.11 + , mtl GHC-options: -threaded -O2 Extensions: OverloadedStrings , TemplateHaskell + , FlexibleInstances diff --git a/src/Main.hs b/src/Main.hs index 1db5ccd..795cc2c 100644 --- a/src/Main.hs +++ b/src/Main.hs @@ -1,3 +1,6 @@ +{-# LANGUAGE FlexibleInstances, UndecidableInstances #-} +{-# LANGUAGE ConstraintKinds #-} + import Snap import Snap.Snaplet.Heist import Snap.Util.FileServe @@ -7,7 +10,8 @@ import Data.Text.Encoding import Data.Monoid import Heist import Heist.Interpreted - +import Control.Monad.Trans + data Memoise = Memoise { _heist :: Snaplet (Heist Memoise) , _mainTextboxContents :: Maybe Text @@ -36,7 +40,7 @@ mainTextboxAttributeSplice _ = do memoiseInit :: SnapletInit Memoise Memoise memoiseInit = makeSnaplet "memoise" "The world's laziest hyperlink shortener" Nothing $ do h <- nestSnaplet "heist" heist $ heistInit "templates" - modifyHeistState $ bindAttributeSplices [("main-textbox", mainTextboxAttributeSplice)] + modifyHeistState $ bindAttributeSplices ("main-textbox" ## mainTextboxAttributeSplice) addRoutes [ ("static", serveDirectory "static") , ("", indexHandler) ]