packages feed

homplexity 0.4.3.1 → 0.4.3.2

raw patch · 5 files changed

+42/−21 lines, 5 filesdep ~cpphsdep ~haskell-src-exts

Dependency ranges changed: cpphs, haskell-src-exts

Files

Language/Haskell/Homplexity/CodeFragment.hs view
@@ -1,12 +1,13 @@-{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE CPP                   #-} {-# LANGUAGE DeriveDataTypeable    #-}-{-# LANGUAGE ScopedTypeVariables   #-}-{-# LANGUAGE RecordWildCards       #-} {-# LANGUAGE FlexibleContexts      #-} {-# LANGUAGE FlexibleInstances     #-}-{-# LANGUAGE UndecidableInstances  #-}+{-# LANGUAGE MultiParamTypeClasses #-}+{-# LANGUAGE RecordWildCards       #-}+{-# LANGUAGE ScopedTypeVariables   #-} {-# LANGUAGE TypeFamilies          #-} {-# LANGUAGE ViewPatterns          #-}+{-# LANGUAGE UndecidableInstances  #-} -- | This module generalizes over types of code fragments -- that may need to be iterated upon and measured separately. module Language.Haskell.Homplexity.CodeFragment (@@ -103,15 +104,27 @@ fragmentLoc =  getPointLoc             .  fragmentSlice +#if MIN_VERSION_haskell_src_exts(1,17,0)+getBinds   = maybe [] singleton+mergeBinds = catMaybes+#else+getBinds   =          singleton+mergeBids  = id+#endif+ instance CodeFragment Function where-  type AST Function     = Decl-  matchAST (FunBind matches) = Just Function {..}+  type AST Function          = Decl+  matchAST (FunBind matches) = Just+      Function {..}     where-      (functionLocations, (unName <$>) . take 1 -> functionNames, functionRhs, functionBinds) = unzip4 $ map extract matches+      (functionLocations,+       (unName <$>) . take 1 -> functionNames,+       functionRhs,+       mergeBinds -> functionBinds) = unzip4 $ map extract matches       extract (Match srcLoc name _ _ rhs binds) = (srcLoc, name, rhs, binds)   matchAST (PatBind (singleton -> functionLocations) pat                     (singleton -> functionRhs      )-                    (singleton -> functionBinds    )) = Just Function {..}+                    (getBinds  -> functionBinds    )) = Just Function {..}     where       functionNames  = wildcards ++ map unName (universeBi pat)       wildcards = mapMaybe wildcard $ universeBi pat
Language/Haskell/Homplexity/Comments.hs view
@@ -19,6 +19,7 @@ import Data.Char import Data.Data import Data.Function+import Data.Functor import Data.List  import Language.Haskell.Homplexity.CodeFragment
Language/Haskell/Homplexity/Parse.hs view
@@ -1,3 +1,4 @@+{-# LANGUAGE CPP                   #-} {-# LANGUAGE FlexibleContexts      #-} {-# LANGUAGE FlexibleInstances     #-} {-# LANGUAGE MultiParamTypeClasses #-}@@ -64,14 +65,16 @@     handleException helper (e :: SomeException) = return $ helper $ show e     thisFileLoc = noLoc { srcFilename = inputFilename }     parseMode = ParseMode {-                  parseFilename         = inputFilename,-                  baseLanguage          = Haskell2010,-                  extensions            = myExtensions,-                  ignoreLanguagePragmas = False,-                  ignoreLinePragmas     = False,-                  fixities              = Just preludeFixities+                  parseFilename         = inputFilename+                , baseLanguage          = Haskell2010+                , extensions            = myExtensions+                , ignoreLanguagePragmas = False+                , ignoreLinePragmas     = False+                , fixities              = Just preludeFixities+#if MIN_VERSION_haskell_src_exts(1,17,0)+                , ignoreFunctionArity   = False+#endif                             }- {-putStrLn   "COMMENTS:"                                      putStrLn $ unlines $ map show $ classifyComments comments                                      putStrLn   "COMMENTABLES:"
changelog.md view
@@ -1,6 +1,10 @@ Changelog =========-    0.4.3.1  Feb 2015+    0.4.3.2  May 2016++        * Updated deps.++    0.4.3.1  Feb 2016          * Updated bounds for GHC 8.0. 
homplexity.cabal view
@@ -1,5 +1,5 @@ name:                homplexity-version:             0.4.3.1+version:             0.4.3.2 synopsis:            Haskell code quality tool description:         Homplexity aims to measure code complexity,                      warning about fragments that might have higher defect probability@@ -16,7 +16,7 @@ license-file:        LICENSE author:              Michal J. Gajda maintainer:          mjgajda@gmail.com-copyright:           Copyright by Michal J. Gajda '2015+copyright:           Copyright by Michal J. Gajda '2015-'2016 category:            Language, Tools build-type:          Simple extra-source-files:  README.md changelog.md@@ -57,7 +57,7 @@                        GeneralizedNewtypeDeriving,                        TypeFamilies   build-depends:       base             >=4.5  && <4.10,-                       haskell-src-exts >=1.12 && <1.17,+                       haskell-src-exts >=1.17 && <1.18,                        directory        >=1.1  && <1.3,                        filepath         >=1.2  && <1.5,                        hflags           >=0.3  && <0.5,@@ -65,7 +65,7 @@                        deepseq          >=1.3  && <1.5,                        containers       >=0.3  && <0.6,                        template-haskell >=2.6  && <2.12,-                       cpphs            >=1.5  && <1.20+                       cpphs            >=1.5  && <1.21   build-tools:         happy            >= 1.19.0   -- hs-source-dirs:         default-language:    Haskell2010@@ -77,7 +77,7 @@                     Language.Haskell.Homplexity.SrcSlice   type:             exitcode-stdio-1.0   build-depends:    base             >=4.5  && <4.10,-                    haskell-src-exts >=1.12 && <1.17,+                    haskell-src-exts >=1.17 && <1.18,                     uniplate         >=1.4  && <1.7   default-language: Haskell2010