1
0
forked from GitHub/gf-core
Files
gf-core/src/compiler/GF/CompilerAPI.hs
hallgren cbe5e8ab18 Convert from Text.PrettyPrint to GF.Text.Pretty
All compiler modules now use GF.Text.Pretty instead of Text.PrettyPrint
2014-07-28 11:58:00 +00:00

110 lines
1.9 KiB
Haskell

module GF.CompilerAPI where
-- started by AR 28/1/2011 - STILL DUMMY
import GF.Compile
-- SHOULD IMPORT MUCH LESS
-- the main compiler passes
import GF.Compile.GetGrammar
import GF.Compile.Rename
import GF.Compile.CheckGrammar
import GF.Compile.Optimize
import GF.Compile.SubExOpt
import GF.Compile.GrammarToPGF
import GF.Compile.ReadFiles
import GF.Compile.Update
import GF.Compile.Refresh
import GF.Compile.Coding
import GF.Grammar.Grammar
import GF.Grammar.Lookup
import GF.Grammar.Printer
import GF.Grammar.Binary
import GF.Infra.Ident
import GF.Infra.Option
import GF.Infra.Modules
import GF.Infra.UseIO
import GF.Infra.CheckM
import GF.Data.Operations
import Control.Monad
import System.IO
import System.Directory
import System.FilePath
import qualified Data.Map as Map
import qualified Data.Set as Set
import Data.List(nub)
import Data.Maybe (isNothing)
import Data.Binary
import qualified Data.ByteString.Char8 as BS
import GF.Text.Pretty
import PGF.CId
import PGF.Data
import PGF.Macros
import PGF.Optimize
import PGF.Probabilistic
-- the main types
type GF = GF.Grammar.SourceGrammar
type PGF = PGF.PGF
-- some API functions - should take Options and perhaps some Env; return error msgs
exBasedGF :: FilePath -> IO GF
multiGF :: FilePath -> IO GF
getGF :: FilePath -> IO GF
cfGF :: FilePath -> IO GF
ebnfGF :: FilePath -> IO GF
emitGFO :: GF -> IO ()
readGFO :: FilePath -> IO GF
gf2pgf :: GF -> PGF
emitPGF :: PGF -> IO ()
readPGF :: FilePath -> IO PGF
emitJSGF :: PGF -> IO ()
emitSLF :: PGF -> IO ()
exBasedGF = error "no exBasedGF"
multiGF = error "no multiGF"
getGF = error "no getGF"
cfGF = error "no cfGF"
ebnfGF = error "no ebnfGF"
emitGFO = error "no emitGFO"
readGFO = error "no readGFO"
gf2pgf = error "no gf2pgf"
emitPGF = error "no emitPGF"
readPGF = error "no readPGF"
emitJSGF = error "no emitJSGF"
emitSLF = error "no emitSLF"