blob: e41bace19766ee661dac6fb1f89f8c195250ce84 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
--------------------------------------------------------------------------------
module Language.Haskell.Stylish.Step.TrailingWhitespace
( step
) where
--------------------------------------------------------------------------------
import Data.Char (isSpace)
--------------------------------------------------------------------------------
import Language.Haskell.Stylish.Step
--------------------------------------------------------------------------------
dropTrailingWhitespace :: String -> String
dropTrailingWhitespace = reverse . dropWhile isSpace . reverse
--------------------------------------------------------------------------------
step :: Step
step = makeStep "TrailingWhitespace" $ \ls _ -> map dropTrailingWhitespace' ls
where
dropTrailingWhitespace' l = case l of
-- Preserve page breaks
"\12" -> l
_ -> dropTrailingWhitespace l
|