A simple Jinja filter: renderstring

I wrote this filter for Weblog:

def do_renderstring():
    def wrapped(env, context, value):
        '''
        Render the passed string. It is similar to the tag rendertemplate,
        except it uses the passed string as the template.
    Example:
    The template 'Hello {{ string_template|renderstring }}!';
    Called with the following context:
        dict(string_template='{{ foo }} world',
             foo='crazy')
    Renders to:
    'Hello crazy world!'
    '''
    if value:
        return env.from_string(value).render(context.to_dict())
return wrapped

env.filters['renderstring'] = do_renderstring

Where env is a Jinja Environment object.

The code is in the public domain ;-)