@@ -12,8 +12,8 @@ import qualified AST.Expression.Canonical as Canonical
12import qualified AST.Literal as Literal
12import qualified AST.Literal as Literal
13import qualified AST.Pattern as P
13import qualified AST.Pattern as P
14import qualified AST.Variable as Var
14import qualified AST.Variable as Var
15+import qualified Generate.Substitute as S
15import qualified Reporting.Annotation as A
16import qualified Reporting.Annotation as A
16−import Transform.Substitute (subst)
@@ -62,7 +62,7 @@ matchSubst pairs match =
62 Seq (map (matchSubst pairs) ms)
62 Seq (map (matchSubst pairs) ms)
64 Other (A.A a e) ->
64 Other (A.A a e) ->
65− Other . A.A a $ foldr ($) e $ map (\(x,y) -> subst x (Expr.localVar y)) pairs
65+ Other . A.A a $ foldr ($) e $ map (\(x,y) -> S.subst x (Expr.localVar y)) pairs
67 Match n cs m ->
67 Match n cs m ->
68 Match (varSubst n) (map clauseSubst cs) (matchSubst pairs m)
68 Match (varSubst n) (map clauseSubst cs) (matchSubst pairs m)
@@ -103,7 +103,7 @@ dealias var branch@(p:ps, A.A ann e) =
103 case p of
103 case p of
104 A.A _ (P.Alias alias pattern) ->
104 A.A _ (P.Alias alias pattern) ->
105 ( pattern:ps
105 ( pattern:ps
106− , A.A ann (subst alias (Expr.localVar var) e)
106+ , A.A ann (S.subst alias (Expr.localVar var) e)
@@ -143,12 +143,12 @@ matchVar (var:vars) branches match =
145 P.Var x ->
145 P.Var x ->
146− subst x (Expr.localVar var) expr
146+ S.subst x (Expr.localVar var) expr
148 P.Record fields ->
148 P.Record fields ->
149 let access = Expr.Access (A.A ann (Expr.localVar var))
149 let access = Expr.Access (A.A ann (Expr.localVar var))
151− foldr (\x -> subst x (access x)) expr fields
151+ foldr (\x -> S.subst x (access x)) expr fields
154 noMatch "matchVar.subVar"
154 noMatch "matchVar.subVar"