summaryrefslogtreecommitdiff
path: root/src/GF/Canon/Unparametrize.hs
diff options
context:
space:
mode:
authoraarne <aarne@cs.chalmers.se>2008-06-25 16:43:48 +0000
committeraarne <aarne@cs.chalmers.se>2008-06-25 16:43:48 +0000
commitb96b36f43de3e2f8b58d5f539daa6f6d47f25870 (patch)
tree0992334be13cec6538a1dea22fbbf26ad6bdf224 /src/GF/Canon/Unparametrize.hs
parentfe367412e0aeb4ad5c02de68e6eca382e0f96984 (diff)
removed src for 2.9
Diffstat (limited to 'src/GF/Canon/Unparametrize.hs')
-rw-r--r--src/GF/Canon/Unparametrize.hs63
1 files changed, 0 insertions, 63 deletions
diff --git a/src/GF/Canon/Unparametrize.hs b/src/GF/Canon/Unparametrize.hs
deleted file mode 100644
index 0ca6a2d9c..000000000
--- a/src/GF/Canon/Unparametrize.hs
+++ /dev/null
@@ -1,63 +0,0 @@
-----------------------------------------------------------------------
--- |
--- Module : Unparametrize
--- Maintainer : AR
--- Stability : (stable)
--- Portability : (portable)
---
--- > CVS $Date: 2005/09/14 16:26:21 $
--- > CVS $Author: aarne $
--- > CVS $Revision: 1.1 $
---
--- Taking away parameters from a canonical grammar. All param
--- types are replaced by {}, and only one branch is left in
--- all tables. AR 14\/9\/2005.
------------------------------------------------------------------------------
-
-module GF.Canon.Unparametrize (unparametrizeCanon) where
-
-import GF.Canon.AbsGFC
-import GF.Infra.Ident
-import GF.Canon.GFC
-import qualified GF.Canon.CMacros as C
-import GF.Data.Operations
-import qualified GF.Infra.Modules as M
-
-unparametrizeCanon :: CanonGrammar -> CanonGrammar
-unparametrizeCanon (M.MGrammar modules) =
- M.MGrammar $ map unparModule modules where
-
- unparModule (i,m) = case m of
- M.ModMod (M.Module mt@(M.MTConcrete _) st fs me ops js) ->
- let me' = [(unparIdent j,incl) | (j,incl) <- me] in
- (unparIdent i, M.ModMod (M.Module mt st fs me' ops (mapTree unparInfo js)))
- _ -> (i,m)
-
- unparInfo (c,info) = case info of
- CncCat ty t m -> (c, CncCat (unparCType ty) (unparTerm t) m)
- CncFun k xs t m -> (c, CncFun k xs (unparTerm t) m)
- AnyInd b i -> (c, AnyInd b (unparIdent i))
- _ -> (c,info)
-
- unparCType ty = case ty of
- RecType ls -> RecType [Lbg lab (unparCType t) | Lbg lab t <- ls]
- Table _ v -> unparCType v --- Table unitType (unparCType v)
- Cn _ -> unitType
- _ -> ty
-
- unparTerm t = case t of
- Par _ _ -> unitTerm
- T _ cs -> unparTerm (head [t | Cas _ t <- cs])
- V _ ts -> unparTerm (head ts)
- S t _ -> unparTerm t
-{-
- T _ cs -> V unitType [unparTerm (head [t | Cas _ t <- cs])]
- V _ ts -> V unitType [unparTerm (head ts)]
- S t _ -> S (unparTerm t) unitTerm
--}
- _ -> C.composSafeOp unparTerm t
-
- unitType = RecType []
- unitTerm = R []
-
- unparIdent (IC s) = IC $ "UP_" ++ s