mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-01-08 23:39:39 +07:00
PY-48009 Support formatting of PEP-634 match statements
GitOrigin-RevId: d4755af5ca19efef70db6c4a043135182bc0da04
This commit is contained in:
committed by
intellij-monorepo-bot
parent
da7f965b5a
commit
ccf574bad9
@@ -1,5 +1,5 @@
|
||||
match x:
|
||||
case Class(
|
||||
<caret>
|
||||
<caret>
|
||||
):
|
||||
pass
|
||||
@@ -1,4 +1,4 @@
|
||||
match x:
|
||||
case {'foo': 1,
|
||||
<caret>'bar': 2}
|
||||
<caret>'bar': 2}
|
||||
pass
|
||||
@@ -1,4 +1,4 @@
|
||||
match x:
|
||||
case [1,
|
||||
<caret>2]:
|
||||
<caret>2]:
|
||||
pass
|
||||
@@ -0,0 +1,17 @@
|
||||
match x:
|
||||
case 1 \
|
||||
| 2 \
|
||||
| 3:
|
||||
pass
|
||||
case 1 | \
|
||||
2 | \
|
||||
3:
|
||||
pass
|
||||
case (1
|
||||
| 2
|
||||
| 3):
|
||||
pass
|
||||
case (1 |
|
||||
2 |
|
||||
3):
|
||||
pass
|
||||
@@ -0,0 +1,12 @@
|
||||
match x:
|
||||
case (1 |
|
||||
2
|
||||
| 3,
|
||||
[1
|
||||
| 2,
|
||||
3,],
|
||||
Class(1
|
||||
| 2,
|
||||
3)
|
||||
):
|
||||
pass
|
||||
@@ -0,0 +1,12 @@
|
||||
match x:
|
||||
case (1 |
|
||||
2
|
||||
| 3,
|
||||
[1
|
||||
| 2,
|
||||
3, ],
|
||||
Class(1
|
||||
| 2,
|
||||
3)
|
||||
):
|
||||
pass
|
||||
@@ -0,0 +1,17 @@
|
||||
match x:
|
||||
case 1 \
|
||||
| 2 \
|
||||
| 3:
|
||||
pass
|
||||
case 1 | \
|
||||
2 | \
|
||||
3:
|
||||
pass
|
||||
case (1
|
||||
| 2
|
||||
| 3):
|
||||
pass
|
||||
case (1 |
|
||||
2 |
|
||||
3):
|
||||
pass
|
||||
@@ -0,0 +1,5 @@
|
||||
match x:
|
||||
case Class(1,
|
||||
foo=2,
|
||||
bar=3):
|
||||
pass
|
||||
@@ -0,0 +1,5 @@
|
||||
match x:
|
||||
case Class(1,
|
||||
foo=2,
|
||||
bar=3):
|
||||
pass
|
||||
@@ -0,0 +1,7 @@
|
||||
match x:
|
||||
case Class(
|
||||
1,
|
||||
foo=2,
|
||||
bar=3
|
||||
):
|
||||
pass
|
||||
@@ -0,0 +1,7 @@
|
||||
match x:
|
||||
case Class(
|
||||
1,
|
||||
foo=2,
|
||||
bar=3
|
||||
):
|
||||
pass
|
||||
@@ -0,0 +1,7 @@
|
||||
match x:
|
||||
case Class(
|
||||
1,
|
||||
foo=2,
|
||||
bar=3
|
||||
):
|
||||
pass
|
||||
@@ -0,0 +1,7 @@
|
||||
match x:
|
||||
case Class(
|
||||
1,
|
||||
foo=2,
|
||||
bar=3
|
||||
):
|
||||
pass
|
||||
@@ -0,0 +1,7 @@
|
||||
match x:
|
||||
case {
|
||||
'foo': 1,
|
||||
'bar': 2,
|
||||
'baz': 3
|
||||
}:
|
||||
pass
|
||||
@@ -0,0 +1,7 @@
|
||||
match x:
|
||||
case {
|
||||
'foo': 1,
|
||||
'bar': 2,
|
||||
'baz': 3
|
||||
}:
|
||||
pass
|
||||
@@ -0,0 +1,13 @@
|
||||
match x:
|
||||
case [
|
||||
1,
|
||||
2,
|
||||
3
|
||||
]:
|
||||
pass
|
||||
case (
|
||||
1,
|
||||
2,
|
||||
3
|
||||
):
|
||||
pass
|
||||
@@ -0,0 +1,13 @@
|
||||
match x:
|
||||
case [
|
||||
1,
|
||||
2,
|
||||
3
|
||||
]:
|
||||
pass
|
||||
case (
|
||||
1,
|
||||
2,
|
||||
3
|
||||
):
|
||||
pass
|
||||
@@ -0,0 +1,5 @@
|
||||
match x:
|
||||
case {'foo': 1,
|
||||
'bar': 2,
|
||||
'baz': 3}:
|
||||
pass
|
||||
@@ -0,0 +1,5 @@
|
||||
match x:
|
||||
case {'foo': 1,
|
||||
'bar': 2,
|
||||
'baz': 3}:
|
||||
pass
|
||||
@@ -0,0 +1,6 @@
|
||||
match x:
|
||||
case [(1,
|
||||
2),
|
||||
[3,
|
||||
4]
|
||||
]
|
||||
@@ -0,0 +1,6 @@
|
||||
match x:
|
||||
case [(1,
|
||||
2),
|
||||
[3,
|
||||
4]
|
||||
]
|
||||
@@ -0,0 +1,9 @@
|
||||
match x:
|
||||
case [1,
|
||||
2,
|
||||
3]:
|
||||
pass
|
||||
case (1,
|
||||
2,
|
||||
3):
|
||||
pass
|
||||
@@ -0,0 +1,9 @@
|
||||
match x:
|
||||
case [1,
|
||||
2,
|
||||
3]:
|
||||
pass
|
||||
case (1,
|
||||
2,
|
||||
3):
|
||||
pass
|
||||
7
python/testData/formatter/itemIndentInMappingPatterns.py
Normal file
7
python/testData/formatter/itemIndentInMappingPatterns.py
Normal file
@@ -0,0 +1,7 @@
|
||||
match x:
|
||||
case {
|
||||
'foo': 1,
|
||||
'bar': 2,
|
||||
'baz': 3
|
||||
}:
|
||||
pass
|
||||
@@ -0,0 +1,7 @@
|
||||
match x:
|
||||
case {
|
||||
'foo': 1,
|
||||
'bar': 2,
|
||||
'baz': 3
|
||||
}:
|
||||
pass
|
||||
13
python/testData/formatter/itemIndentInSequencePatterns.py
Normal file
13
python/testData/formatter/itemIndentInSequencePatterns.py
Normal file
@@ -0,0 +1,13 @@
|
||||
match x:
|
||||
case [
|
||||
1,
|
||||
2,
|
||||
3
|
||||
]:
|
||||
pass
|
||||
case (
|
||||
1,
|
||||
2,
|
||||
3
|
||||
):
|
||||
pass
|
||||
@@ -0,0 +1,13 @@
|
||||
match x:
|
||||
case [
|
||||
1,
|
||||
2,
|
||||
3
|
||||
]:
|
||||
pass
|
||||
case (
|
||||
1,
|
||||
2,
|
||||
3
|
||||
):
|
||||
pass
|
||||
7
python/testData/formatter/noSpacesInsideStarPatterns.py
Normal file
7
python/testData/formatter/noSpacesInsideStarPatterns.py
Normal file
@@ -0,0 +1,7 @@
|
||||
match x:
|
||||
case (1, * xs):
|
||||
pass
|
||||
case [1, * _]:
|
||||
pass
|
||||
case {'foo': 1, ** others}:
|
||||
pass
|
||||
@@ -0,0 +1,7 @@
|
||||
match x:
|
||||
case (1, *xs):
|
||||
pass
|
||||
case [1, *_]:
|
||||
pass
|
||||
case {'foo': 1, **others}:
|
||||
pass
|
||||
@@ -0,0 +1,3 @@
|
||||
match x:
|
||||
case 42:
|
||||
pass
|
||||
@@ -0,0 +1,3 @@
|
||||
match x:
|
||||
case 42:
|
||||
pass
|
||||
@@ -0,0 +1,3 @@
|
||||
match x:
|
||||
case 42 as y:
|
||||
pass
|
||||
@@ -0,0 +1,3 @@
|
||||
match x:
|
||||
case 42 as y:
|
||||
pass
|
||||
@@ -0,0 +1,3 @@
|
||||
match x:
|
||||
case Class(foo = 1, bar=2):
|
||||
pass
|
||||
@@ -0,0 +1,3 @@
|
||||
match x:
|
||||
case Class(foo=1, bar=2):
|
||||
pass
|
||||
@@ -0,0 +1,3 @@
|
||||
match x:
|
||||
case {'foo': 1, 'bar': 2}:
|
||||
pass
|
||||
@@ -0,0 +1,3 @@
|
||||
match x :
|
||||
case {'foo' :1, 'bar' :2} :
|
||||
pass
|
||||
@@ -0,0 +1,9 @@
|
||||
match x:
|
||||
case [1, 2,]:
|
||||
pass
|
||||
case (1, 2,):
|
||||
pass
|
||||
case {'foo': 1, 'bar': 2,}:
|
||||
pass
|
||||
case Class(foo=1, bar=2,):
|
||||
pass
|
||||
@@ -0,0 +1,9 @@
|
||||
match x:
|
||||
case [1 ,2 ,]:
|
||||
pass
|
||||
case (1 ,2 ,):
|
||||
pass
|
||||
case {'foo': 1 ,'bar': 2 ,}:
|
||||
pass
|
||||
case Class(foo=1 ,bar=2 ,):
|
||||
pass
|
||||
@@ -0,0 +1,9 @@
|
||||
match x:
|
||||
case Class():
|
||||
pass
|
||||
case Class(foo=1):
|
||||
pass
|
||||
case Class(foo=1, bar=2):
|
||||
pass
|
||||
case Class(foo=1, bar=2,):
|
||||
pass
|
||||
@@ -0,0 +1,9 @@
|
||||
match x:
|
||||
case Class ():
|
||||
pass
|
||||
case Class (foo=1):
|
||||
pass
|
||||
case Class (foo=1, bar=2):
|
||||
pass
|
||||
case Class (foo=1, bar=2, ):
|
||||
pass
|
||||
@@ -0,0 +1,10 @@
|
||||
match x:
|
||||
case {}:
|
||||
pass
|
||||
case {'foo': 1}:
|
||||
pass
|
||||
case {'foo': 1, 'bar': 2}:
|
||||
pass
|
||||
case {'foo': 1, 'bar': 2,}:
|
||||
pass
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
match x:
|
||||
case { }:
|
||||
pass
|
||||
case { 'foo': 1 }:
|
||||
pass
|
||||
case { 'foo': 1, 'bar': 2 }:
|
||||
pass
|
||||
case { 'foo': 1, 'bar': 2, }:
|
||||
pass
|
||||
@@ -0,0 +1,17 @@
|
||||
match x:
|
||||
case []:
|
||||
pass
|
||||
case [1]:
|
||||
pass
|
||||
case [1, 2]:
|
||||
pass
|
||||
case [1, 2,]:
|
||||
pass
|
||||
case ():
|
||||
pass
|
||||
case (1,):
|
||||
pass
|
||||
case (1, 2):
|
||||
pass
|
||||
case (1, 2,):
|
||||
pass
|
||||
@@ -0,0 +1,17 @@
|
||||
match x:
|
||||
case [ ]:
|
||||
pass
|
||||
case [ 1 ]:
|
||||
pass
|
||||
case [ 1, 2 ]:
|
||||
pass
|
||||
case [ 1, 2, ]:
|
||||
pass
|
||||
case ():
|
||||
pass
|
||||
case (1, ):
|
||||
pass
|
||||
case (1, 2):
|
||||
pass
|
||||
case (1, 2, ):
|
||||
pass
|
||||
@@ -0,0 +1,9 @@
|
||||
match x:
|
||||
case Class():
|
||||
pass
|
||||
case Class(foo=1):
|
||||
pass
|
||||
case Class(foo=1, bar=2):
|
||||
pass
|
||||
case Class(foo=1, bar=2,):
|
||||
pass
|
||||
@@ -0,0 +1,9 @@
|
||||
match x:
|
||||
case Class( ):
|
||||
pass
|
||||
case Class( foo=1 ):
|
||||
pass
|
||||
case Class( foo=1, bar=2 ):
|
||||
pass
|
||||
case Class( foo=1, bar=2, ):
|
||||
pass
|
||||
@@ -0,0 +1,13 @@
|
||||
match x:
|
||||
case ('foo'
|
||||
'bar'):
|
||||
pass
|
||||
case ('foo'
|
||||
'bar',):
|
||||
pass
|
||||
case ['foo'
|
||||
'bar']:
|
||||
pass
|
||||
case Class('foo'
|
||||
'bar'):
|
||||
pass
|
||||
@@ -0,0 +1,13 @@
|
||||
match x:
|
||||
case ('foo'
|
||||
'bar'):
|
||||
pass
|
||||
case ('foo'
|
||||
'bar', ):
|
||||
pass
|
||||
case ['foo'
|
||||
'bar']:
|
||||
pass
|
||||
case Class('foo'
|
||||
'bar'):
|
||||
pass
|
||||
Reference in New Issue
Block a user