From 6cbb8086c8bcaca638b993a75017b7738cd923c9 Mon Sep 17 00:00:00 2001 From: aarne Date: Sat, 15 Mar 2008 21:02:59 +0000 Subject: putting pattern macros in place (not properly tested yet) --- src/GF/Source/SourceToGrammar.hs | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'src/GF/Source/SourceToGrammar.hs') diff --git a/src/GF/Source/SourceToGrammar.hs b/src/GF/Source/SourceToGrammar.hs index b2151affb..132bd4704 100644 --- a/src/GF/Source/SourceToGrammar.hs +++ b/src/GF/Source/SourceToGrammar.hs @@ -496,6 +496,9 @@ transExp x = case x of ELetb defs exp -> transExp $ ELet defs exp EWhere exp defs -> transExp $ ELet defs exp + EPattType typ -> liftM G.EPattType (transExp typ) + EPatt patt -> liftM G.EPatt (transPatt patt) + ELString (LString str) -> return $ G.K str ELin id -> liftM G.LiT $ transIdent id @@ -608,6 +611,8 @@ transPatt x = case x of PAs x p -> liftM2 G.PAs (transIdent x) (transPatt p) PChar -> return G.PChar PChars s -> return $ G.PChars s + PMacro c -> liftM G.PMacro $ transIdent c + PM m c -> liftM2 G.PM (transIdent m) (transIdent c) transBind :: Bind -> Err Ident transBind x = case x of -- cgit v1.2.3