Skip to content

Commit 0497835

Browse files
committed
Extract printDecl to separate toplevel function
1 parent 53f6d6c commit 0497835

File tree

1 file changed

+8
-7
lines changed

1 file changed

+8
-7
lines changed

lib/Language/Haskell/Stylish/Step/Signature.hs

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -59,25 +59,26 @@ data SignatureDecl = MkSignatureDecl
5959
}
6060

6161
formatSignatureDecl :: Config -> Module -> Located SignatureDecl -> ChangeLine
62-
formatSignatureDecl Config{..} m ldecl@(L _declPos decl) = do
62+
formatSignatureDecl cfg@Config{..} m ldecl = do
6363
let block = originalDeclBlock
6464
declLength = getEndColumnUnsafe ldecl
6565
if fits declLength cMaxColumns then
6666
noop block
6767
else
68-
change block (const printDecl)
68+
change block (const (printDecl cfg m ldecl))
6969

7070
where
7171
originalDeclBlock =
7272
Block (getStartLineUnsafe ldecl) (getEndLineUnsafe ldecl)
7373

74+
printDecl :: Config -> Module -> Located SignatureDecl -> Lines
75+
printDecl Config{..} m ldecl@(L _declPos decl) = runPrinter_ printerConfig [] m do
76+
(putRdrName $ sigName decl) >> space >> putText "::" >> newline
77+
spaces 5 >> (putRdrName $ head $ sigParameters decl) >> newline
78+
traverse (\para -> spaces 2 >> putText "->" >> space >> (putRdrName para) >> newline) (tail $ sigParameters decl)
79+
where
7480
printerConfig = PrinterConfig
7581
{ columns = case cMaxColumns of
7682
NoMaxColumns -> Nothing
7783
MaxColumns n -> Just n
7884
}
79-
80-
printDecl = runPrinter_ printerConfig [] m do
81-
(putRdrName $ sigName decl) >> space >> putText "::" >> newline
82-
spaces 5 >> (putRdrName $ head $ sigParameters decl) >> newline
83-
traverse (\para -> spaces 2 >> putText "->" >> space >> (putRdrName para) >> newline) (tail $ sigParameters decl)

0 commit comments

Comments
 (0)