1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- .. 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<class_reference>` **<** :ref:`Object<class_object>`
- **Category:** Core
- Brief Description
- -----------------
- State of a function call after yielding.
- Member Functions
- ----------------
- +--------------------------------+------------------------------------------------------------------------------------------------------------------+
- | :ref:`bool<class_bool>` | :ref:`is_valid<class_GDFunctionState_is_valid>` **(** :ref:`bool<class_bool>` extended_check=false **)** const |
- +--------------------------------+------------------------------------------------------------------------------------------------------------------+
- | :ref:`Variant<class_variant>` | :ref:`resume<class_GDFunctionState_resume>` **(** :ref:`Variant<class_variant>` arg=NULL **)** |
- +--------------------------------+------------------------------------------------------------------------------------------------------------------+
- Description
- -----------
- Calling :ref:`@GDScript.yield<class_@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<class_GDFunctionState_resume>` on this state object.
- Member Function Description
- ---------------------------
- .. _class_GDFunctionState_is_valid:
- - :ref:`bool<class_bool>` **is_valid** **(** :ref:`bool<class_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<class_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<class_variant>` **resume** **(** :ref:`Variant<class_variant>` arg=NULL **)**
- Resume execution of the yielded function call.
- If handed an argument, return the argument from the :ref:`@GDScript.yield<class_@GDScript_yield>` call in the yielded function call. You can pass e.g. an :ref:`Array<class_array>` to hand multiple arguments.
- This function returns what the resumed function call returns, possibly another function state if yielded again.
|