summaryrefslogtreecommitdiffstats
path: root/Main.hs
diff options
context:
space:
mode:
Diffstat (limited to 'Main.hs')
-rw-r--r--Main.hs7
1 files changed, 4 insertions, 3 deletions
diff --git a/Main.hs b/Main.hs
index 695520cb..9e399d4c 100644
--- a/Main.hs
+++ b/Main.hs
@@ -3,11 +3,11 @@ import Lexer
import JQ
import Text.JSON
import Text.JSON.String
+import PrettyJSON
import System.Environment
import Control.Monad
import System.IO
-
parseJS :: String -> JSValue
parseJS s = case runGetJSON readJSValue s of
Left err -> error err
@@ -16,7 +16,8 @@ parseJS s = case runGetJSON readJSValue s of
main = do
[program] <- getArgs
+ stdlib <- openFile "stdlib.jq" ReadMode >>= hGetContents
json <- liftM parseJS $ hGetContents stdin
- case runLexer program >>= runParser of
+ case runLexer (stdlib ++ program) >>= runParser of
Left err -> putStrLn err
- Right program -> mapM_ (putStrLn . encode) (runJQ program json) \ No newline at end of file
+ Right program -> mapM_ (putStrLn . show . renderJSON) (runJQ program json) \ No newline at end of file