on master help sign in
Switch Nitpick/ over to Data.Name (annotations only)
commitea403e7217e802261c406faeedc87164069140f3 authorEvan Czaplicki <evancz@users.noreply.github.com> dateMon 19 Nov 2018, 13:40 (8 years ago) parentc94fe54
1 file changed+14−14
compiler/src/Nitpick/PatternMatches.hs+14−14
compiler/src/Nitpick/PatternMatches.hs+14−14
@@ -25,7 +25,7 @@ import Data.Utf8 (Utf8)
2525import qualified AST.Canonical as Can
2626import qualified AST.Module.Name as ModuleName
2727import qualified Data.Index as Index
28−import qualified Elm.Name as N
28+import qualified Data.Name as Name
2929import qualified Reporting.Annotation as A
3030import qualified Reporting.Region as R
3131
@@ -37,7 +37,7 @@ import qualified Reporting.Region as R
3737data Pattern
3838 = Anything
3939 | Literal Literal
40− | Ctor Can.Union N.Name [Pattern]
40+ | Ctor Can.Union Name.Name [Pattern]
4141
4242
4343data Literal
@@ -95,7 +95,7 @@ simplify (A.At _ pattern) =
9595 Literal (Chr chr)
9696
9797 Can.PBool union bool ->
98− Ctor union (if bool then N.true else N.false) []
98+ Ctor union (if bool then Name.true else Name.false) []
9999
100100
101101cons :: Can.Pattern -> Pattern -> Pattern
@@ -153,34 +153,34 @@ list =
153153 consCtor =
154154 Can.Ctor consName Index.second 2
155155 [ Can.TVar "a"
156− , Can.TType ModuleName.list N.list [Can.TVar "a"]
156+ , Can.TType ModuleName.list Name.list [Can.TVar "a"]
157157 ]
158158 in
159159 Can.Union ["a"] [ nilCtor, consCtor ] 2 Can.Normal
160160
161161
162162{-# NOINLINE unitName #-}
163−unitName :: N.Name
163+unitName :: Name.Name
164164unitName = "#0"
165165
166166
167167{-# NOINLINE pairName #-}
168−pairName :: N.Name
168+pairName :: Name.Name
169169pairName = "#2"
170170
171171
172172{-# NOINLINE tripleName #-}
173−tripleName :: N.Name
173+tripleName :: Name.Name
174174tripleName = "#3"
175175
176176
177177{-# NOINLINE consName #-}
178−consName :: N.Name
178+consName :: Name.Name
179179consName = "::"
180180
181181
182182{-# NOINLINE nilName #-}
183−nilName :: N.Name
183+nilName :: Name.Name
184184nilName = "[]"
185185
186186
@@ -458,7 +458,7 @@ isExhaustive matrix n =
458458 concatMap isAltExhaustive altList
459459
460460
461−isMissing :: Can.Union -> Map.Map N.Name a -> Can.Ctor -> Maybe Pattern
461+isMissing :: Can.Union -> Map.Map Name.Name a -> Can.Ctor -> Maybe Pattern
462462isMissing union ctors (Can.Ctor name _ arity _) =
463463 if Map.member name ctors then
464464 Nothing
@@ -466,7 +466,7 @@ isMissing union ctors (Can.Ctor name _ arity _) =
466466 Just (Ctor union name (replicate arity Anything))
467467
468468
469−recoverCtor :: Can.Union -> N.Name -> Int -> [Pattern] -> [Pattern]
469+recoverCtor :: Can.Union -> Name.Name -> Int -> [Pattern] -> [Pattern]
470470recoverCtor union name arity patterns =
471471 let
472472 (args, rest) =
@@ -552,7 +552,7 @@ isUseful matrix vector =
552552
553553
554554-- INVARIANT: (length row == N) ==> (length result == arity + N - 1)
555−specializeRowByCtor :: N.Name -> Int -> [Pattern] -> Maybe [Pattern]
555+specializeRowByCtor :: Name.Name -> Int -> [Pattern] -> Maybe [Pattern]
556556specializeRowByCtor ctorName arity row =
557557 case row of
558558 Ctor _ name args : patterns ->
@@ -638,12 +638,12 @@ isComplete matrix =
638638-- COLLECT CTORS
639639
640640
641−collectCtors :: [[Pattern]] -> Map.Map N.Name Can.Union
641+collectCtors :: [[Pattern]] -> Map.Map Name.Name Can.Union
642642collectCtors matrix =
643643 List.foldl' collectCtorsHelp Map.empty matrix
644644
645645
646−collectCtorsHelp :: Map.Map N.Name Can.Union -> [Pattern] -> Map.Map N.Name Can.Union
646+collectCtorsHelp :: Map.Map Name.Name Can.Union -> [Pattern] -> Map.Map Name.Name Can.Union
647647collectCtorsHelp ctors row =
648648 case row of
649649 Ctor union name _ : _ ->