match_dictionary.gd 932 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. func foo(x):
  2. match x:
  3. {"key1": "value1", "key2": "value2"}:
  4. print('{"key1": "value1", "key2": "value2"}')
  5. {"key1": "value1", "key2"}:
  6. print('{"key1": "value1", "key2"}')
  7. {"key1", "key2": "value2"}:
  8. print('{"key1", "key2": "value2"}')
  9. {"key1", "key2"}:
  10. print('{"key1", "key2"}')
  11. {"key1": "value1"}:
  12. print('{"key1": "value1"}')
  13. {"key1"}:
  14. print('{"key1"}')
  15. _:
  16. print("wildcard")
  17. func bar(x):
  18. match x:
  19. {0}:
  20. print("0")
  21. {1}:
  22. print("1")
  23. {2}:
  24. print("2")
  25. _:
  26. print("wildcard")
  27. func test():
  28. foo({"key1": "value1", "key2": "value2"})
  29. foo({"key1": "value1", "key2": ""})
  30. foo({"key1": "", "key2": "value2"})
  31. foo({"key1": "", "key2": ""})
  32. foo({"key1": "value1"})
  33. foo({"key1": ""})
  34. foo({"key1": "value1", "key2": "value2", "key3": "value3"})
  35. foo({"key1": "value1", "key3": ""})
  36. foo({"key2": "value2"})
  37. foo({"key3": ""})
  38. bar({0: "0"})
  39. bar({1: "1"})
  40. bar({2: "2"})
  41. bar({3: "3"})