packages feed

headergen-0.1.1.0: src/Main.hs

{- |
Module      :  $Header$
Description :  The entrypoint of the application.
Author      :  Nils 'bash0r' Jonsson
Copyright   :  (c) 2015 Nils 'bash0r' Jonsson
License     :  MIT

Maintainer  :  aka.bash0r@gmail.com
Stability   :  unstable
Portability :  non-portable (Portability is untested.)

The entrypoint of the application.
-}
module Main
( main
) where

import Control.Applicative
import Control.Monad

import System.Environment
import System.FilePath.Posix

import Headergen.Configuration
import Headergen.Messages
import Headergen.Template
import Headergen.Template.Parser

import qualified Headergen.Commands.Creation       as Creation
import qualified Headergen.Commands.Help           as Help
import qualified Headergen.Commands.Initialization as Initialization


main :: IO ()
main = do
  args <- getArgs
  handleParameters args
  where
    handleParameters ("init"  :xs) = Initialization.command xs
    handleParameters ("create":xs) = Creation.command       xs
    handleParameters ("help"  :xs) = Help.command           xs
    handleParameters _             = Help.command           []