.. Generated automatically by doc/tools/makerst.py in Godot's source tree. .. DO NOT EDIT THIS FILE, but the doc/base/classes.xml source instead. .. _class_GDFunctionState: GDFunctionState =============== **Inherits:** :ref:`Reference` **<** :ref:`Object` **Category:** Core Brief Description ----------------- State of a function call after yielding. Member Functions ---------------- +--------------------------------+------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_valid` **(** :ref:`bool` extended_check=false **)** const | +--------------------------------+------------------------------------------------------------------------------------------------------------------+ | :ref:`Variant` | :ref:`resume` **(** :ref:`Variant` arg=NULL **)** | +--------------------------------+------------------------------------------------------------------------------------------------------------------+ 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. Member Function Description --------------------------- .. _class_GDFunctionState_is_valid: - :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:`GDFunctionState.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. .. _class_GDFunctionState_resume: - :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.