summaryrefslogtreecommitdiff
path: root/HsBot/Base/Conf.hs
diff options
context:
space:
mode:
Diffstat (limited to 'HsBot/Base/Conf.hs')
-rw-r--r--HsBot/Base/Conf.hs28
1 files changed, 28 insertions, 0 deletions
diff --git a/HsBot/Base/Conf.hs b/HsBot/Base/Conf.hs
new file mode 100644
index 0000000..54749ba
--- /dev/null
+++ b/HsBot/Base/Conf.hs
@@ -0,0 +1,28 @@
+module HsBot.Base.Conf where
+
+import qualified Data.Map as M
+
+type Conf = M.Map String String
+
+makeConf = M.fromList
+ [ ("name", "HsBot")
+ , ("version", "v0.0")
+ , ("databaseFile", "hsbot.db")
+ , ("maxMessageSize", "400")
+ , ("admin", "rantanplan")
+ , ("ircServer", "irc.german-elite.net")
+ , ("ircChannel", "#buetow.org")
+ , ("ircNick", "hotdog")
+ , ("ircPort", "6667")
+ , ("ircUser", "hsbot.haskell.eu")
+ ]
+
+get :: (Monad m) => String -> Conf -> m String
+get = M.lookup
+
+getUnwrappedInt :: String -> Conf -> Int
+getUnwrappedInt key conf = read (getUnwrapped key conf) :: Int
+
+getUnwrapped :: String -> Conf -> String
+getUnwrapped key conf = do { val <- get key conf; val }
+