From af1a3a2473747942dcec647a42e5724fcb21d1b9 Mon Sep 17 00:00:00 2001 From: bringert Date: Thu, 3 Jan 2008 17:10:05 +0000 Subject: Store FCFPInfo (all information needed for FCFG parsing) in GFCC files, and in the internal DataGFCC.GFCC structure. The parsing information format is still in flux. --- src/GF/GFCC/Macros.hs | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/GF/GFCC/Macros.hs') diff --git a/src/GF/GFCC/Macros.hs b/src/GF/GFCC/Macros.hs index 3e88952d4..383b77d34 100644 --- a/src/GF/GFCC/Macros.hs +++ b/src/GF/GFCC/Macros.hs @@ -2,6 +2,8 @@ module GF.GFCC.Macros where import GF.GFCC.CId import GF.GFCC.DataGFCC +import GF.Formalism.FCFG (FGrammar) +import GF.Parsing.FCFG.PInfo (FCFPInfo, fcfPInfoToFGrammar) ----import GF.GFCC.PrintGFCC import Data.Map import Data.List @@ -28,6 +30,12 @@ lookType :: GFCC -> CId -> Type lookType gfcc f = fst $ lookMap (error $ "lookType " ++ show f) f (funs (abstract gfcc)) +lookParser :: GFCC -> CId -> Maybe FCFPInfo +lookParser gfcc lang = parser $ lookMap (error "no lang") lang $ concretes gfcc + +lookFCFG :: GFCC -> CId -> Maybe FGrammar +lookFCFG gfcc lang = fmap fcfPInfoToFGrammar $ lookParser gfcc lang + lookGlobalFlag :: GFCC -> CId -> String lookGlobalFlag gfcc f = lookMap "?" f (gflags gfcc) -- cgit v1.2.3