module Cardano.Chairman.Commands where

import           Cardano.Chairman.Commands.Run
import           Cardano.Chairman.Commands.Version
import           Data.Function
import           Data.Monoid
import           Options.Applicative
import           System.IO (IO)

{- HLINT ignore "Monoid law, left identity" -}

commands :: Parser (IO ())
commands :: Parser (IO ())
commands = Mod CommandFields (IO ()) -> Parser (IO ())
forall a. Mod CommandFields a -> Parser a
subparser (Mod CommandFields (IO ()) -> Parser (IO ()))
-> Mod CommandFields (IO ()) -> Parser (IO ())
forall a b. (a -> b) -> a -> b
$ Mod CommandFields (IO ())
forall a. Monoid a => a
mempty
  Mod CommandFields (IO ())
-> Mod CommandFields (IO ()) -> Mod CommandFields (IO ())
forall a. Semigroup a => a -> a -> a
<>  Mod CommandFields (IO ())
cmdRun
  Mod CommandFields (IO ())
-> Mod CommandFields (IO ()) -> Mod CommandFields (IO ())
forall a. Semigroup a => a -> a -> a
<>  Mod CommandFields (IO ())
cmdVersion