File: dictionary_string_stringname_equivalent.gd

package info (click to toggle)
godot 4.4.1%2Bds-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 229,428 kB
  • sloc: cpp: 1,657,504; ansic: 186,969; xml: 153,923; cs: 36,104; java: 29,122; python: 15,230; javascript: 6,211; yacc: 4,115; pascal: 818; objc: 459; sh: 459; makefile: 109
file content (17 lines) | stat: -rw-r--r-- 686 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# https://github.com/godotengine/godot/issues/62957

func test():
	var string_dict = {}
	string_dict["abc"] = 42
	var stringname_dict = {}
	stringname_dict[&"abc"] = 24

	print("String key is TYPE_STRING: ", typeof(string_dict.keys()[0]) == TYPE_STRING)
	print("StringName key is TYPE_STRING_NAME: ", typeof(stringname_dict.keys()[0]) == TYPE_STRING_NAME)

	print("StringName gets String: ", string_dict.get(&"abc"))
	print("String gets StringName: ", stringname_dict.get("abc"))

	stringname_dict[&"abc"] = 42
	# They compare equal because StringName keys are considered equivalent to String keys.
	print("String Dictionary == StringName Dictionary: ", string_dict == stringname_dict)