packages feed

VRML-0.1.0.0: app/vrmlproto2haskell.hs

{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE OverloadedStrings #-}

module Main where

import Data.VRML.Types
import Data.VRML.Parser
import Data.VRML.Proto
import Data.Text.Prettyprint.Doc
import Data.Text.Prettyprint.Doc.Render.Text (putDoc)
import System.Environment
import Text.Megaparsec
import Control.Monad (void)
  
main :: IO ()
main = do
  args <- getArgs
  f <- readFile (head args)
  case parse parseVRML "" f of
    Right v -> putDoc $ pretty v
    Left _ -> void $ parseTest parseVRML f