Main.hs 565 B

12345678910111213141516171819202122
  1. module Main where
  2. import Data.Adnot
  3. import qualified Data.ByteString as BS
  4. import qualified Data.ByteString.Lazy.Char8 as BSL
  5. import System.Environment (getArgs)
  6. import System.Exit (die)
  7. helpText :: String
  8. helpText = "Usage: adnot-id [file]"
  9. main = do
  10. content <- do
  11. args <- getArgs
  12. case args of
  13. [] -> BS.getContents
  14. ["-"] -> BS.getContents
  15. [file] -> BS.readFile file
  16. _ -> die helpText
  17. case decodeValue content of
  18. Right val -> BSL.putStrLn (encodeValue val)
  19. Left err -> die err