packages feed

getopt-generics-0.11: docs/Test02.hs

{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE TypeFamilies #-}

module Test02 where

import qualified GHC.Generics
import           WithCli

data Options
  = Options {
    port :: Int,
    daemonize :: Bool,
    config :: Maybe FilePath,
    args :: [String]
  }
  deriving (Show, GHC.Generics.Generic)

instance Generic Options
instance HasDatatypeInfo Options
instance HasArguments Options

main :: IO ()
main = withCli run

run :: Options -> IO ()
run = print