summaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2024-04-08 11:17:38 +0200
committerRémi Verschelde <rverschelde@gmail.com>2024-04-08 11:17:38 +0200
commita27d9639f26839f3403e78d9e15e8e63621b14a6 (patch)
tree551b9371967af64ea33fb5373a71766bc521f1bb /doc
parentea961d3981b1dbea6aad1055dc2da648c64aeba3 (diff)
parentb33c3fa0920ef7f2394050eab8ed72c3576ee416 (diff)
downloadredot-engine-a27d9639f26839f3403e78d9e15e8e63621b14a6.tar.gz
Merge pull request #79075 from dalexeev/doc-typed-arrays
Update typed arrays documentation
Diffstat (limited to 'doc')
-rw-r--r--doc/classes/Array.xml31
1 files changed, 27 insertions, 4 deletions
diff --git a/doc/classes/Array.xml b/doc/classes/Array.xml
index c57256ba85..a72ac60536 100644
--- a/doc/classes/Array.xml
+++ b/doc/classes/Array.xml
@@ -58,7 +58,30 @@
<param index="2" name="class_name" type="StringName" />
<param index="3" name="script" type="Variant" />
<description>
- Creates a typed array from the [param base] array.
+ Creates a typed array from the [param base] array. All arguments are required.
+ - [param type] is the built-in type as a [enum Variant.Type] constant, for example [constant TYPE_INT].
+ - [param class_name] is the [b]native[/b] class name, for example [Node]. If [param type] is not [constant TYPE_OBJECT], must be an empty string.
+ - [param script] is the associated script. Must be a [Script] instance or [code]null[/code].
+ Examples:
+ [codeblock]
+ class_name MyNode
+ extends Node
+
+ class MyClass:
+ pass
+
+ func _ready():
+ var a = Array([], TYPE_INT, &amp;"", null) # Array[int]
+ var b = Array([], TYPE_OBJECT, &amp;"Node", null) # Array[Node]
+ var c = Array([], TYPE_OBJECT, &amp;"Node", MyNode) # Array[MyNode]
+ var d = Array([], TYPE_OBJECT, &amp;"RefCounted", MyClass) # Array[MyClass]
+ [/codeblock]
+ [b]Note:[/b] This constructor can be useful if you want to create a typed array on the fly, but you are not required to use it. In GDScript you can use a temporary variable with the static type you need and then pass it:
+ [codeblock]
+ func _ready():
+ var a: Array[int] = []
+ some_func(a)
+ [/codeblock]
</description>
</constructor>
<constructor name="Array">
@@ -324,19 +347,19 @@
<method name="get_typed_builtin" qualifiers="const">
<return type="int" />
<description>
- Returns the [enum Variant.Type] constant for a typed array. If the [Array] is not typed, returns [constant TYPE_NIL].
+ Returns the built-in type of the typed array as a [enum Variant.Type] constant. If the array is not typed, returns [constant TYPE_NIL].
</description>
</method>
<method name="get_typed_class_name" qualifiers="const">
<return type="StringName" />
<description>
- Returns a class name of a typed [Array] of type [constant TYPE_OBJECT].
+ Returns the [b]native[/b] class name of the typed array if the built-in type is [constant TYPE_OBJECT]. Otherwise, this method returns an empty string.
</description>
</method>
<method name="get_typed_script" qualifiers="const">
<return type="Variant" />
<description>
- Returns the script associated with a typed array tied to a class name.
+ Returns the script associated with the typed array. This method returns a [Script] instance or [code]null[/code].
</description>
</method>
<method name="has" qualifiers="const" keywords="includes, contains">