From 6e9258558a9bcb8c9df4bee0382b5136c95f516a Mon Sep 17 00:00:00 2001 From: aarne Date: Wed, 24 Sep 2003 14:26:35 +0000 Subject: Improvements in hte editor. --- src/GF/Compile/ShellState.hs | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) (limited to 'src/GF/Compile/ShellState.hs') diff --git a/src/GF/Compile/ShellState.hs b/src/GF/Compile/ShellState.hs index f24c3b87c..661e1bedd 100644 --- a/src/GF/Compile/ShellState.hs +++ b/src/GF/Compile/ShellState.hs @@ -3,8 +3,11 @@ module ShellState where import Operations import GFC import AbsGFC ----import CMacros +import Macros +import MMacros + import Look +import LookAbs import qualified Modules as M import qualified Grammar as G import qualified PrGrammar as P @@ -108,15 +111,12 @@ updateShellState opts sh (gr,(sgr,rts)) = do notInrts f = notElem f $ map fst rts cfs <- mapM (canon2cf opts cgr) concrs --- would not need to update all... - let funs = [] ---- funRulesOf cgr - let cats = [] ---- allCatsOf cgr - let csi = [] ---- -{- - [(c,(co, + let funs = funRulesOf cgr + let cats = allCatsOf cgr + let csi = [(c,(co, [(fun,typ) | (fun,typ) <- funs, compatType tc typ], funsOnTypeFs compatType funs tc)) - | (c,co) <- cats, let tc = cat2type c] --} + | (c,co) <- cats, let tc = cat2val co c] let deps = True ---- not $ null $ allDepCats cgr let binds = [] ---- allCatsWithBind cgr @@ -163,6 +163,9 @@ greatestAbstract gr = case allAbstracts gr of [] -> Nothing a -> return $ last a +qualifTop :: StateGrammar -> G.QIdent -> G.QIdent +qualifTop gr (_,c) = (absId gr,c) + -- all concretes for a given abstract allConcretes :: CanonGrammar -> Ident -> [Ident] allConcretes gr a = [i | (i,M.ModMod m) <- M.modules gr, M.mtype m== M.MTConcrete a] -- cgit v1.2.3