You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-24 15:26:15 +00:00
Merge pull request #68747 from rune-scape/rune-stringname-unification
GDScript: Unify StringName and String
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
# https://github.com/godotengine/godot/issues/63965
|
||||
|
||||
func test():
|
||||
var array_str: Array = []
|
||||
array_str.push_back("godot")
|
||||
print("StringName in Array: ", &"godot" in array_str)
|
||||
|
||||
var array_sname: Array = []
|
||||
array_sname.push_back(&"godot")
|
||||
print("String in Array: ", "godot" in array_sname)
|
||||
|
||||
# Not equal because the values are different types.
|
||||
print("Arrays not equal: ", array_str != array_sname)
|
||||
|
||||
var string_array: Array[String] = []
|
||||
var stringname_array: Array[StringName] = []
|
||||
|
||||
assert(!string_array.push_back(&"abc"))
|
||||
print("Array[String] insert converted: ", typeof(string_array[0]) == TYPE_STRING)
|
||||
|
||||
assert(!stringname_array.push_back("abc"))
|
||||
print("Array[StringName] insert converted: ", typeof(stringname_array[0]) == TYPE_STRING_NAME)
|
||||
|
||||
print("StringName in Array[String]: ", &"abc" in string_array)
|
||||
print("String in Array[StringName]: ", "abc" in stringname_array)
|
||||
|
||||
var packed_string_array: PackedStringArray = []
|
||||
assert(!packed_string_array.push_back("abc"))
|
||||
print("StringName in PackedStringArray: ", &"abc" in packed_string_array)
|
||||
|
||||
assert(!string_array.push_back("abc"))
|
||||
print("StringName finds String in Array: ", string_array.find(&"abc"))
|
||||
|
||||
assert(!stringname_array.push_back(&"abc"))
|
||||
print("String finds StringName in Array: ", stringname_array.find("abc"))
|
||||
@@ -0,0 +1,11 @@
|
||||
GDTEST_OK
|
||||
StringName in Array: true
|
||||
String in Array: true
|
||||
Arrays not equal: true
|
||||
Array[String] insert converted: true
|
||||
Array[StringName] insert converted: true
|
||||
StringName in Array[String]: true
|
||||
String in Array[StringName]: true
|
||||
StringName in PackedStringArray: true
|
||||
StringName finds String in Array: 0
|
||||
String finds StringName in Array: 0
|
||||
@@ -0,0 +1,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: ", typeof(stringname_dict.keys()[0]) == TYPE_STRING)
|
||||
|
||||
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 converted to String.
|
||||
print("String Dictionary == StringName Dictionary: ", string_dict == stringname_dict)
|
||||
@@ -0,0 +1,6 @@
|
||||
GDTEST_OK
|
||||
String key is TYPE_STRING: true
|
||||
StringName key is TYPE_STRING: true
|
||||
StringName gets String: 42
|
||||
String gets StringName: 24
|
||||
String Dictionary == StringName Dictionary: true
|
||||
@@ -0,0 +1,14 @@
|
||||
# https://github.com/godotengine/godot/issues/60145
|
||||
|
||||
func test():
|
||||
match "abc":
|
||||
&"abc":
|
||||
print("String matched StringName")
|
||||
_:
|
||||
print("no match")
|
||||
|
||||
match &"abc":
|
||||
"abc":
|
||||
print("StringName matched String")
|
||||
_:
|
||||
print("no match")
|
||||
@@ -0,0 +1,3 @@
|
||||
GDTEST_OK
|
||||
String matched StringName
|
||||
StringName matched String
|
||||
@@ -0,0 +1,11 @@
|
||||
# https://github.com/godotengine/godot/issues/64171
|
||||
|
||||
func test():
|
||||
print("Compare ==: ", "abc" == &"abc")
|
||||
print("Compare ==: ", &"abc" == "abc")
|
||||
print("Compare !=: ", "abc" != &"abc")
|
||||
print("Compare !=: ", &"abc" != "abc")
|
||||
|
||||
print("Concat: ", "abc" + &"def")
|
||||
print("Concat: ", &"abc" + "def")
|
||||
print("Concat: ", &"abc" + &"def")
|
||||
@@ -0,0 +1,8 @@
|
||||
GDTEST_OK
|
||||
Compare ==: true
|
||||
Compare ==: true
|
||||
Compare !=: false
|
||||
Compare !=: false
|
||||
Concat: abcdef
|
||||
Concat: abcdef
|
||||
Concat: abcdef
|
||||
Reference in New Issue
Block a user