diff options
author | Branislav ZahradnĂk <barney@cpan.org> | 2021-12-23 23:27:18 +0100 |
---|---|---|
committer | Karl Williamson <khw@cpan.org> | 2022-02-05 20:54:09 -0700 |
commit | 18cbf839872f70dd53e87fcb7f8a3be570a69669 (patch) | |
tree | 9d092835cf4753d3ec9a73dcb2131eb5d51b0b8d /perly.y | |
parent | 6e9eef6684fc76adb123d29c872346b287f47aad (diff) | |
download | perl-18cbf839872f70dd53e87fcb7f8a3be570a69669.tar.gz |
Use `optexpr` in anonymous to reduce number of symbols
Diffstat (limited to 'perly.y')
-rw-r--r-- | perly.y | 13 |
1 files changed, 5 insertions, 8 deletions
@@ -1175,14 +1175,11 @@ termunop : PERLY_MINUS term %prec UMINUS /* -$x */ ; /* Constructors for anonymous data */ -anonymous: PERLY_BRACKET_OPEN expr PERLY_BRACKET_CLOSE - { $$ = newANONLIST($expr); } - | PERLY_BRACKET_OPEN PERLY_BRACKET_CLOSE - { $$ = newANONLIST(NULL);} - | HASHBRACK expr PERLY_SEMICOLON PERLY_BRACE_CLOSE %prec PERLY_PAREN_OPEN /* { foo => "Bar" } */ - { $$ = newANONHASH($expr); } - | HASHBRACK PERLY_SEMICOLON PERLY_BRACE_CLOSE %prec PERLY_PAREN_OPEN /* { } (PERLY_SEMICOLON by tokener) */ - { $$ = newANONHASH(NULL); } +anonymous + : PERLY_BRACKET_OPEN optexpr PERLY_BRACKET_CLOSE + { $$ = newANONLIST($optexpr); } + | HASHBRACK optexpr PERLY_SEMICOLON PERLY_BRACE_CLOSE %prec PERLY_PAREN_OPEN /* { foo => "Bar" } */ + { $$ = newANONHASH($optexpr); } | ANONSUB startanonsub proto subattrlist subbody %prec PERLY_PAREN_OPEN { SvREFCNT_inc_simple_void(PL_compcv); $$ = newANONATTRSUB($startanonsub, $proto, $subattrlist, $subbody); } |