summaryrefslogtreecommitdiff
path: root/src/Hakyll/Core/ResourceProvider.hs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Hakyll/Core/ResourceProvider.hs')
-rw-r--r--src/Hakyll/Core/ResourceProvider.hs18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/Hakyll/Core/ResourceProvider.hs b/src/Hakyll/Core/ResourceProvider.hs
new file mode 100644
index 0000000..7b4f94a
--- /dev/null
+++ b/src/Hakyll/Core/ResourceProvider.hs
@@ -0,0 +1,18 @@
+-- | This module provides an API for resource providers. Resource providers
+-- allow Hakyll to get content from resources; the type of resource depends on
+-- the concrete instance.
+--
+module Hakyll.Core.ResourceProvider
+ ( ResourceProvider (..)
+ ) where
+
+import Hakyll.Core.Identifier
+
+-- | A value responsible for retrieving and listing resources
+--
+data ResourceProvider = ResourceProvider
+ { -- | A list of all resources this provider is able to provide
+ resourceList :: [Identifier]
+ , -- | Retrieve a certain resource as string
+ resourceString :: Identifier -> IO String
+ }