support for source gr and i -retain in GFI env

This commit is contained in:
aarne
2008-05-24 09:16:59 +00:00
parent 51e1e55005
commit f1fd6260e0
3 changed files with 31 additions and 6 deletions

View File

@@ -1,9 +1,11 @@
module GF.Command.Importing (importGrammar) where
module GF.Command.Importing (importGrammar, importSource) where
import GF.Compile
import GF.GFCC.DataGFCC
import GF.GFCC.API
import GF.Grammar.Grammar (SourceGrammar) -- for cc command
import GF.Infra.UseIO
import GF.Infra.Option
import GF.Data.ErrM
@@ -25,4 +27,13 @@ importGrammar mgr0 opts files =
".gfcc" -> do
gfcc2 <- mapM file2gfcc files >>= return . foldl1 unionGFCC
let gfcc3 = unionGFCC (gfcc mgr0) gfcc2
return $ MultiGrammar gfcc3
return $ MultiGrammar gfcc3
importSource :: SourceGrammar -> Options -> [FilePath] -> IO SourceGrammar
importSource src0 opts files = do
src <- appIOE $ batchCompile opts files
case src of
Ok gr -> return gr
Bad msg -> do
putStrLn msg
return src0