Merge pull request #86704 from AThousandShips/len_fix

[GDScript] Add `StringName` support to `@GDScript.len`
This commit is contained in:
Rémi Verschelde 2024-01-02 15:09:09 +01:00
commit 06bb9f28e7
No known key found for this signature in database
GPG key ID: C3336907360768E1
2 changed files with 3 additions and 2 deletions

View file

@ -148,7 +148,7 @@
<return type="int" />
<param index="0" name="var" type="Variant" />
<description>
Returns the length of the given Variant [param var]. The length can be the character count of a [String], the element count of any array type or the size of a [Dictionary]. For every other Variant type, a run-time error is generated and execution is stopped.
Returns the length of the given Variant [param var]. The length can be the character count of a [String] or [StringName], the element count of any array type, or the size of a [Dictionary]. For every other Variant type, a run-time error is generated and execution is stopped.
[codeblock]
a = [1, 2, 3, 4]
len(a) # Returns 4

View file

@ -470,7 +470,8 @@ struct GDScriptUtilityFunctionsDefinitions {
static inline void len(Variant *r_ret, const Variant **p_args, int p_arg_count, Callable::CallError &r_error) {
VALIDATE_ARG_COUNT(1);
switch (p_args[0]->get_type()) {
case Variant::STRING: {
case Variant::STRING:
case Variant::STRING_NAME: {
String d = *p_args[0];
*r_ret = d.length();
} break;