Ticket #602: t602.diff
| File t602.diff, 3.7 KB (added by trac@…, 8 years ago) |
|---|
-
genshi/filters/i18n.py
1194 1194 elif arg: 1195 1195 strings.append(None) 1196 1196 [_add(arg) for arg in node.args] 1197 _add(node.starargs) 1198 _add(node.kwargs) 1197 if hasattr(node, 'starargs'): 1198 _add(node.starargs) 1199 if hasattr(node, 'kwargs'): 1200 _add(node.kwargs) 1199 1201 if len(strings) == 1: 1200 1202 strings = strings[0] 1201 1203 else: -
genshi/template/astutil.py
151 151 def visit_arg(self, node): 152 152 self._write(node.arg) 153 153 154 def visit_Starred(self, node): 155 self._write('*') 156 self.visit(node.value) 157 154 158 # FunctionDef(identifier name, arguments args, 155 159 # stmt* body, expr* decorator_list) 156 160 def visit_FunctionDef(self, node): … … 664 668 if not first: 665 669 self._write(', ') 666 670 first = False 667 # keyword = (identifier arg, expr value) 668 self._write(keyword.arg) 669 self._write('=') 671 if not keyword.arg: 672 # Python 3.5+ star-star args 673 self._write('**') 674 else: 675 # keyword = (identifier arg, expr value) 676 self._write(keyword.arg) 677 self._write('=') 670 678 self.visit(keyword.value) 671 679 if getattr(node, 'starargs', None): 672 680 if not first: -
genshi/template/directives.py
266 266 if isinstance(ast, _ast.Call): 267 267 self.name = ast.func.id 268 268 for arg in ast.args: 269 # only names 270 self.args.append(arg.id) 269 if isinstance(arg, _ast.Starred): 270 # Python 3.5+ 271 self.star_args = arg.value.id 272 else: 273 # only names 274 self.args.append(arg.id) 271 275 for kwd in ast.keywords: 272 self.args.append(kwd.arg) 273 exp = Expression(kwd.value, template.filepath, 274 lineno, lookup=template.lookup) 275 self.defaults[kwd.arg] = exp 276 if kwd.arg is None: 277 # Python 3.5+ 278 self.dstar_args = kwd.value.id 279 else: 280 self.args.append(kwd.arg) 281 exp = Expression(kwd.value, template.filepath, 282 lineno, lookup=template.lookup) 283 self.defaults[kwd.arg] = exp 276 284 if getattr(ast, 'starargs', None): 277 285 self.star_args = ast.starargs.id 278 286 if getattr(ast, 'kwargs', None): -
genshi/template/eval.py
600 600 finally: 601 601 self.locals.pop() 602 602 603 # Only used in Python 3.5+ 604 def visit_Starred(self, node): 605 node.value = self.visit(node.value) 606 return node 607 603 608 def visit_Name(self, node): 604 609 # If the name refers to a local inside a lambda, list comprehension, or 605 610 # generator expression, leave it alone
