packages feed

HStringTemplate 0.3 → 0.3.1

raw patch · 2 files changed

+7/−2 lines, 2 files

Files

HStringTemplate.cabal view
@@ -1,5 +1,5 @@ name:                HStringTemplate-version:             0.3+version:             0.3.1 synopsis:            StringTemplate implementation in Haskell. description:         A port of the Java library by Terrence Parr. category:            Text
Text/StringTemplate/Base.hs view
@@ -161,7 +161,12 @@  stLookup :: (Stringable a) => [Char] -> SEnv a -> StringTemplate a stLookup x env = maybe (newSTMP ("No Template Found for: " ++ x))-                 (\st-> st {senv = env}) $ stGetFirst (sgen env x)+                 (\st-> st {senv = mergeSEnvs env (senv st)}) $ stGetFirst (sgen env x)++--merges values of former into latter, preserving encoder+--of latter, as well as non-overriden options. group of latter is overridden.+mergeSEnvs :: SEnv a -> SEnv a -> SEnv a+mergeSEnvs x y = SEnv {smp = M.union (smp x) (smp y), sopts = (sopts y ++ sopts x), sgen = sgen x, senc = senc y}  parseSTMP :: (Stringable a) => (Char, Char) -> String -> SEnv a -> a parseSTMP x = either (showStr .  show) (id) . runParser (stmpl False) x ""