diff options
author | Eevee (Alex Munroe) <eevee.git@veekun.com> | 2014-02-11 13:18:39 -0800 |
---|---|---|
committer | Eevee (Alex Munroe) <eevee.git@veekun.com> | 2014-02-11 13:18:39 -0800 |
commit | 836e5f97e84088cd3104cb3a30bf02e8a6c0a9a5 (patch) | |
tree | 89d1b80846f6feca036096ecbb6b28323fa0eb21 /mako/parsetree.py | |
parent | a5740079856fcb2244dcebc7fb81da739a4094fd (diff) | |
download | external_python_mako-836e5f97e84088cd3104cb3a30bf02e8a6c0a9a5.tar.gz external_python_mako-836e5f97e84088cd3104cb3a30bf02e8a6c0a9a5.tar.bz2 external_python_mako-836e5f97e84088cd3104cb3a30bf02e8a6c0a9a5.zip |
Support Python 3's keyword-only arguments.
Previously, they would parse correctly in Python 3, but any keyword-only
arguments would be quietly lost, and the user would either get
`TypeError: foo() got an unexpected keyword argument...` or the
confusing behavior of having the keyword argument overwritten with
whatever's in the context with the same name.
Diffstat (limited to 'mako/parsetree.py')
-rw-r--r-- | mako/parsetree.py | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/mako/parsetree.py b/mako/parsetree.py index ab83c5c..0612070 100644 --- a/mako/parsetree.py +++ b/mako/parsetree.py @@ -437,7 +437,7 @@ class DefTag(Tag): return self.function_decl.get_argument_expressions(**kw) def declared_identifiers(self): - return self.function_decl.argnames + return self.function_decl.allargnames def undeclared_identifiers(self): res = [] @@ -451,7 +451,7 @@ class DefTag(Tag): ).union( self.expression_undeclared_identifiers ).difference( - self.function_decl.argnames + self.function_decl.allargnames ) class BlockTag(Tag): @@ -502,7 +502,7 @@ class BlockTag(Tag): return self.body_decl.get_argument_expressions(**kw) def declared_identifiers(self): - return self.body_decl.argnames + return self.body_decl.allargnames def undeclared_identifiers(self): return (self.filter_args.\ @@ -524,7 +524,7 @@ class CallTag(Tag): **self.exception_kwargs) def declared_identifiers(self): - return self.code.declared_identifiers.union(self.body_decl.argnames) + return self.code.declared_identifiers.union(self.body_decl.allargnames) def undeclared_identifiers(self): return self.code.undeclared_identifiers.\ @@ -554,7 +554,7 @@ class CallNamespaceTag(Tag): **self.exception_kwargs) def declared_identifiers(self): - return self.code.declared_identifiers.union(self.body_decl.argnames) + return self.code.declared_identifiers.union(self.body_decl.allargnames) def undeclared_identifiers(self): return self.code.undeclared_identifiers.\ @@ -589,6 +589,6 @@ class PageTag(Tag): **self.exception_kwargs) def declared_identifiers(self): - return self.body_decl.argnames + return self.body_decl.allargnames |