packages feed

werewolf-slack-0.2.0.0: app/Main.hs

{-|
Module      : Main

Copyright   : (c) Henry J. Wylde, 2016
License     : BSD3
Maintainer  : public@hjwylde.com
-}

module Main (
    -- * Main
    main,
) where

import Control.Monad.Reader

import Options.Applicative

import System.Environment

import Werewolf.Slack.Application
import Werewolf.Slack.Options

main :: IO ()
main = getArgs >>= run

run :: [String] -> IO ()
run args = handleParseResult (execParserPure werewolfSlackPrefs werewolfSlackInfo args) >>= handle

handle :: Options -> IO ()
handle = runReaderT runApplication