| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
ProjectForge.Render
Description
Synopsis
- renderFileTemplate :: (MonadLogger m, MonadIO m) => RenderTemplateOpts -> FileTemplate -> Value -> m (FilePath, Text)
- renderProjectTemplate :: (MonadIO m, MonadLogger m) => RenderTemplateOpts -> ProjectTemplate -> Value -> m [(FilePath, Text)]
- writeTemplateResult :: (MonadLogger m, MonadIO m) => [(FilePath, Text)] -> m ()
- newtype RenderTemplateOpts = MkRenderTemplateOpts {}
- data RenderWarnHandling
- data RenderException
- defaultRenderTemplateOpts :: RenderTemplateOpts
Rendering templates
Arguments
| :: (MonadLogger m, MonadIO m) | |
| => RenderTemplateOpts | |
| -> FileTemplate | |
| -> Value | values to interpolate into the template |
| -> m (FilePath, Text) |
Renders a using FileTemplate.
Values to be input into the template are presented
via a renderMustache representation.Value
>>>import Data.Aeson (toJSON, object, (.=))>>>import ProjectForge.Compile>>>import Blammo.Logging.Simple>>>let settings = toJSON (object [ "prjId" .= "P0000"])>>>let exampleTemplate = compileFileTemplate ("{{prjId}}.md", "This is {{prjId}}")>>>runSimpleLoggingT . (\x -> renderFileTemplate defaultRenderTemplateOpts x settings) =<< exampleTemplate([],("P0000.md","This is P0000"))
renderProjectTemplate Source #
Arguments
| :: (MonadIO m, MonadLogger m) | |
| => RenderTemplateOpts | |
| -> ProjectTemplate | |
| -> Value | values to interpolate into each |
| -> m [(FilePath, Text)] |
Renders a ,
returning a list of filepaths and file contents
that may be written to files.ProjectTemplate
writeTemplateResult :: (MonadLogger m, MonadIO m) => [(FilePath, Text)] -> m () Source #
Utility for writing the results for to files.renderProjectTemplate
Rendering Options and Exception Handling
newtype RenderTemplateOpts Source #
Options to control how is run.renderFileTemplate
Constructors
| MkRenderTemplateOpts | |
Fields | |
Instances
| Show RenderTemplateOpts Source # | |
Defined in ProjectForge.Render Methods showsPrec :: Int -> RenderTemplateOpts -> ShowS # show :: RenderTemplateOpts -> String # showList :: [RenderTemplateOpts] -> ShowS # | |
| Eq RenderTemplateOpts Source # | |
Defined in ProjectForge.Render Methods (==) :: RenderTemplateOpts -> RenderTemplateOpts -> Bool # (/=) :: RenderTemplateOpts -> RenderTemplateOpts -> Bool # | |
data RenderWarnHandling Source #
Flag for how to handle any 'Text.Stache.Type.MustacheWarning's
that may result from .renderFileTemplate
Constructors
| WarningAsError | lift mustache warnings to errors |
| Ignore | Ignore warnings |
Instances
| Show RenderWarnHandling Source # | |
Defined in ProjectForge.Render Methods showsPrec :: Int -> RenderWarnHandling -> ShowS # show :: RenderWarnHandling -> String # showList :: [RenderWarnHandling] -> ShowS # | |
| Eq RenderWarnHandling Source # | |
Defined in ProjectForge.Render Methods (==) :: RenderWarnHandling -> RenderWarnHandling -> Bool # (/=) :: RenderWarnHandling -> RenderWarnHandling -> Bool # | |
data RenderException Source #
New type wrapper for a list of 'Text.Stache.Type.MustacheWarning's
so that it can be made an instance of .Exception
Instances
| Exception RenderException Source # | |
Defined in ProjectForge.Render Methods toException :: RenderException -> SomeException # | |
| Show RenderException Source # | |
Defined in ProjectForge.Render Methods showsPrec :: Int -> RenderException -> ShowS # show :: RenderException -> String # showList :: [RenderException] -> ShowS # | |
| Eq RenderException Source # | |
Defined in ProjectForge.Render Methods (==) :: RenderException -> RenderException -> Bool # (/=) :: RenderException -> RenderException -> Bool # | |