| 
									
										
										
										
											2021-08-25 15:42:48 +02:00
										 |  |  | func foo(x): | 
					
						
							| 
									
										
										
										
											2022-12-26 11:24:17 -05:00
										 |  |  | 	match x: | 
					
						
							|  |  |  | 		1 + 1: | 
					
						
							|  |  |  | 			print("1+1") | 
					
						
							|  |  |  | 		[1,2,[1,{1:2,2:var z,..}]]: | 
					
						
							|  |  |  | 			print("[1,2,[1,{1:2,2:var z,..}]]") | 
					
						
							|  |  |  | 			print(z) | 
					
						
							|  |  |  | 		1 if true else 2: | 
					
						
							|  |  |  | 			print("1 if true else 2") | 
					
						
							|  |  |  | 		1 < 2: | 
					
						
							|  |  |  | 			print("1 < 2") | 
					
						
							|  |  |  | 		1 or 2 and 1: | 
					
						
							|  |  |  | 			print("1 or 2 and 1") | 
					
						
							|  |  |  | 		6 | 1: | 
					
						
							|  |  |  | 			print("1 | 1") | 
					
						
							|  |  |  | 		1 >> 1: | 
					
						
							|  |  |  | 			print("1 >> 1") | 
					
						
							|  |  |  | 		1, 2 or 3, 4: | 
					
						
							|  |  |  | 			print("1, 2 or 3, 4") | 
					
						
							|  |  |  | 		_: | 
					
						
							|  |  |  | 			print("wildcard") | 
					
						
							| 
									
										
										
										
											2021-08-25 15:42:48 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | func test(): | 
					
						
							| 
									
										
										
										
											2022-12-26 11:24:17 -05:00
										 |  |  | 	foo(6 | 1) | 
					
						
							|  |  |  | 	foo(1 >> 1) | 
					
						
							|  |  |  | 	foo(2) | 
					
						
							|  |  |  | 	foo(1) | 
					
						
							|  |  |  | 	foo(1+1) | 
					
						
							|  |  |  | 	foo(1 < 2) | 
					
						
							|  |  |  | 	foo([2, 1]) | 
					
						
							|  |  |  | 	foo(4) | 
					
						
							|  |  |  | 	foo([1, 2, [1, {1 : 2, 2:3}]]) | 
					
						
							|  |  |  | 	foo([1, 2, [1, {1 : 2, 2:[1,3,5, "123"], 4:2}]]) | 
					
						
							|  |  |  | 	foo([1, 2, [1, {1 : 2}]]) |