docopt-0.7.0.1: System/Console/Docopt.hs
-- | Example:
--
-- @
-- {-\# LANGUAGE QuasiQuotes \#-}
-- module Main where
--
-- import Control.Monad (when)
-- import Data.Char (toUpper)
-- import System.Environment (getArgs)
-- import System.Console.Docopt
--
-- patterns :: Docopt
-- patterns = [docopt|
-- docopt-sample version 0.1.0
--
-- Usage:
-- docopt-sample cat \<file\>
-- docopt-sample echo [--caps] \<string\>
--
-- Options:
-- -c, --caps Caps-lock the echoed argument
-- |]
--
-- getArgOrExit = getArgOrExitWith patterns
--
-- main :: IO ()
-- main = do
-- args <- parseArgsOrExit patterns =<< getArgs
--
-- when (args \`isPresent\` (command \"cat\")) $ do
-- file <- args \`getArgOrExit\` (argument \"file\")
-- putStr =<< readFile file
--
-- when (args \`isPresent\` (command \"echo\")) $ do
-- let charTransform = if args \`isPresent\` (longOption \"caps\")
-- then toUpper
-- else id
-- string <- args \`getArgOrExit\` (argument \"string\")
-- putStrLn $ map charTransform string
-- @
module System.Console.Docopt
(
module System.Console.Docopt.QQ,
module System.Console.Docopt.Public
)
where
import System.Console.Docopt.QQ
import System.Console.Docopt.Public