diff --git a/pymbolic/mapper/__init__.py b/pymbolic/mapper/__init__.py index 6d0a1591fb093e2c907fdc63fc59ed4c364fbd68..1d7c1e9d4ba78b151d737d71296e080a6b6e6495 100644 --- a/pymbolic/mapper/__init__.py +++ b/pymbolic/mapper/__init__.py @@ -588,6 +588,13 @@ class WalkMapper(RecursiveMapper): for i in indices_in_shape(expr.shape): self.rec(expr[i], *args) + def map_multivector(self, expr, *args): + if not self.visit(expr, *args): + return + + for bits, coeff in expr.data.iteritems(): + self.rec(coeff) + def map_common_subexpression(self, expr, *args, **kwargs): if not self.visit(expr, *args): return