Mercurial > genshi > genshi-test
comparison markup/eval.py @ 225:0edf663b97d6
support slices in expressions (fixes #51)
author | mgood |
---|---|
date | Thu, 07 Sep 2006 20:40:56 +0000 |
parents | 6addf7af09f6 |
children | 98b8e1a92df8 |
comparison
equal
deleted
inserted
replaced
224:e4dad1145f84 | 225:0edf663b97d6 |
---|---|
347 def visitGenExprInner(self, node, *args, **kwargs): | 347 def visitGenExprInner(self, node, *args, **kwargs): |
348 node.expr = self.visit(node.expr, locals_=True, *args, **kwargs) | 348 node.expr = self.visit(node.expr, locals_=True, *args, **kwargs) |
349 node.quals = map(lambda x: self.visit(x, *args, **kwargs), node.quals) | 349 node.quals = map(lambda x: self.visit(x, *args, **kwargs), node.quals) |
350 return node | 350 return node |
351 | 351 |
352 def visitSlice(self, node, *args, **kwargs): | |
353 node.expr = self.visit(node.expr, locals_=True, *args, **kwargs) | |
354 if node.lower is not None: | |
355 node.lower = self.visit(node.lower, *args, **kwargs) | |
356 if node.upper is not None: | |
357 node.upper = self.visit(node.upper, *args, **kwargs) | |
358 return node | |
359 | |
360 def visitSliceobj(self, node, *args, **kwargs): | |
361 node.nodes = map(lambda x: self.visit(x, *args, **kwargs), node.nodes) | |
362 return node | |
363 | |
352 | 364 |
353 class ExpressionASTTransformer(ASTTransformer): | 365 class ExpressionASTTransformer(ASTTransformer): |
354 """Concrete AST transformer that implements the AST transformations needed | 366 """Concrete AST transformer that implements the AST transformations needed |
355 for template expressions. | 367 for template expressions. |
356 """ | 368 """ |