summaryrefslogtreecommitdiffhomepage
path: root/lib/Language/Haskell/Stylish/Step/Data.hs
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Language/Haskell/Stylish/Step/Data.hs')
-rw-r--r--lib/Language/Haskell/Stylish/Step/Data.hs4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/Language/Haskell/Stylish/Step/Data.hs b/lib/Language/Haskell/Stylish/Step/Data.hs
index bf39c7c..523389b 100644
--- a/lib/Language/Haskell/Stylish/Step/Data.hs
+++ b/lib/Language/Haskell/Stylish/Step/Data.hs
@@ -71,6 +71,8 @@ data Config = Config
-- ^ Indentation between @via@ clause and start of deriving column start
, cCurriedContext :: !Bool
-- ^ If true, use curried context. E.g: @allValues :: Enum a => Bounded a => Proxy a -> [a]@
+ , cSortDeriving :: !Bool
+ -- ^ If true, will sort type classes in a @deriving@ list.
, cMaxColumns :: !MaxColumns
} deriving (Show)
@@ -266,7 +268,7 @@ putDeriving Config{..} (L pos clause) = do
= clause
& deriv_clause_tys
& unLocated
- & sortBy compareOutputable
+ & (if cSortDeriving then sortBy compareOutputable else id)
& fmap hsib_body
headTy =