module HTMLEntities.Builder (char, text) where
import HTMLEntities.Prelude
import qualified Data.Text as Text
import qualified Data.Text.Lazy.Builder as Text (Builder)
import qualified Data.Text.Lazy.Builder as Text.Builder
char :: Char -> Text.Builder
char c =
fromMaybe (Text.Builder.singleton c) $
lookup c entitiesTable
text :: Text -> Text.Builder
text =
Text.foldr (\c b -> char c <> b) mempty
entitiesTable :: [(Char, Text.Builder)]
entitiesTable =
[
('<', "<"),
('>', ">"),
('&', "&"),
('"', """),
('\'', "'")
]