From 92c76a626571fd2ccc50641595cbfec9681656dc Mon Sep 17 00:00:00 2001 From: bjorn Date: Fri, 26 Sep 2008 09:20:39 +0000 Subject: Added --output-format=ebnf. --- src/GF/Speech/RegExp.hs | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'src/GF/Speech/RegExp.hs') diff --git a/src/GF/Speech/RegExp.hs b/src/GF/Speech/RegExp.hs index 5ee40828e..902569629 100644 --- a/src/GF/Speech/RegExp.hs +++ b/src/GF/Speech/RegExp.hs @@ -130,14 +130,14 @@ symbolsRE (RESymbol x) = [x] -- Debugging -prRE :: RE String -> String +prRE :: (a -> String) -> RE a -> String prRE = prRE' 0 -prRE' _ (REUnion []) = "" -prRE' n (REUnion xs) = p n 1 (concat (intersperse " | " (map (prRE' 1) xs))) -prRE' n (REConcat xs) = p n 2 (unwords (map (prRE' 2) xs)) -prRE' n (RERepeat x) = p n 3 (prRE' 3 x) ++ "*" -prRE' _ (RESymbol s) = s +prRE' _ _ (REUnion []) = "" +prRE' n f (REUnion xs) = p n 1 (concat (intersperse " | " (map (prRE' 1 f) xs))) +prRE' n f (REConcat xs) = p n 2 (unwords (map (prRE' 2 f) xs)) +prRE' n f (RERepeat x) = p n 3 (prRE' 3 f x) ++ "*" +prRE' _ f (RESymbol s) = f s p n m s | n >= m = "(" ++ s ++ ")" | True = s -- cgit v1.2.3