diff options
| author | aarne <aarne@cs.chalmers.se> | 2006-01-06 21:49:25 +0000 |
|---|---|---|
| committer | aarne <aarne@cs.chalmers.se> | 2006-01-06 21:49:25 +0000 |
| commit | 88b09b8ae0d5b239d2c4fbb17d83778df12db618 (patch) | |
| tree | 057a11bda78fb5841c286a601c66608008eee065 /src/GF/Compile/Rename.hs | |
| parent | 3bf8e5ce6fbc026fd045762fbbf63eee58f09367 (diff) | |
concatenation string patterns
Diffstat (limited to 'src/GF/Compile/Rename.hs')
| -rw-r--r-- | src/GF/Compile/Rename.hs | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/GF/Compile/Rename.hs b/src/GF/Compile/Rename.hs index 70451a25a..c3369e9ef 100644 --- a/src/GF/Compile/Rename.hs +++ b/src/GF/Compile/Rename.hs @@ -221,14 +221,15 @@ renamePattern env patt = case patt of PC c ps -> do c' <- renameIdentTerm env $ Cn c - psvss <- mapM renp ps - let (ps',vs) = unzip psvss case c' of - QC p d -> return (PP p d ps', concat vs) - Q p d -> return (PP p d ps', concat vs) ---- should not happen + QC p d -> renp $ PP p d ps + Q p d -> renp $ PP p d ps _ -> prtBad "unresolved pattern" c' ---- (PC c ps', concat vs) ----- PP p c ps -> (PP p c ps',concat vs') where (ps',vs') = unzip $ map renp ps + PP p c ps -> do + psvss <- mapM renp ps + let (ps',vs) = unzip psvss + return (PP p c ps', concat vs) PV x -> case renid patt of Ok p -> return (p,[]) |
