summaryrefslogtreecommitdiff
path: root/src/PGF/Raw/Convert.hs
diff options
context:
space:
mode:
authorkrasimir <krasimir@chalmers.se>2008-10-21 14:30:36 +0000
committerkrasimir <krasimir@chalmers.se>2008-10-21 14:30:36 +0000
commit0606de738e0d934b45f39f1bbe34ed1defde478a (patch)
treef75a8c0f06e4c750b51ba5048087ff56629d9e11 /src/PGF/Raw/Convert.hs
parent6633ae71f1be152bffad04004570bb4c3d348a81 (diff)
efficient and nicer implementation for literal categories
Diffstat (limited to 'src/PGF/Raw/Convert.hs')
-rw-r--r--src/PGF/Raw/Convert.hs6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/PGF/Raw/Convert.hs b/src/PGF/Raw/Convert.hs
index d202ff8dd..85799a3a2 100644
--- a/src/PGF/Raw/Convert.hs
+++ b/src/PGF/Raw/Convert.hs
@@ -102,7 +102,8 @@ toPInfo [App "functions" fs, App "sequences" ss, App "productions" ps,App "categ
toProduction (App "C" [fcat]) = FCoerce (expToInt fcat)
toSymbol :: RExp -> FSymbol
-toSymbol (App "P" [n,l]) = FSymCat (expToInt n) (expToInt l)
+toSymbol (App "P" [n,l]) = FSymCat (expToInt n) (expToInt l)
+toSymbol (App "PL" [n,l]) = FSymLit (expToInt n) (expToInt l)
toSymbol (App "KP" (d:alts)) = FSymTok (toKP d alts)
toSymbol (AStr t) = FSymTok (KS t)
@@ -239,7 +240,8 @@ fromFFun (FFun fun prof lins) = App (prCId fun) [App "P" (map fromProfile prof),
daughter n = App "_A" [intToExp n]
fromSymbol :: FSymbol -> RExp
-fromSymbol (FSymCat n l) = App "P" [intToExp n, intToExp l]
+fromSymbol (FSymCat n l) = App "P" [intToExp n, intToExp l]
+fromSymbol (FSymLit n l) = App "PL" [intToExp n, intToExp l]
fromSymbol (FSymTok t) = fromTokn t
fromFSeq :: FSeq -> RExp