1
0
forked from GitHub/gf-core

Make PGF.Tree internal

The only use of PGF.Tree outside the PGF library was in GF.Command.Commands,
and it was eliminated by using PGF.Expr directly instead.
PGF.Paraphrase still uses PGF.Tree.
This commit is contained in:
hallgren
2013-11-06 14:29:17 +00:00
parent 7a41b45f13
commit 48660c219a
2 changed files with 5 additions and 6 deletions

View File

@@ -20,7 +20,7 @@ import PGF.Data(abstract,funs,cats,Literal(LStr),Expr(EFun,ELit)) ----
import PGF.Printer(ppFun,ppCat)
--import PGF.Probabilistic(rankTreesByProbs,probTree,setProbabilities)
--import PGF.Generate (generateRandomFrom) ----
import PGF.Tree (Tree(Fun), expr2tree, tree2expr)
--import PGF.Tree (Tree(Fun), expr2tree, tree2expr)
import PGF.Optimize(optimizePGF)
import GF.Compile.Export
@@ -1198,10 +1198,9 @@ allCommands = Map.fromList [
_ -> unl . linearize pgf lang
-- replace each non-atomic constructor with mkC, where C is the val cat
tree2mk pgf = showExpr [] . tree2expr . t2m . expr2tree where
t2m t = case t of
Fun cid [] -> t
Fun cid ts -> Fun (mk cid) (map t2m ts)
tree2mk pgf = showExpr [] . t2m where
t2m t = case unApp t of
Just (cid,ts@(_:_)) -> mkApp (mk cid) (map t2m ts)
_ -> t
mk = mkCId . ("mk" ++) . showCId . lookValCat (abstract pgf)