]> crepu.dev Git - config.git/blob - djavu-asus/emacs/elpy/rpc-venv/lib/python3.11/site-packages/blib2to3/PatternGrammar.txt
36bf8148273bd7a27b4a76817a776fe2ab234562
[config.git] / djavu-asus / emacs / elpy / rpc-venv / lib / python3.11 / site-packages / blib2to3 / PatternGrammar.txt
1 # Copyright 2006 Google, Inc. All Rights Reserved.
2 # Licensed to PSF under a Contributor Agreement.
3
4 # A grammar to describe tree matching patterns.
5 # Not shown here:
6 # - 'TOKEN' stands for any token (leaf node)
7 # - 'any' stands for any node (leaf or interior)
8 # With 'any' we can still specify the sub-structure.
9
10 # The start symbol is 'Matcher'.
11
12 Matcher: Alternatives ENDMARKER
13
14 Alternatives: Alternative ('|' Alternative)*
15
16 Alternative: (Unit | NegatedUnit)+
17
18 Unit: [NAME '='] ( STRING [Repeater]
19 | NAME [Details] [Repeater]
20 | '(' Alternatives ')' [Repeater]
21 | '[' Alternatives ']'
22 )
23
24 NegatedUnit: 'not' (STRING | NAME [Details] | '(' Alternatives ')')
25
26 Repeater: '*' | '+' | '{' NUMBER [',' NUMBER] '}'
27
28 Details: '<' Alternatives '>'