Parcourir la source

Merge pull request #5326 from zacryol/inferred-typing-cast

Show example of casting get_node() for static typing in style guide
Max Hilbrunner il y a 3 ans
Parent
commit
7b758e4739

+ 12 - 0
tutorials/scripting/gdscript/gdscript_styleguide.rst

@@ -889,6 +889,18 @@ should set the type explicitly.
 
    onready var health_bar: ProgressBar = get_node("UI/LifeBar")
 
+Alternatively, you can use the ``as`` keyword to cast the return type, and
+that type will be used to infer the type of the var.
+
+.. rst-class:: code-example-good
+
+::
+
+   onready var health_bar := get_node("UI/LifeBar") as ProgressBar
+   # health_bar will be typed as ProgressBar
+
+This option is also considered more :ref:`type-safe<doc_gdscript_static_typing_safe_lines>` than the first.
+
 **Bad**:
 
 .. rst-class:: code-example-bad

+ 2 - 0
tutorials/scripting/gdscript/static_typing.rst

@@ -178,6 +178,8 @@ get full autocompletion on the player variable thanks to that cast.
 
     If you try to cast with a built-in type and it fails, Godot will throw an error.
 
+.. _doc_gdscript_static_typing_safe_lines:
+
 Safe lines
 ^^^^^^^^^^