parseMakefile "a: b c\nd : e" == [("a",["b","c"]),("d",["e"])]
hasTrailingPathSeparator (addTrailingPathSeparator x) hasTrailingPathSeparator x ==> addTrailingPathSeparator x == x Posix: addTrailingPathSeparator "test/rest" == "test/rest/"
dropTrailingPathSeparator "file/test/" == "file/test" dropTrailingPathSeparator "/" == "/" Windows: dropTrailingPathSeparator "\\" == "\\" Posix: not (hasTrailingPathSeparator (dropTrailingPathSeparator x)) || isDrive x
hasTrailingPathSeparator "test" == False hasTrailingPathSeparator "test/" == True
isExtSeparator a == (a == extSeparator)
isPathSeparator a == (a `elem` pathSeparators)
isSearchPathSeparator a == (a == searchPathSeparator)
Windows: pathSeparator == '\\' Posix: pathSeparator == '/' isPathSeparator pathSeparator
Windows: pathSeparators == ['\\', '/'] Posix: pathSeparators == ['/'] pathSeparator `elem` pathSeparators
Windows: searchPathSeparator == ';' Posix: searchPathSeparator == ':'