tptp-0.1.0.0: test/Parser/Main.hs
module Main where
-- |
-- Module : Main
-- Description : Parse TPTP input either from a file or stdin.
-- Copyright : (c) Evgenii Kotelnikov, 2019
-- License : GPL-3
-- Maintainer : evgeny.kotelnikov@gmail.com
-- Stability : experimental
--
import System.Environment (getArgs)
import System.Exit (exitSuccess, exitFailure)
import System.IO (stderr, hPutStrLn)
import Data.Maybe (listToMaybe)
import qualified Data.Text.IO as Text.IO
import Data.TPTP.Parse.Text (parseTPTPOnly)
main :: IO ()
main = do
args <- getArgs
input <- case listToMaybe args of
Just f -> Text.IO.readFile f
Nothing -> Text.IO.getContents
case parseTPTPOnly input of
Left e -> hPutStrLn stderr e >> exitFailure
Right _ -> putStrLn "OK" >> exitSuccess