diff --git a/Main.hs b/Main.hs deleted file mode 100644 index 107c76b..0000000 --- a/Main.hs +++ /dev/null @@ -1,7 +0,0 @@ -module Main where - -import Bril - -main :: IO () -main = do - putStrLn $ "Hello World!" diff --git a/bin/Parse.hs b/bin/Parse.hs new file mode 100644 index 0000000..ae31516 --- /dev/null +++ b/bin/Parse.hs @@ -0,0 +1,17 @@ +module Main where + +import Data.Either (isRight) +import qualified Data.ByteString.Lazy as B +import System.Exit +import Bril + +main :: IO () +main = do + json <- B.getContents + let parsed = parseBrilJSON json + if isRight parsed + then do + B.putStr json + exitWith ExitSuccess + else + exitWith (ExitFailure 1) diff --git a/eoc.cabal b/eoc.cabal index e835148..6b2303a 100644 --- a/eoc.cabal +++ b/eoc.cabal @@ -30,12 +30,13 @@ library eoc-lib default-language: Haskell2010 default-extensions: DeriveGeneric, OverloadedStrings -executable eoc - main-is: Main.hs +executable parse + main-is: bin/Parse.hs -- other-modules: -- other-extensions: build-depends: base >=4.13 && <4.18, + bytestring ^>= 0.11, eoc-lib -- hs-source-dirs: default-language: Haskell2010 diff --git a/run-tests.sh b/run-tests.sh new file mode 100755 index 0000000..bc14b9f --- /dev/null +++ b/run-tests.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +turnt bril-sources/*.json diff --git a/turnt.toml b/turnt.toml new file mode 100644 index 0000000..7102c04 --- /dev/null +++ b/turnt.toml @@ -0,0 +1 @@ +command = "cabal run -v0 parse < {filename}"