Copyright | (c) 2021-2022 Mirko Westermeier |
---|---|
License | MIT |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
HTMell content related types and functions
Synopsis
- class HTMellContent c where
- newtype RawHTMLContent = RawHTMLContent Text
The content type class
class HTMellContent c where #
Content stored in HTree
trees. Instances must provide
a function to read content from filesystem and extract metadata and HTML
from a content value.
getContent :: FilePath -> IO (Maybe c) #
Extract content from a given file. The instance can ignore the file
with Nothing
, for example if it has the wrong extension.
metadata :: c -> Map String String #
Extract metadata from a given content value.
Extract plain HTML Text
from a given content value.
Instances
HTMellContent RawHTMLContent # | |
Defined in HTMell.Content getContent :: FilePath -> IO (Maybe RawHTMLContent) # metadata :: RawHTMLContent -> Map String String # toHTML :: RawHTMLContent -> Text # | |
HTMellContent MarkdownContent # | |
Defined in HTMell.Content.Markdown getContent :: FilePath -> IO (Maybe MarkdownContent) # metadata :: MarkdownContent -> Map String String # toHTML :: MarkdownContent -> Text # | |
HTMellContent PseudoContent # | |
Defined in HTMell.Util getContent :: FilePath -> IO (Maybe PseudoContent) # metadata :: PseudoContent -> Map String String # toHTML :: PseudoContent -> Text # |
Predefined content types
newtype RawHTMLContent #
The simplest possible useful content type as the extracted HTML via
toHTML
is just the file content. Ignores files that have no ".html"
extension and extracts an empty
metadata Map
via metadata
.
Instances
Eq RawHTMLContent # | |
Defined in HTMell.Content (==) :: RawHTMLContent -> RawHTMLContent -> Bool # (/=) :: RawHTMLContent -> RawHTMLContent -> Bool # | |
Show RawHTMLContent # | |
Defined in HTMell.Content showsPrec :: Int -> RawHTMLContent -> ShowS # show :: RawHTMLContent -> String # showList :: [RawHTMLContent] -> ShowS # | |
HTMellContent RawHTMLContent # | |
Defined in HTMell.Content getContent :: FilePath -> IO (Maybe RawHTMLContent) # metadata :: RawHTMLContent -> Map String String # toHTML :: RawHTMLContent -> Text # |