@@ -143,10 +143,15 @@ trait TreeUtils
143143 def transformTree (tree : Tree )(implicit ctx : Context ): Tree = {
144144 def localCtx (definition : Definition ): Context = definition.symbol.localContext
145145 tree match {
146- case IsTerm (tree) => transformTerm (tree)
146+ case IsStatement (tree) => transformStatement (tree)
147147 }
148148 }
149149
150+ def transformStatment (tree : Statment )(implicit ctx : Context ): Statement = tree match {
151+ case IsTerm (tree) => transformTerm(tree)
152+
153+ }
154+
150155 def transformTerm (tree : Term )(implicit ctx : Context ): Term = {
151156 tree match {
152157 case Term .Ident (name) =>
@@ -171,8 +176,8 @@ trait TreeUtils
171176// NamedArg.copy(tree)(name, transform(arg))
172177// case Assign(lhs, rhs) =>
173178// Assign.copy(tree)(transform(lhs), transform(rhs))
174- // case Block(stats, expr) =>
175- // Block.copy(tree)(transformStats(stats), transform (expr))
179+ case Term . Block (stats, expr) =>
180+ Term . Block .copy(tree)(transformStats(stats), transformExpr (expr))
176181// case If(cond, thenp, elsep) =>
177182// If.copy(tree)(transform(cond), transform(thenp), transform(elsep))
178183// case Closure(env, meth, tpt) =>
@@ -254,6 +259,9 @@ trait TreeUtils
254259 ???
255260 }
256261
262+ def transformStats (trees : List [Statement ])(implicit ctx : Context ): List [Statement ] =
263+ trees mapConserve (transformStatement(_))
264+
257265 def transformTrees (trees : List [Tree ])(implicit ctx : Context ): List [Tree ] =
258266 trees mapConserve (transformTree(_))
259267
0 commit comments