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 ;-)