@@ -47,8 +47,8 @@ type FreeLocals =
49canonicalize :: Env.Env -> Valid.Expr -> Result FreeLocals Can.Expr
49canonicalize :: Env.Env -> Valid.Expr -> Result FreeLocals Can.Expr
50−canonicalize env (A.A region expression) =
50+canonicalize env (A.At region expression) =
51− A.A region <$>
51+ A.At region <$>
52 case expression of
52 case expression of
53 Valid.Str string ->
53 Valid.Str string ->
54 Result.ok (Can.Str string)
54 Result.ok (Can.Str string)
@@ -113,10 +113,10 @@ canonicalize env (A.A region expression) =
113 <$> canonicalize env record
113 <$> canonicalize env record
114 <*> Result.ok field
114 <*> Result.ok field
116− Valid.Update (A.A reg name) fields ->
116+ Valid.Update (A.At reg name) fields ->
117 do fieldDict <- Result.untracked $ Dups.checkFields fields
117 do fieldDict <- Result.untracked $ Dups.checkFields fields
118 name_ <- Env.findVar reg env Nothing name
118 name_ <- Env.findVar reg env Nothing name
119− Can.Update (A.A reg name_)
119+ Can.Update (A.At reg name_)
120 <$> traverse (canonicalize env) fieldDict
120 <$> traverse (canonicalize env) fieldDict
122 Valid.Record fields ->
122 Valid.Record fields ->
@@ -150,7 +150,7 @@ canonicalizeTupleExtras region env extras =
150 Just <$> canonicalize env three
150 Just <$> canonicalize env three
152 _ : others ->
152 _ : others ->
153− let (A.A r1 _, A.A r2 _) = (head others, last others) in
153+ let (A.At r1 _, A.At r2 _) = (head others, last others) in
154 Result.throw region (Error.TupleLargerThanThree (R.merge r1 r2))
154 Result.throw region (Error.TupleLargerThanThree (R.merge r1 r2))
@@ -187,7 +187,7 @@ canonicalizeCaseBranch env (pattern, expr) =
187canonicalizeBinops :: R.Region -> Env.Env -> [(Valid.Expr, A.Located N.Name)] -> Valid.Expr -> Result FreeLocals Can.Expr
187canonicalizeBinops :: R.Region -> Env.Env -> [(Valid.Expr, A.Located N.Name)] -> Valid.Expr -> Result FreeLocals Can.Expr
188canonicalizeBinops overallRegion env ops final =
188canonicalizeBinops overallRegion env ops final =
190− canonicalizeHelp (expr, A.A region op) =
190+ canonicalizeHelp (expr, A.At region op) =
192 <$> canonicalize env expr
192 <$> canonicalize env expr
193 <*> Env.findBinop region env op
193 <*> Env.findBinop region env op
@@ -316,8 +316,8 @@ removeLocals unused boundNames (Result.Result freeLocals warnings answer) =
318toUnusedWarning :: Warning.Unused -> (N.Name, A.Located a) -> A.Located Warning.Warning
318toUnusedWarning :: Warning.Unused -> (N.Name, A.Located a) -> A.Located Warning.Warning
319−toUnusedWarning unused (name, A.A region _) =
319+toUnusedWarning unused (name, A.At region _) =
320− A.A region (Warning.UnusedVariable unused name)
320+ A.At region (Warning.UnusedVariable unused name)
@@ -331,15 +331,15 @@ type Bindings =
331addBindings :: (Valid.Def, Int) -> Bindings -> Bindings
331addBindings :: (Valid.Def, Int) -> Bindings -> Bindings
332addBindings (def, key) bindings =
332addBindings (def, key) bindings =
333 case def of
333 case def of
334− Valid.Define defRegion (A.A region name) _ _ _ ->
334+ Valid.Define defRegion (A.At region name) _ _ _ ->
335− Dups.insert name region () (A.A defRegion key) bindings
335+ Dups.insert name region () (A.At defRegion key) bindings
337 Valid.Destruct defRegion pattern _ ->
337 Valid.Destruct defRegion pattern _ ->
338− addBindingsHelp (A.A defRegion key) pattern bindings
338+ addBindingsHelp (A.At defRegion key) pattern bindings
341addBindingsHelp :: A.Located Int -> Src.Pattern -> Bindings -> Bindings
341addBindingsHelp :: A.Located Int -> Src.Pattern -> Bindings -> Bindings
342−addBindingsHelp key (A.A region pattern) bindings =
342+addBindingsHelp key (A.At region pattern) bindings =
343 case pattern of
343 case pattern of
344 Src.PAnything ->
344 Src.PAnything ->
@@ -349,7 +349,7 @@ addBindingsHelp key (A.A region pattern) bindings =
350 Src.PRecord fields ->
350 Src.PRecord fields ->
352− addField (A.A fieldRegion name) dict =
352+ addField (A.At fieldRegion name) dict =
353 Dups.insert name fieldRegion () key dict
353 Dups.insert name fieldRegion () key dict
355 foldr addField bindings fields
355 foldr addField bindings fields
@@ -369,7 +369,7 @@ addBindingsHelp key (A.A region pattern) bindings =
369 Src.PCons first rest ->
369 Src.PCons first rest ->
370 addBindingsHelp key rest (addBindingsHelp key first bindings)
370 addBindingsHelp key rest (addBindingsHelp key first bindings)
372− Src.PAlias ptrn (A.A reg name) ->
372+ Src.PAlias ptrn (A.At reg name) ->
373 addBindingsHelp key ptrn (Dups.insert name reg () key bindings)
373 addBindingsHelp key ptrn (Dups.insert name reg () key bindings)
375 Src.PChr _ ->
375 Src.PChr _ ->
@@ -397,7 +397,7 @@ data Binding
397defToNode :: Map.Map N.Name Int -> Env.Env -> (Valid.Def, Int) -> Result () (Node, Int, [Int])
397defToNode :: Map.Map N.Name Int -> Env.Env -> (Valid.Def, Int) -> Result () (Node, Int, [Int])
398defToNode defKeys env (def, key) =
398defToNode defKeys env (def, key) =
399 case def of
399 case def of
400− Valid.Define region aname@(A.A _ name) srcArgs body Nothing ->
400+ Valid.Define region aname@(A.At _ name) srcArgs body Nothing ->
401 do (args, destructors) <-
401 do (args, destructors) <-
402 Pattern.verify (Error.DPFuncArgs name) $
402 Pattern.verify (Error.DPFuncArgs name) $
403 Index.indexedTraverse (Pattern.canonicalizeArg env) srcArgs
403 Index.indexedTraverse (Pattern.canonicalizeArg env) srcArgs
@@ -415,7 +415,7 @@ defToNode defKeys env (def, key) =
415 toNode defKeys key destructors $
415 toNode defKeys key destructors $
416 Destruct region cpattern destructors <$> canonicalize env body
416 Destruct region cpattern destructors <$> canonicalize env body
418− Valid.Define region aname@(A.A _ name) srcArgs body (Just tipe) ->
418+ Valid.Define region aname@(A.At _ name) srcArgs body (Just tipe) ->
419 do (Can.Forall freeVars ctipe) <- Type.toAnnotation env tipe
419 do (Can.Forall freeVars ctipe) <- Type.toAnnotation env tipe
420 ((args, resultType), destructors) <-
420 ((args, resultType), destructors) <-
421 Pattern.verify (Error.DPFuncArgs name) $
421 Pattern.verify (Error.DPFuncArgs name) $
@@ -465,7 +465,7 @@ gatherTypedArgs env name srcArgs tipe index revTypedArgs =
465 typedArg : revTypedArgs
465 typedArg : revTypedArgs
468− let (A.A start _, A.A end _) = (head srcArgs, last srcArgs) in
468+ let (A.At start _, A.At end _) = (head srcArgs, last srcArgs) in
469 Result.throw (R.merge start end) $
469 Result.throw (R.merge start end) $
470 Error.AnnotationTooShort name index (length srcArgs)
470 Error.AnnotationTooShort name index (length srcArgs)
@@ -481,7 +481,7 @@ detectCycles letRegion sccs body =
481 Result.ok body
481 Result.ok body
483 scc : subSccs ->
483 scc : subSccs ->
484− A.A letRegion <$>
484+ A.At letRegion <$>
485 case scc of
485 case scc of
486 Graph.AcyclicSCC (Node binding freeLocals) ->
486 Graph.AcyclicSCC (Node binding freeLocals) ->
487 case binding of
487 case binding of