1
0
forked from GitHub/gf-core

binary serialization for PGF

This commit is contained in:
krasimir
2008-10-28 13:57:10 +00:00
parent d61f6f1085
commit e44448bad0
14 changed files with 1984 additions and 458 deletions

View File

@@ -66,9 +66,7 @@ import PGF.TypeCheck
import PGF.Paraphrase
import PGF.Macros
import PGF.Data
import PGF.Raw.Convert
import PGF.Raw.Parse
import PGF.Raw.Print (printTree)
import PGF.Binary
import PGF.Parsing.FCFG
import qualified PGF.Parsing.FCFG.Incremental as Incremental
import qualified GF.Compile.GeneratePMCFG as PMCFG
@@ -80,6 +78,7 @@ import GF.Data.Utilities (replace)
import Data.Char
import qualified Data.Map as Map
import Data.Maybe
import Data.Binary
import System.Random (newStdGen)
import Control.Monad
@@ -210,9 +209,8 @@ readLanguage = readCId
showLanguage = prCId
readPGF f = do
s <- readFile f >>= return . decodeUTF8 -- pgf is in UTF8, internal in unicode
g <- parseGrammar s
return $! addParsers $ toPGF g
g <- decodeFile f
return $! addParsers g
-- Adds parsers for all concretes that don't have a parser and that have parser=ondemand.
addParsers :: PGF -> PGF