FuncRef
Reference to a function in an object.
Description
In GDScript, functions are not first-class objects. This means it is impossible to store them directly as variables, return them from another function, or pass them as arguments.
However, by creating a FuncRef
using the @GDScript.funcref function, a reference to a function in a given object can be created, passed around and called.
Methods
Variant | call_func ( ... ) vararg |
Variant | call_funcv ( Array arg_array ) |
bool | is_valid ( ) const |
void | set_function ( String name ) |
void | set_instance ( Object instance ) |
Method Descriptions
Variant call_func ( ... ) vararg
Calls the referenced function previously set by set_function or @GDScript.funcref.
Variant call_funcv ( Array arg_array )
Calls the referenced function previously set by set_function or @GDScript.funcref. Contrarily to call_func, this method does not support a variable number of arguments but expects all parameters to be passed via a single Array.
bool is_valid ( ) const
Returns whether the object still exists and has the function assigned.
void set_function ( String name )
The name of the referenced function to call on the object, without parentheses or any parameters.
void set_instance ( Object instance )
The object containing the referenced function. This object must be of a type actually inheriting from Object, not a built-in type such as int, Vector2 or Dictionary.
© 2014–2020 Juan Linietsky, Ariel Manzur, Godot Engine contributors
Licensed under the MIT License.
https://docs.godotengine.org/en/3.2/classes/class_funcref.html