1
0
forked from GitHub/gf-core

"Committed_by_peb"

This commit is contained in:
peb
2005-03-29 10:17:53 +00:00
parent fcc25f0bba
commit c400db8ce7
30 changed files with 430 additions and 372 deletions

View File

@@ -5,9 +5,9 @@
-- Stability : (stable)
-- Portability : (portable)
--
-- > CVS $Date: 2005/03/21 14:17:44 $
-- > CVS $Date: 2005/03/29 11:17:56 $
-- > CVS $Author: peb $
-- > CVS $Revision: 1.1 $
-- > CVS $Revision: 1.2 $
--
-- Pretty-printing of parser objects
-----------------------------------------------------------------------------
@@ -69,6 +69,10 @@ instance Print Int where
instance Print Integer where
prt = show
instance Print a => Print (Maybe a) where
prt (Just a) = "!" ++ prt a
prt Nothing = "Nothing"
instance Print a => Print (Err a) where
prt (Ok a) = prt a
prt (Bad str) = str

View File

@@ -5,9 +5,9 @@
-- Stability : (stable)
-- Portability : (portable)
--
-- > CVS $Date: 2005/03/21 14:17:44 $
-- > CVS $Date: 2005/03/29 11:17:56 $
-- > CVS $Author: peb $
-- > CVS $Revision: 1.1 $
-- > CVS $Revision: 1.2 $
--
-- Instances for printing terms in a simplified format
-----------------------------------------------------------------------------
@@ -19,6 +19,7 @@ import AbsGFC
import CF
import CFIdent
import GF.Printing.PrintParser
import qualified PrintGFC as P
instance Print Term where
prt (Arg arg) = prt arg
@@ -100,6 +101,10 @@ instance Print CFCat where
instance Print CFFun where
prt (CFFun fun) = prt (fst fun)
instance Print Exp where
prt = P.printTree
sizeCT :: CType -> Int
sizeCT (RecType rt) = 1 + sum [ sizeCT t | _ `Lbg` t <- rt ]
sizeCT (Table pt vt) = 1 + sizeCT pt + sizeCT vt