summaryrefslogtreecommitdiff
path: root/HsBot/Conf.hs
blob: 2faed0bea42ef886599c8a035ba0d1831aa0eb09 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
module HsBot.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 }