HStringTemplate 0.8.3 → 0.8.5
raw patch · 2 files changed
+5/−6 lines, 2 filesdep ~timePVP: major bump suggested
API removals or changes: PVP suggests a major version bump
Dependency ranges changed: time
API changes (from Hackage documentation)
- Text.StringTemplate.Base: chkSTMP :: StringTemplate a -> SEnv a -> (Maybe String, Maybe [String], Maybe [String])
- Text.StringTemplate.Base: instance Exception TmplException
- Text.StringTemplate.Base: instance Show TmplException
- Text.StringTemplate.Base: instance Typeable TmplException
- Text.StringTemplate.Base: runSTMP :: StringTemplate a -> Either String (SEnv a -> a)
- Text.StringTemplate.Base: senc :: SEnv a -> a -> a
- Text.StringTemplate.Base: senv :: StringTemplate a -> SEnv a
- Text.StringTemplate.Base: sgen :: SEnv a -> STGroup a
- Text.StringTemplate.Base: smp :: SEnv a -> SMap a
- Text.StringTemplate.Base: sopts :: SEnv a -> [(String, SEnv a -> SElem a)]
- Text.StringTemplate.Classes: instance Eq a => Eq (StFirst a)
- Text.StringTemplate.Classes: instance Functor StFirst
- Text.StringTemplate.Classes: instance Monoid (StFirst a)
- Text.StringTemplate.Classes: instance Ord a => Ord (StFirst a)
- Text.StringTemplate.Classes: instance Read a => Read (StFirst a)
- Text.StringTemplate.Classes: instance Show a => Show (StFirst a)
- Text.StringTemplate.Classes: instance Stringable (Endo String)
- Text.StringTemplate.Classes: instance Stringable Builder
- Text.StringTemplate.Classes: instance Stringable ByteString
- Text.StringTemplate.Classes: instance Stringable Doc
- Text.StringTemplate.Classes: instance Stringable String
- Text.StringTemplate.Classes: instance Stringable Text
- Text.StringTemplate.Classes: stGetFirst :: StFirst a -> Maybe a
- Text.StringTemplate.GenericStandard: instance [overlap ok] Data a => ToSElem a
+ Text.StringTemplate.Base: [chkSTMP] :: StringTemplate a -> SEnv a -> (Maybe String, Maybe [String], Maybe [String])
+ Text.StringTemplate.Base: [runSTMP] :: StringTemplate a -> Either String (SEnv a -> a)
+ Text.StringTemplate.Base: [senc] :: SEnv a -> a -> a
+ Text.StringTemplate.Base: [senv] :: StringTemplate a -> SEnv a
+ Text.StringTemplate.Base: [sgen] :: SEnv a -> STGroup a
+ Text.StringTemplate.Base: [smp] :: SEnv a -> SMap a
+ Text.StringTemplate.Base: [sopts] :: SEnv a -> [(String, SEnv a -> SElem a)]
+ Text.StringTemplate.Base: instance GHC.Exception.Exception Text.StringTemplate.Base.TmplException
+ Text.StringTemplate.Base: instance GHC.Show.Show Text.StringTemplate.Base.TmplException
+ Text.StringTemplate.Classes: [stGetFirst] :: StFirst a -> Maybe a
+ Text.StringTemplate.Classes: instance GHC.Base.Functor Text.StringTemplate.Classes.StFirst
+ Text.StringTemplate.Classes: instance GHC.Base.Monoid (Text.StringTemplate.Classes.StFirst a)
+ Text.StringTemplate.Classes: instance GHC.Classes.Eq a => GHC.Classes.Eq (Text.StringTemplate.Classes.StFirst a)
+ Text.StringTemplate.Classes: instance GHC.Classes.Ord a => GHC.Classes.Ord (Text.StringTemplate.Classes.StFirst a)
+ Text.StringTemplate.Classes: instance GHC.Read.Read a => GHC.Read.Read (Text.StringTemplate.Classes.StFirst a)
+ Text.StringTemplate.Classes: instance GHC.Show.Show a => GHC.Show.Show (Text.StringTemplate.Classes.StFirst a)
+ Text.StringTemplate.Classes: instance Text.StringTemplate.Classes.Stringable (Data.Monoid.Endo GHC.Base.String)
+ Text.StringTemplate.Classes: instance Text.StringTemplate.Classes.Stringable Data.ByteString.Builder.Internal.Builder
+ Text.StringTemplate.Classes: instance Text.StringTemplate.Classes.Stringable Data.ByteString.Internal.ByteString
+ Text.StringTemplate.Classes: instance Text.StringTemplate.Classes.Stringable Data.ByteString.Lazy.Internal.ByteString
+ Text.StringTemplate.Classes: instance Text.StringTemplate.Classes.Stringable Data.Text.Internal.Builder.Builder
+ Text.StringTemplate.Classes: instance Text.StringTemplate.Classes.Stringable Data.Text.Internal.Lazy.Text
+ Text.StringTemplate.Classes: instance Text.StringTemplate.Classes.Stringable Data.Text.Internal.Text
+ Text.StringTemplate.Classes: instance Text.StringTemplate.Classes.Stringable GHC.Base.String
+ Text.StringTemplate.Classes: instance Text.StringTemplate.Classes.Stringable Text.PrettyPrint.HughesPJ.Doc
+ Text.StringTemplate.GenericStandard: instance Data.Data.Data a => Text.StringTemplate.Classes.ToSElem a
- Text.StringTemplate: (|=) :: Monad m => a -> m a1 -> m (a, a1)
+ Text.StringTemplate: (|=) :: (Monad m) => a -> m a1 -> m (a, a1)
- Text.StringTemplate: class Show a => StringTemplateShows a where stringTemplateShow = show stringTemplateFormattedShow = flip $ const . stringTemplateShow
+ Text.StringTemplate: class (Show a) => StringTemplateShows a where stringTemplateShow = show stringTemplateFormattedShow = flip $ const . stringTemplateShow
- Text.StringTemplate: directoryGroup :: Stringable a => FilePath -> IO (STGroup a)
+ Text.StringTemplate: directoryGroup :: (Stringable a) => FilePath -> IO (STGroup a)
- Text.StringTemplate: directoryGroupExt :: Stringable a => FilePath -> FilePath -> IO (STGroup a)
+ Text.StringTemplate: directoryGroupExt :: (Stringable a) => FilePath -> FilePath -> IO (STGroup a)
- Text.StringTemplate: directoryGroupLazy :: Stringable a => FilePath -> IO (STGroup a)
+ Text.StringTemplate: directoryGroupLazy :: (Stringable a) => FilePath -> IO (STGroup a)
- Text.StringTemplate: directoryGroupLazyExt :: Stringable a => FilePath -> FilePath -> IO (STGroup a)
+ Text.StringTemplate: directoryGroupLazyExt :: (Stringable a) => FilePath -> FilePath -> IO (STGroup a)
- Text.StringTemplate: directoryGroupRecursive :: Stringable a => FilePath -> IO (STGroup a)
+ Text.StringTemplate: directoryGroupRecursive :: (Stringable a) => FilePath -> IO (STGroup a)
- Text.StringTemplate: directoryGroupRecursiveExt :: Stringable a => FilePath -> FilePath -> IO (STGroup a)
+ Text.StringTemplate: directoryGroupRecursiveExt :: (Stringable a) => FilePath -> FilePath -> IO (STGroup a)
- Text.StringTemplate: directoryGroupRecursiveLazy :: Stringable a => FilePath -> IO (STGroup a)
+ Text.StringTemplate: directoryGroupRecursiveLazy :: (Stringable a) => FilePath -> IO (STGroup a)
- Text.StringTemplate: directoryGroupRecursiveLazyExt :: Stringable a => FilePath -> FilePath -> IO (STGroup a)
+ Text.StringTemplate: directoryGroupRecursiveLazyExt :: (Stringable a) => FilePath -> FilePath -> IO (STGroup a)
- Text.StringTemplate: getStringTemplate :: Stringable a => String -> STGroup a -> Maybe (StringTemplate a)
+ Text.StringTemplate: getStringTemplate :: (Stringable a) => String -> STGroup a -> Maybe (StringTemplate a)
- Text.StringTemplate: getStringTemplate' :: Stringable a => String -> STGroup a -> Maybe (StringTemplate a)
+ Text.StringTemplate: getStringTemplate' :: (Stringable a) => String -> STGroup a -> Maybe (StringTemplate a)
- Text.StringTemplate: setEncoder :: Stringable a => (a -> a) -> StringTemplate a -> StringTemplate a
+ Text.StringTemplate: setEncoder :: (Stringable a) => (a -> a) -> StringTemplate a -> StringTemplate a
- Text.StringTemplate: setEncoderGroup :: Stringable a => (a -> a) -> STGroup a -> STGroup a
+ Text.StringTemplate: setEncoderGroup :: (Stringable a) => (a -> a) -> STGroup a -> STGroup a
- Text.StringTemplate: setManyNativeAttrib :: Stringable b => [(String, b)] -> StringTemplate b -> StringTemplate b
+ Text.StringTemplate: setManyNativeAttrib :: (Stringable b) => [(String, b)] -> StringTemplate b -> StringTemplate b
- Text.StringTemplate.Base: class Show a => StringTemplateShows a where stringTemplateShow = show stringTemplateFormattedShow = flip $ const . stringTemplateShow
+ Text.StringTemplate.Base: class (Show a) => StringTemplateShows a where stringTemplateShow = show stringTemplateFormattedShow = flip $ const . stringTemplateShow
- Text.StringTemplate.Base: getStringTemplate :: Stringable a => String -> STGroup a -> Maybe (StringTemplate a)
+ Text.StringTemplate.Base: getStringTemplate :: (Stringable a) => String -> STGroup a -> Maybe (StringTemplate a)
- Text.StringTemplate.Base: getStringTemplate' :: Stringable a => String -> STGroup a -> Maybe (StringTemplate a)
+ Text.StringTemplate.Base: getStringTemplate' :: (Stringable a) => String -> STGroup a -> Maybe (StringTemplate a)
- Text.StringTemplate.Base: parseSTMP :: Stringable a => (Char, Char) -> String -> Either String (SEnv a -> a)
+ Text.StringTemplate.Base: parseSTMP :: (Stringable a) => (Char, Char) -> String -> Either String (SEnv a -> a)
- Text.StringTemplate.Base: setEncoder :: Stringable a => (a -> a) -> StringTemplate a -> StringTemplate a
+ Text.StringTemplate.Base: setEncoder :: (Stringable a) => (a -> a) -> StringTemplate a -> StringTemplate a
- Text.StringTemplate.Base: setManyNativeAttrib :: Stringable b => [(String, b)] -> StringTemplate b -> StringTemplate b
+ Text.StringTemplate.Base: setManyNativeAttrib :: (Stringable b) => [(String, b)] -> StringTemplate b -> StringTemplate b
- Text.StringTemplate.Classes: class Show a => StringTemplateShows a where stringTemplateShow = show stringTemplateFormattedShow = flip $ const . stringTemplateShow
+ Text.StringTemplate.Classes: class (Show a) => StringTemplateShows a where stringTemplateShow = show stringTemplateFormattedShow = flip $ const . stringTemplateShow
Files
- HStringTemplate.cabal +3/−4
- Text/StringTemplate/QQ.hs +2/−2
HStringTemplate.cabal view
@@ -1,5 +1,5 @@ name: HStringTemplate-version: 0.8.3+version: 0.8.5 synopsis: StringTemplate implementation in Haskell. description: A port of the Java library by Terrence Parr. category: Text@@ -7,16 +7,15 @@ license-file: LICENSE author: Sterling Clover maintainer: s.clover@gmail.com-Tested-With: GHC == 7.8.3+Tested-With: GHC == 7.10.3 Build-Type: Simple-build-Depends: base Cabal-Version: >= 1.6 library build-depends: syb, base >= 4, base < 5, filepath, parsec < 4, containers, pretty >= 1.1.0.0,- time >= 1.4.2 && < 1.6, bytestring, directory, array, text, deepseq, blaze-builder,void, template-haskell >= 2.3, mtl,+ time >= 1.4.2 && < 1.7, bytestring, directory, array, text, deepseq, blaze-builder,void, template-haskell >= 2.3, mtl, old-locale exposed-modules: Text.StringTemplate
Text/StringTemplate/QQ.hs view
@@ -19,6 +19,7 @@ import qualified Language.Haskell.TH as TH import Language.Haskell.TH.Quote import Text.StringTemplate.Base+import qualified Data.Set as S quoteTmplExp :: String -> TH.ExpQ quoteTmplPat :: String -> TH.PatQ@@ -33,9 +34,8 @@ Right (xs,_,_) -> xs Left err -> fail $ show err base = TH.AppE (TH.VarE (TH.mkName "Text.StringTemplate.newSTMP")) (TH.LitE (TH.StringL s))- tmpl = foldr addAttrib base vars+ tmpl = S.foldr addAttrib base $ S.fromList vars addAttrib var = TH.AppE (TH.AppE (TH.AppE (TH.VarE (TH.mkName "Text.StringTemplate.setAttribute")) (TH.LitE (TH.StringL ('`' : var ++ "`")))) (TH.VarE (TH.mkName var)))-