'Decorate the implementation for creating a constant of type *ty*.
The decorated implementation will have the signature
(context, builder, ty, pyval).'

def lower_constant(self, ty):

    def decorate(impl):
        self.constants.append((impl, (ty,)))
        return impl
    return decorate
