Class reference
ClassDB
Inherits Object
A class information repository.
Description
Provides access to metadata stored for every available engine class. Note: Script-defined classes with class_name are not part of ClassDB, so they will not return reflection data such as a method or property list. However, GDExtension-defined classes are part of ClassDB, so they will return reflection data.
Methods
bool can_instantiate(StringName class) const
bool can_instantiate(StringName class) constReturns true if objects can be instantiated from the specified class, otherwise returns false.
Variant class_call_static(StringName class, StringName method) vararg
Variant class_call_static(StringName class, StringName method) varargCalls a static method on a class.
bool class_exists(StringName class) const
bool class_exists(StringName class) constReturns whether the specified class is available or not.
int class_get_api_type(StringName class) const
int class_get_api_type(StringName class) constReturns the API type of the specified class.
PackedStringArray class_get_enum_constants(StringName class, StringName enum, bool no_inheritance = false) const
PackedStringArray class_get_enum_constants(StringName class, StringName enum, bool no_inheritance = false) constReturns an array with all the keys in enum of class or its ancestry.
PackedStringArray class_get_enum_list(StringName class, bool no_inheritance = false) const
PackedStringArray class_get_enum_list(StringName class, bool no_inheritance = false) constReturns an array with all the enums of class or its ancestry.
int class_get_integer_constant(StringName class, StringName name) const
int class_get_integer_constant(StringName class, StringName name) constReturns the value of the integer constant name of class or its ancestry. Always returns 0 when the constant could not be found.
StringName class_get_integer_constant_enum(StringName class, StringName name, bool no_inheritance = false) const
StringName class_get_integer_constant_enum(StringName class, StringName name, bool no_inheritance = false) constReturns which enum the integer constant name of class or its ancestry belongs to.
PackedStringArray class_get_integer_constant_list(StringName class, bool no_inheritance = false) const
PackedStringArray class_get_integer_constant_list(StringName class, bool no_inheritance = false) constReturns an array with the names all the integer constants of class or its ancestry.
int class_get_method_argument_count(StringName class, StringName method, bool no_inheritance = false) const
int class_get_method_argument_count(StringName class, StringName method, bool no_inheritance = false) constReturns the number of arguments of the method method of class or its ancestry if no_inheritance is false.
Dictionary[] class_get_method_list(StringName class, bool no_inheritance = false) const
StringName class, bool no_inheritance = false) constReturns an array with all the methods of class or its ancestry if no_inheritance is false. Every element of the array is a Dictionary with the following keys: args, default_args, flags, id, name, return: (class_name, hint, hint_string, name, type, usage). Note: In exported release builds the debug info is not available, so the returned dictionaries will contain only method names.
Variant class_get_property(Object object, StringName property) const
Variant class_get_property(Object object, StringName property) constReturns the value of property of object or its ancestry.
Variant class_get_property_default_value(StringName class, StringName property) const
Variant class_get_property_default_value(StringName class, StringName property) constReturns the default value of property of class or its ancestor classes.
StringName class_get_property_getter(StringName class, StringName property)
StringName class_get_property_getter(StringName class, StringName property)Returns the getter method name of property of class.
Dictionary[] class_get_property_list(StringName class, bool no_inheritance = false) const
StringName class, bool no_inheritance = false) constReturns an array with all the properties of class or its ancestry if no_inheritance is false.
StringName class_get_property_setter(StringName class, StringName property)
StringName class_get_property_setter(StringName class, StringName property)Returns the setter method name of property of class.
Dictionary class_get_signal(StringName class, StringName signal) const
Dictionary class_get_signal(StringName class, StringName signal) constReturns the signal data of class or its ancestry. The returned value is a Dictionary with the following keys: args, default_args, flags, id, name, return: (class_name, hint, hint_string, name, type, usage).
Dictionary[] class_get_signal_list(StringName class, bool no_inheritance = false) const
StringName class, bool no_inheritance = false) constReturns an array with all the signals of class or its ancestry if no_inheritance is false. Every element of the array is a Dictionary as described in class_get_signal().
bool class_has_enum(StringName class, StringName name, bool no_inheritance = false) const
bool class_has_enum(StringName class, StringName name, bool no_inheritance = false) constReturns whether class or its ancestry has an enum called name or not.
bool class_has_integer_constant(StringName class, StringName name) const
bool class_has_integer_constant(StringName class, StringName name) constReturns whether class or its ancestry has an integer constant called name or not.
bool class_has_method(StringName class, StringName method, bool no_inheritance = false) const
bool class_has_method(StringName class, StringName method, bool no_inheritance = false) constReturns whether class (or its ancestry if no_inheritance is false) has a method called method or not.
bool class_has_signal(StringName class, StringName signal) const
bool class_has_signal(StringName class, StringName signal) constReturns whether class or its ancestry has a signal called signal or not.
int class_override_api_type(StringName class, int api) const
int class_override_api_type(StringName class, int api) constOverrides the API type of class to api. See ClassDB.APIType. Note: This should only be used with a thorough understanding of its implications.
int class_set_property(Object object, StringName property, Variant value) const
int class_set_property(Object object, StringName property, Variant value) constSets property value of object to value.
PackedStringArray get_class_list() const
PackedStringArray get_class_list() constReturns the names of all engine classes available. Note: Script-defined classes with class_name are not included in this list. Use ProjectSettings.get_global_class_list() to get a list of script-defined classes instead.
int get_current_api() const
int get_current_api() constReturns the currently active API type. See ClassDB.APIType.
PackedStringArray get_inheriters_from_class(StringName class) const
PackedStringArray get_inheriters_from_class(StringName class) constReturns the names of all engine classes that directly or indirectly inherit from class.
StringName get_parent_class(StringName class) const
StringName get_parent_class(StringName class) constReturns the parent class of class.
Variant instantiate(StringName class) const
Variant instantiate(StringName class) constCreates an instance of class.
bool is_class_enabled(StringName class) const
bool is_class_enabled(StringName class) constReturns whether this class is enabled or not.
bool is_class_enum_bitfield(StringName class, StringName enum, bool no_inheritance = false) const
bool is_class_enum_bitfield(StringName class, StringName enum, bool no_inheritance = false) constReturns whether class (or its ancestor classes if no_inheritance is false) has an enum called enum that is a bitfield.
bool is_parent_class(StringName class, StringName inherits) const
bool is_parent_class(StringName class, StringName inherits) constReturns whether inherits is an ancestor of class or not.
void set_current_api(int api) const
int api) constSets the globally active API type to api. See ClassDB.APIType. Note: This should only be used with a thorough understanding of its implications.
Constants
API_CORE = 0
Native Core class type.
API_EDITOR = 1
Native Editor class type.
API_EXTENSION = 2
GDExtension class type.
API_EDITOR_EXTENSION = 3
GDExtension Editor class type.
API_NONE = 4
Unknown class type.