Changeset 15297 for src/Pugs/Lexer.hs
- Timestamp:
- 02/18/07 15:59:02 (21 months ago)
- Files:
-
- 1 modified
-
src/Pugs/Lexer.hs (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/Pugs/Lexer.hs
r15296 r15297 237 237 where 238 238 homogenConcat :: [Exp] -> Exp 239 homogenConcat [] = Val ( _VStr "")239 homogenConcat [] = Val (VStr "") 240 240 homogenConcat [v@(Val (VStr _))] = v 241 241 homogenConcat (Val (VStr x):Val (VStr y):xs) 242 = homogenConcat (Val (VStr (x ++ +y)) : xs)242 = homogenConcat (Val (VStr (x ++ y)) : xs) 243 243 homogenConcat (x:xs) 244 244 = App (_Var "&infix:~") Nothing [x, homogenConcat xs] … … 256 256 else do 257 257 rest <- stringList (i-1) 258 return (Val ( _VStr ch):rest)258 return (Val (VStr ch):rest) 259 259 , do 260 260 ch <- try startRule 261 261 rest <- stringList (i+1) 262 return (Val ( _VStr ch):rest)262 return (Val (VStr ch):rest) 263 263 , do 264 264 char <- anyChar 265 265 rest <- stringList i 266 return (Val ( _VStr [char]):rest)266 return (Val (VStr [char]):rest) 267 267 ] 268 268
