packages feed

simple-templates 0.7.0.2 → 0.8.0.0

raw patch · 4 files changed

+19/−8 lines, 4 filesdep +scientificdep ~aeson

Dependencies added: scientific

Dependency ranges changed: aeson

Files

simple-templates.cabal view
@@ -2,7 +2,7 @@ -- documentation, see http://haskell.org/cabal/users-guide/  name:                simple-templates-version:             0.7.0.2+version:             0.8.0.0 synopsis:            A basic template language for the Simple web framework description:   A basic template language for the Simple web framework. The language supports@@ -30,8 +30,9 @@     , Web.Simple.Templates.Types   build-depends:       base < 6-    , aeson+    , aeson >= 0.7     , attoparsec+    , scientific     , text     , unordered-containers     , vector@@ -43,10 +44,11 @@   main-is: Spec.hs   build-depends:       base < 6-    , aeson+    , aeson >= 0.7     , attoparsec     , HUnit     , hspec+    , scientific     , simple-templates     , vector   default-language: Haskell2010
src/Web/Simple/Templates/Language.hs view
@@ -37,11 +37,12 @@  import Control.Applicative import qualified Data.HashMap.Strict as H+import Data.Aeson import Data.Maybe import Data.Monoid+import Data.Scientific import Data.Text (Text) import qualified Data.Text as T-import Data.Aeson import qualified Data.Vector as V import qualified Data.Attoparsec.Text as A import Web.Simple.Templates.Parser@@ -130,11 +131,18 @@ valueToText val =   case val of     String str -> str-    Number n -> T.pack $ show n-    Bool b -> T.pack $ show b+    Number n -> fromScientific n+    Bool True -> "True"+    Bool False -> "False"     Array _ -> "[array]"     Object _ -> "[object]"     Null -> ""++fromScientific :: Scientific -> Text+fromScientific n+  | e < 0 = T.pack $ show n+  | otherwise = T.pack $ show $ coefficient n * 10 ^ e+  where e = base10Exponent n  compileTemplate :: Text -> Either String Template compileTemplate tmpl = evaluate <$>
src/Web/Simple/Templates/Parser.hs view
@@ -132,8 +132,7 @@                       A.satisfy (/= '"')  pNumber :: A.Parser AST-pNumber = ASTLiteral . Number . fromRational . toRational <$>-  A.number+pNumber = ASTLiteral . Number <$> A.rational  pArray :: A.Parser AST pArray = do
test/Spec.hs view
@@ -2,9 +2,11 @@ module Main where  import Test.Hspec+import qualified Web.Simple.Templates.LanguageSpec import qualified Web.Simple.Templates.ParserSpec  main :: IO () main = hspec $ do+  Web.Simple.Templates.LanguageSpec.spec   Web.Simple.Templates.ParserSpec.spec