summaryrefslogtreecommitdiff
path: root/src/runtime/haskell
diff options
context:
space:
mode:
authorkr.angelov <kr.angelov@gmail.com>2013-08-23 13:17:45 +0000
committerkr.angelov <kr.angelov@gmail.com>2013-08-23 13:17:45 +0000
commita20cd77d251192b8912587de17ebb87fa3cfb053 (patch)
tree24cba6146320eeff2e0eda2ee731546c247c577b /src/runtime/haskell
parent7c98267193726f4031c4551cf8a24c34c75fef94 (diff)
nonExist now does the expected thing
Diffstat (limited to 'src/runtime/haskell')
-rw-r--r--src/runtime/haskell/PGF/Binary.hs2
-rw-r--r--src/runtime/haskell/PGF/Data.hs1
2 files changed, 3 insertions, 0 deletions
diff --git a/src/runtime/haskell/PGF/Binary.hs b/src/runtime/haskell/PGF/Binary.hs
index 0d743c1f4..865f98417 100644
--- a/src/runtime/haskell/PGF/Binary.hs
+++ b/src/runtime/haskell/PGF/Binary.hs
@@ -152,6 +152,7 @@ instance Binary Symbol where
put (SymVar n l) = putWord8 2 >> put (n,l)
put (SymKS ts) = putWord8 3 >> put ts
put (SymKP d vs) = putWord8 4 >> put (d,vs)
+ put SymNE = putWord8 5
get = do tag <- getWord8
case tag of
0 -> liftM2 SymCat get get
@@ -159,6 +160,7 @@ instance Binary Symbol where
2 -> liftM2 SymVar get get
3 -> liftM SymKS get
4 -> liftM2 (\d vs -> SymKP d vs) get get
+ 5 -> return SymNE
_ -> decodingError
instance Binary PArg where
diff --git a/src/runtime/haskell/PGF/Data.hs b/src/runtime/haskell/PGF/Data.hs
index 357dcc92e..58ced6a1e 100644
--- a/src/runtime/haskell/PGF/Data.hs
+++ b/src/runtime/haskell/PGF/Data.hs
@@ -60,6 +60,7 @@ data Symbol
| SymVar {-# UNPACK #-} !Int {-# UNPACK #-} !Int
| SymKS [Token]
| SymKP [Token] [Alternative]
+ | SymNE -- non exist
deriving (Eq,Ord,Show)
data Production
= PApply {-# UNPACK #-} !FunId [PArg]