summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorbjorn <bjorn@bringert.net>2008-02-07 13:48:41 +0000
committerbjorn <bjorn@bringert.net>2008-02-07 13:48:41 +0000
commit53106abf7ef91c73a39a8465df11a41d08dba3e4 (patch)
treeff07c59969df853a8f9875ab04d2e0788d6a1246 /src
parent9f861ee5371c1c72147f991302a02aba3130e4f4 (diff)
Added PGF version numbers to GFCC file.
Diffstat (limited to 'src')
-rw-r--r--src/GF/GFCC/Raw/ConvertGFCC.hs7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/GF/GFCC/Raw/ConvertGFCC.hs b/src/GF/GFCC/Raw/ConvertGFCC.hs
index 1631a128f..a6103b710 100644
--- a/src/GF/GFCC/Raw/ConvertGFCC.hs
+++ b/src/GF/GFCC/Raw/ConvertGFCC.hs
@@ -11,12 +11,14 @@ import GF.Parsing.FCFG.PInfo (FCFPInfo(..), buildFCFPInfo)
import qualified Data.Array as Array
import Data.Map
+pgfMajorVersion, pgfMinorVersion :: Integer
+(pgfMajorVersion, pgfMinorVersion) = (1,0)
-- convert parsed grammar to internal GFCC
toGFCC :: Grammar -> GFCC
toGFCC (Grm [
- App (CId "grammar") (App a []:cs),
+ App (CId "pgf") (AInt v1 : AInt v2 : App a []:cs),
App (CId "flags") gfs,
ab@(
App (CId "abstract") [
@@ -147,7 +149,8 @@ toTerm e = case e of
fromGFCC :: GFCC -> Grammar
fromGFCC gfcc0 = Grm [
- app "grammar" (App (absname gfcc) [] : lmap (flip App []) (cncnames gfcc)),
+ app "pgf" (AInt pgfMajorVersion:AInt pgfMinorVersion
+ : App (absname gfcc) [] : lmap (flip App []) (cncnames gfcc)),
app "flags" [App f [AStr v] | (f,v) <- toList (gflags gfcc `union` aflags agfcc)],
app "abstract" [
app "fun" [App f [fromType t,fromExp d] | (f,(t,d)) <- toList (funs agfcc)],