diff options
author | Mark Dickinson <dickinsm@gmail.com> | 2010-07-12 14:14:18 +0000 |
---|---|---|
committer | Mark Dickinson <dickinsm@gmail.com> | 2010-07-12 14:14:18 +0000 |
commit | 5d7c29858ff1787b7045d071f5d739c0b9e4bf6e (patch) | |
tree | d37e10140ade90d134312e428bdec6a6d5963d18 /Grammar/Grammar | |
parent | e1c2ff183a66d6b89de3d35b815ea926a0a4dbbd (diff) | |
download | cpython-5d7c29858ff1787b7045d071f5d739c0b9e4bf6e.tar.gz |
Issue #2009: refactor varargslist and typedargslist productions to make them more friendly for third-party parsers.
Diffstat (limited to 'Grammar/Grammar')
-rw-r--r-- | Grammar/Grammar | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/Grammar/Grammar b/Grammar/Grammar index 7d63e23135..89f4c3614e 100644 --- a/Grammar/Grammar +++ b/Grammar/Grammar @@ -24,13 +24,13 @@ decorators: decorator+ decorated: decorators (classdef | funcdef) funcdef: 'def' NAME parameters ['->' test] ':' suite parameters: '(' [typedargslist] ')' -typedargslist: ((tfpdef ['=' test] ',')* - ('*' [tfpdef] (',' tfpdef ['=' test])* [',' '**' tfpdef] | '**' tfpdef) - | tfpdef ['=' test] (',' tfpdef ['=' test])* [',']) +typedargslist: (tfpdef ['=' test] (',' tfpdef ['=' test])* [',' + ['*' [tfpdef] (',' tfpdef ['=' test])* [',' '**' tfpdef] | '**' tfpdef]] + | '*' [tfpdef] (',' tfpdef ['=' test])* [',' '**' tfpdef] | '**' tfpdef) tfpdef: NAME [':' test] -varargslist: ((vfpdef ['=' test] ',')* - ('*' [vfpdef] (',' vfpdef ['=' test])* [',' '**' vfpdef] | '**' vfpdef) - | vfpdef ['=' test] (',' vfpdef ['=' test])* [',']) +varargslist: (vfpdef ['=' test] (',' vfpdef ['=' test])* [',' + ['*' [vfpdef] (',' vfpdef ['=' test])* [',' '**' vfpdef] | '**' vfpdef]] + | '*' [vfpdef] (',' vfpdef ['=' test])* [',' '**' vfpdef] | '**' vfpdef) vfpdef: NAME stmt: simple_stmt | compound_stmt |