arrays_dictionaries_nested_const.gd 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. # https://github.com/godotengine/godot/issues/50285
  2. @warning_ignore("unused_local_constant")
  3. func test():
  4. const CONST_INNER_DICTIONARY = { "key": true }
  5. const CONST_NESTED_DICTIONARY_OLD_WORKAROUND = {
  6. "key1": "value1",
  7. "key2": CONST_INNER_DICTIONARY
  8. }
  9. # All of these should be valid
  10. const CONST_NESTED_DICTIONARY = {
  11. "key1": "value1",
  12. "key2": { "key": true }
  13. }
  14. const CONST_DICTIONARY_WITH_ARRAY = {
  15. "key1": [1,2,3,4]
  16. }
  17. const CONST_NESTED_ARRAY = [[],[2],[1,2,3]]
  18. const CONST_ARRAY_WITH_DICT = [{"key1": 3}, {"key2": 5}]
  19. const THREE_DIMENSIONAL_ARRAY = [[[],[],[]],[[],[],[]],[[],[],[]]]
  20. const MANY_NESTED_DICT = {
  21. "key1": {
  22. "key11": {
  23. "key111": {},
  24. "key112": {},
  25. },
  26. "key12": {
  27. "key121": {},
  28. "key122": {},
  29. },
  30. },
  31. "key2": {
  32. "key21": {
  33. "key211": {},
  34. "key212": {},
  35. },
  36. "key22": {
  37. "key221": {},
  38. "key222": {},
  39. },
  40. }
  41. }
  42. const CONST_ARRAY_ACCESS = [1,2,3][0]
  43. const CONST_DICT_ACCESS = {"key1": 5}["key1"]
  44. const CONST_ARRAY_NESTED_ACCESS = [[1,2,3],[4,5,6],[8,9,10]][0][1]
  45. const CONST_DICT_NESTED_ACCESS = {"key1": {"key2": 1}}["key1"]["key2"]
  46. print(CONST_ARRAY_ACCESS)
  47. print(CONST_DICT_ACCESS)
  48. print(CONST_ARRAY_NESTED_ACCESS)
  49. print(CONST_DICT_NESTED_ACCESS)