git.iko.soy/rowtype-yoga/purescript-native
on golang help sign in
Don't warn unused data constructors when none imported
b20be15Nicholas Wolverson
src/Language/PureScript/Linter/Imports.hs+5−3
@@ -57,9 +57,11 @@ findUnusedImports (Module _ _ _ mdecls mexports) env usedImps = do
57 forM_ (mapMaybe getTypeRef declrefs) $ \(tn, c) -> do
57 forM_ (mapMaybe getTypeRef declrefs) $ \(tn, c) -> do
58 let allCtors = dctorsForType mni tn
58 let allCtors = dctorsForType mni tn
59 when (runProperName tn `elem` usedNames) $ case (c, null $ usedDctors `intersect` allCtors) of
59 when (runProperName tn `elem` usedNames) $ case (c, null $ usedDctors `intersect` allCtors) of
60+ (Nothing, True) -> tell $ errorMessage $ UnusedDctorImport tn
60− (_, True) -> tell $ errorMessage $ UnusedDctorImport tn
61+ (Just (_:_), True) -> tell $ errorMessage $ UnusedDctorImport tn
62+ (Just ctors, _) ->
61− (Just ctors, False) -> let ddiff = ctors \\ usedDctors
63+ let ddiff = ctors \\ usedDctors
62− in unless (null ddiff) $ tell $ errorMessage $ UnusedDctorExplicitImport tn ddiff
64+ in unless (null ddiff) $ tell $ errorMessage $ UnusedDctorExplicitImport tn ddiff
63 _ -> return ()
65 _ -> return ()
64 return ()
66 return ()
65
67