aboutsummaryrefslogtreecommitdiffstats
path: root/src/Plugin/Base.hs
blob: 4e63fdd457ca0dbd921f7c65c64e9b5069efed64 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
module Plugin.Base
    ( PluginAction

    , Plugin(..)
    ) where

import Database.SQLite.Simple

import Message

-- TODO: Replace Connection with a type class
-- type PluginAction = Message -> Connection -> IO (Either String String)
type PluginAction = Message -> IO (Either String String)

data Plugin = Plugin
    { matchRegex :: String
    , perform    :: PluginAction
    }

instance Show Plugin where
    show (Plugin r p) = "matchRegex = " ++ r