
While starting to learn more about webfunctions I have noticed that hasktags doesn't recognize rwUserName and rwPasswd in the following code: data LogInController = LogInController {rLoggedIn::R Bool, rwUserName::RWE String, rwPasswd::RWE String} When using spaces it does LogInController {rLoggedIn :: R Bool, rwUserName :: RWE String, rwPasswd :: RWE String} This small patch introduces a now mywords function which recognizes a::b as words a,::,b which is what we need here (?) It does work in the above example. Here is the diff. Is it worth applying? 154c154 < let wordlines = map words aslines ---
let wordlines = map mywords aslines
161a162,174
-- my words is mainly copied from Data.List. -- difference abc::def is split into three words instead of one. mywords :: String -> [String] mywords (':':':':xs) = "::" : mywords xs mywords s = case dropWhile {-partain:Char.-}isSpace s of "" -> [] s' -> w : mywords s'' where (w, s'') = myBreak s' myBreak [] = ([],[]) myBreak (':':':':xs) = ([], "::"++xs) myBreak (' ':xs) = ([],xs); myBreak (x:xs) = let (a,b) = myBreak xs in (x:a,b)
Marc Weber