diff options
| author | aarne <unknown> | 2003-10-09 15:23:32 +0000 |
|---|---|---|
| committer | aarne <unknown> | 2003-10-09 15:23:32 +0000 |
| commit | 2ee936c7e23bd690b05b8362179911a2d176f150 (patch) | |
| tree | 00e54d208f21b4f0278aab96ae551ecd6cae4abc /src/GF/Source/SourceToGrammar.hs | |
| parent | ddd103ccd7422c35b5af0bcb5bad5edd49b080bb (diff) | |
Added treatment of transfer modules. Aggregation is an example.
Diffstat (limited to 'src/GF/Source/SourceToGrammar.hs')
| -rw-r--r-- | src/GF/Source/SourceToGrammar.hs | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/GF/Source/SourceToGrammar.hs b/src/GF/Source/SourceToGrammar.hs index b6c3f3a44..9e016d711 100644 --- a/src/GF/Source/SourceToGrammar.hs +++ b/src/GF/Source/SourceToGrammar.hs @@ -150,9 +150,8 @@ transAbsDef x = case x of [(c, G.AbsCat nope (yes ps)) | (c,ps) <- ds'] ++ [(f, G.AbsFun nope (yes G.EData)) | (_,fs) <- ds', tf <- fs, f <- funs tf] DefTrans defs -> do - let (ids,vals) = unzip [(i,v) | FlagDef i v <- defs] - defs' <- liftM2 zip (mapM transIdent ids) (mapM transIdent vals) - returnl [(c, G.AbsTrans f) | (c,f) <- defs'] + defs' <- liftM concat $ mapM getDefsGen defs + returnl [(c, G.AbsTrans f) | (c,(_,Yes f)) <- defs'] DefFlag defs -> liftM Right $ mapM transFlagDef defs _ -> Bad $ "illegal definition in abstract module:" ++++ printTree x where |
