:github_url: hide .. DO NOT EDIT THIS FILE!!! .. Generated automatically from Godot engine sources. .. Generator: https://github.com/godotengine/godot/tree/3.6/doc/tools/make_rst.py. .. XML source: https://github.com/godotengine/godot/tree/3.6/modules/gdscript/doc_classes/GDScriptFunctionState.xml. .. _class_GDScriptFunctionState: GDScriptFunctionState ===================== **Inherits:** :ref:`Reference` **<** :ref:`Object` State of a function call after yielding. .. rst-class:: classref-introduction-group Description ----------- Calling :ref:`@GDScript.yield` within a function will cause that function to yield and return its current state as an object of this type. The yielded function call can then be resumed later by calling :ref:`resume` on this state object. .. rst-class:: classref-reftable-group Methods ------- .. table:: :widths: auto +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_valid` **(** :ref:`bool` extended_check=false **)** |const| | +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Variant` | :ref:`resume` **(** :ref:`Variant` arg=null **)** | +-------------------------------+-------------------------------------------------------------------------------------------------------------------------------+ .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Signals ------- .. _class_GDScriptFunctionState_signal_completed: .. rst-class:: classref-signal **completed** **(** :ref:`Variant` result **)** .. container:: contribute There is currently no description for this signal. Please help us by :ref:`contributing one `! .. rst-class:: classref-section-separator ---- .. rst-class:: classref-descriptions-group Method Descriptions ------------------- .. _class_GDScriptFunctionState_method_is_valid: .. rst-class:: classref-method :ref:`bool` **is_valid** **(** :ref:`bool` extended_check=false **)** |const| Check whether the function call may be resumed. This is not the case if the function state was already resumed. If ``extended_check`` is enabled, it also checks if the associated script and object still exist. The extended check is done in debug mode as part of :ref:`resume`, but you can use this if you know you may be trying to resume without knowing for sure the object and/or script have survived up to that point. .. rst-class:: classref-item-separator ---- .. _class_GDScriptFunctionState_method_resume: .. rst-class:: classref-method :ref:`Variant` **resume** **(** :ref:`Variant` arg=null **)** Resume execution of the yielded function call. If handed an argument, return the argument from the :ref:`@GDScript.yield` call in the yielded function call. You can pass e.g. an :ref:`Array` to hand multiple arguments. This function returns what the resumed function call returns, possibly another function state if yielded again. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`