Mercurial > genshi > mirror
changeset 678:905070c31ea8 experimental-optimizer
Add `StaticStrategy` to basic benchmark. Results in about a 32% speedup.
author | athomas |
---|---|
date | Wed, 23 Jan 2008 14:09:17 +0000 |
parents | ea1e899f02bf |
children | 1efe990d675e |
files | examples/bench/basic.py |
diffstat | 1 files changed, 16 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/examples/bench/basic.py +++ b/examples/bench/basic.py @@ -9,8 +9,8 @@ import sys import timeit -__all__ = ['clearsilver', 'mako', 'django', 'kid', 'genshi', 'genshi_text', - 'simpletal'] +__all__ = ['clearsilver', 'mako', 'django', 'kid', 'genshi', 'genshi_opt', + 'genshi_text', 'simpletal'] def genshi(dirname, verbose=False): from genshi.template import TemplateLoader @@ -25,6 +25,20 @@ print render() return render +def genshi_opt(dirname, verbose=False): + from genshi.template import TemplateLoader + from genshi.template.optimize import Optimizer, StaticStrategy + loader = TemplateLoader(['genshi'], auto_reload=False) + template = Optimizer(loader.load('template.html'), [StaticStrategy()]) + def render(): + data = dict(title='Just a test', user='joe', + items=['Number %d' % num for num in range(1, 15)]) + return template.generate(**data).render('xhtml') + + if verbose: + print render() + return render + def genshi_text(dirname, verbose=False): from genshi.core import escape from genshi.template import TemplateLoader, NewTextTemplate