diff --git a/pymbolic/mapper/substitutor.py b/pymbolic/mapper/substitutor.py index 177a9b1c..08a48330 100644 --- a/pymbolic/mapper/substitutor.py +++ b/pymbolic/mapper/substitutor.py @@ -69,8 +69,9 @@ def subst_func(var): return subst_func -def substitute(expression, variable_assignments={}, **kwargs): +def substitute( + expression, variable_assignments={}, mapper=SubstitutionMapper, **kwargs): variable_assignments = variable_assignments.copy() variable_assignments.update(kwargs) - return SubstitutionMapper(make_subst_func(variable_assignments))(expression) + return mapper(make_subst_func(variable_assignments))(expression)