From 6b8c9dd4c9a1e28ef22a1c1797143ffd8febef5d Mon Sep 17 00:00:00 2001 From: bjorn Date: Mon, 20 Oct 2008 14:51:42 +0000 Subject: Added PGF.Macros.mapConcretes --- src/GF/Compile/GrammarToGFCC.hs | 2 +- src/GF/Compile/OptimizeGFCC.hs | 9 +++------ 2 files changed, 4 insertions(+), 7 deletions(-) (limited to 'src/GF/Compile') diff --git a/src/GF/Compile/GrammarToGFCC.hs b/src/GF/Compile/GrammarToGFCC.hs index 51a99e632..3b71bf28a 100644 --- a/src/GF/Compile/GrammarToGFCC.hs +++ b/src/GF/Compile/GrammarToGFCC.hs @@ -51,7 +51,7 @@ mkCanon2gfcc opts cnc gr = -- Adds parsers for all concretes addParsers :: Options -> D.PGF -> D.PGF -addParsers opts pgf = pgf { D.concretes = Map.map conv (D.concretes pgf) } +addParsers opts pgf = CM.mapConcretes conv pgf where conv cnc = cnc { D.parser = Just pinfo } where diff --git a/src/GF/Compile/OptimizeGFCC.hs b/src/GF/Compile/OptimizeGFCC.hs index c73d5bbcb..2a218e1bb 100644 --- a/src/GF/Compile/OptimizeGFCC.hs +++ b/src/GF/Compile/OptimizeGFCC.hs @@ -2,6 +2,7 @@ module GF.Compile.OptimizeGFCC where import PGF.CId import PGF.Data +import PGF.Macros import GF.Data.Operations @@ -16,9 +17,7 @@ optPGF :: PGF -> PGF optPGF = cseOptimize . suffixOptimize suffixOptimize :: PGF -> PGF -suffixOptimize pgf = pgf { - concretes = Map.map opt (concretes pgf) - } +suffixOptimize = mapConcretes opt where opt cnc = cnc { lins = Map.map optTerm (lins cnc), @@ -27,9 +26,7 @@ suffixOptimize pgf = pgf { } cseOptimize :: PGF -> PGF -cseOptimize pgf = pgf { - concretes = Map.map subex (concretes pgf) - } +cseOptimize = mapConcretes subex -- analyse word form lists into prefix + suffixes -- suffix sets can later be shared by subex elim -- cgit v1.2.3