mirror of
https://github.com/syssec-utd/pylingual.git
synced 2026-05-10 18:39:03 -07:00
3.10+Match Statements
This commit is contained in:
committed by
Joel-Flores123
parent
f7ed7a3539
commit
9bf67312f9
+206
@@ -0,0 +1,206 @@
|
||||
def a0_bare_match():
|
||||
match x:
|
||||
case 1:
|
||||
print(1)
|
||||
print(2)
|
||||
|
||||
|
||||
def a1_bare_match(x):
|
||||
match x:
|
||||
case 1:
|
||||
print(1)
|
||||
case _:
|
||||
print(2)
|
||||
print(3)
|
||||
|
||||
|
||||
def a2_bare_match(x):
|
||||
match x:
|
||||
case 1:
|
||||
print(1)
|
||||
case 2:
|
||||
print(2)
|
||||
case _:
|
||||
print(3)
|
||||
print(4)
|
||||
|
||||
|
||||
def a3_bare_match(x):
|
||||
match x:
|
||||
case 1:
|
||||
print(1)
|
||||
case 2:
|
||||
print(2)
|
||||
case 3:
|
||||
print(3)
|
||||
case _:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
|
||||
def a4_bare_match(x):
|
||||
match x:
|
||||
case 1:
|
||||
print(1)
|
||||
case 2:
|
||||
print(2)
|
||||
case 3:
|
||||
print(3)
|
||||
case 4:
|
||||
print(4)
|
||||
print(5)
|
||||
|
||||
|
||||
def b0_multi_case():
|
||||
match x:
|
||||
case 1 | 2:
|
||||
print(1)
|
||||
|
||||
|
||||
def b1_multi_case_fallthrough():
|
||||
match x:
|
||||
case 1 | 2:
|
||||
print(1)
|
||||
print(2)
|
||||
|
||||
|
||||
def c0_match_with_as():
|
||||
match x:
|
||||
case [1, 2] as y:
|
||||
print(1)
|
||||
|
||||
|
||||
def c1_match_with_as():
|
||||
match x:
|
||||
case [1, 2] as y:
|
||||
print(1)
|
||||
case [3, 4] as z:
|
||||
print(2)
|
||||
|
||||
|
||||
def c1_match_with_as_fallthrough():
|
||||
match x:
|
||||
case [1, 2] as y:
|
||||
print(1)
|
||||
print(2)
|
||||
|
||||
|
||||
def d0_match_sequence():
|
||||
match x:
|
||||
case [a, b, c]:
|
||||
print(1)
|
||||
|
||||
|
||||
def d1_match_sequence_fallthrough():
|
||||
match x:
|
||||
case [a, b, c]:
|
||||
print(1)
|
||||
print(2)
|
||||
|
||||
|
||||
def e0_match_mapping():
|
||||
match x:
|
||||
case {'key': value}:
|
||||
print(1)
|
||||
|
||||
|
||||
def e1_match_mapping_fallthrough():
|
||||
match x:
|
||||
case {'key': value}:
|
||||
print(1)
|
||||
print(2)
|
||||
|
||||
|
||||
def f0_match_class():
|
||||
match x:
|
||||
case Point(x=0, y=0):
|
||||
print(1)
|
||||
|
||||
|
||||
def f1_match_class_fallthrough():
|
||||
match x:
|
||||
case Point(x=0, y=0):
|
||||
print(1)
|
||||
print(2)
|
||||
|
||||
|
||||
def g0_match_complex():
|
||||
match x:
|
||||
case [Point(x1, y1), Point(x2, y2) as p2]:
|
||||
print(1)
|
||||
|
||||
|
||||
def g1_match_complex_fallthrough():
|
||||
match x:
|
||||
case [Point(x1, y1), Point(x2, y2) as p2]:
|
||||
print(1)
|
||||
print(2)
|
||||
|
||||
|
||||
def h0_try_match_except():
|
||||
try:
|
||||
match x:
|
||||
case 1:
|
||||
print(1)
|
||||
except:
|
||||
print(2)
|
||||
print(3)
|
||||
|
||||
|
||||
def i0_match_return():
|
||||
match x:
|
||||
case 1:
|
||||
return 1
|
||||
print(1)
|
||||
|
||||
|
||||
def j0_match_raise():
|
||||
match x:
|
||||
case 1:
|
||||
raise Exc
|
||||
print(1)
|
||||
|
||||
|
||||
async def k0_bare_match():
|
||||
match x:
|
||||
case 1:
|
||||
print(1)
|
||||
|
||||
|
||||
async def k1_bare_match_fallthrough():
|
||||
match x:
|
||||
case 1:
|
||||
print(1)
|
||||
print(2)
|
||||
|
||||
|
||||
def n0_match_guard():
|
||||
match x:
|
||||
case [a, b] if a > b:
|
||||
print(1)
|
||||
|
||||
|
||||
def n1_match_guard_fallthrough():
|
||||
match x:
|
||||
case [a, b] if a > b:
|
||||
print(1)
|
||||
print(2)
|
||||
|
||||
|
||||
def m0_nested_match():
|
||||
match x:
|
||||
case [a, b]:
|
||||
match b:
|
||||
case 1:
|
||||
print(1)
|
||||
print(2)
|
||||
|
||||
|
||||
def m1_nested_match_fallthrough():
|
||||
match x:
|
||||
case [a, b]:
|
||||
match b:
|
||||
case 1:
|
||||
print(1)
|
||||
print(2)
|
||||
print(3)
|
||||
Reference in New Issue
Block a user