From 769121788a01bc4a21cd69299a788876244e3d31 Mon Sep 17 00:00:00 2001 From: aarne Date: Sun, 28 Aug 2011 10:35:55 +0000 Subject: import command now gives priority to new abstract syntax, and discards the old concretes if they are for the old abstract; the new priority is implemented in PGF.Data.unionPGF --- src/compiler/GF/Command/Importing.hs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'src/compiler/GF/Command/Importing.hs') diff --git a/src/compiler/GF/Command/Importing.hs b/src/compiler/GF/Command/Importing.hs index 3d05868b1..cbbb7a30e 100644 --- a/src/compiler/GF/Command/Importing.hs +++ b/src/compiler/GF/Command/Importing.hs @@ -30,14 +30,19 @@ importGrammar pgf0 opts files = s | elem s [".gf",".gfo"] -> do res <- appIOE $ compileToPGF opts files case res of - Ok pgf2 -> do return $ unionPGF pgf0 pgf2 + Ok pgf2 -> ioUnionPGF pgf0 pgf2 Bad msg -> do putStrLn ('\n':'\n':msg) return pgf0 ".pgf" -> do pgf2 <- mapM readPGF files >>= return . foldl1 unionPGF - return $ unionPGF pgf0 pgf2 + ioUnionPGF pgf0 pgf2 ext -> die $ "Unknown filename extension: " ++ show ext +ioUnionPGF :: PGF -> PGF -> IO PGF +ioUnionPGF one two = case msgUnionPGF one two of + (pgf, Just msg) -> putStrLn msg >> return pgf + (pgf,_) -> return pgf + importSource :: SourceGrammar -> Options -> [FilePath] -> IO SourceGrammar importSource src0 opts files = do src <- appIOE $ batchCompile opts files -- cgit v1.2.3