aboutsummaryrefslogtreecommitdiffstats
path: root/src/Bot.hs
blob: 8b784975d91f8248e45485bd78e79a2e8fb820e6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
{-# LANGUAGE ConstraintKinds #-}
-- {-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE GeneralizedNewtypeDeriving #-}

module Bot
    ( Bot(..)
    , BotConfig
    ) where

import Control.Monad.Reader

import CliOptions (Options)

type BotConfig = MonadReader Options

newtype Bot a = Bot
    { runBot :: ReaderT Options IO a
    -- } deriving (Monad, Functor, Applicative, BotConfig, MonadIO)
    } deriving (Monad, Functor, Applicative, MonadReader Options, MonadIO)

-- instance MonadPlus Bot