ClassDB

继承: Object

类信息存储库。

描述

提供对为每个可用类存储的元数据的访问。

方法

bool

can_instantiate(class: StringName) const

Variant

class_call_static(class: StringName, method: StringName, ...) vararg

bool

class_exists(class: StringName) const

APIType

class_get_api_type(class: StringName) const

PackedStringArray

class_get_enum_constants(class: StringName, enum: StringName, no_inheritance: bool = false) const

PackedStringArray

class_get_enum_list(class: StringName, no_inheritance: bool = false) const

int

class_get_integer_constant(class: StringName, name: StringName) const

StringName

class_get_integer_constant_enum(class: StringName, name: StringName, no_inheritance: bool = false) const

PackedStringArray

class_get_integer_constant_list(class: StringName, no_inheritance: bool = false) const

int

class_get_method_argument_count(class: StringName, method: StringName, no_inheritance: bool = false) const

Array[Dictionary]

class_get_method_list(class: StringName, no_inheritance: bool = false) const

Variant

class_get_property(object: Object, property: StringName) const

Variant

class_get_property_default_value(class: StringName, property: StringName) const

StringName

class_get_property_getter(class: StringName, property: StringName)

Array[Dictionary]

class_get_property_list(class: StringName, no_inheritance: bool = false) const

StringName

class_get_property_setter(class: StringName, property: StringName)

Dictionary

class_get_signal(class: StringName, signal: StringName) const

Array[Dictionary]

class_get_signal_list(class: StringName, no_inheritance: bool = false) const

bool

class_has_enum(class: StringName, name: StringName, no_inheritance: bool = false) const

bool

class_has_integer_constant(class: StringName, name: StringName) const

bool

class_has_method(class: StringName, method: StringName, no_inheritance: bool = false) const

bool

class_has_signal(class: StringName, signal: StringName) const

Error

class_set_property(object: Object, property: StringName, value: Variant) const

PackedStringArray

get_class_list() const

PackedStringArray

get_inheriters_from_class(class: StringName) const

StringName

get_parent_class(class: StringName) const

Variant

instantiate(class: StringName) const

bool

is_class_enabled(class: StringName) const

bool

is_class_enum_bitfield(class: StringName, enum: StringName, no_inheritance: bool = false) const

bool

is_parent_class(class: StringName, inherits: StringName) const


枚举

enum APIType: 🔗

APIType API_CORE = 0

本机核心类类型。

APIType API_EDITOR = 1

本机编辑器类类型。

APIType API_EXTENSION = 2

S3扩展类类型。

APIType API_EDITOR_EXTENSION = 3

S3扩展编辑器类类型。

APIType API_NONE = 4

未知的类类型。


方法说明

bool can_instantiate(class: StringName) const 🔗

如果可以从指定的class实例化对象,则返回true,否则返回false


Variant class_call_static(class: StringName, method: StringName, ...) vararg 🔗

调用类的静态方法。


bool class_exists(class: StringName) const 🔗

返回指定的class是否可用。


APIType class_get_api_type(class: StringName) const 🔗

返回class的API类型。请参阅APIType


PackedStringArray class_get_enum_constants(class: StringName, enum: StringName, no_inheritance: bool = false) const 🔗

返回一个数组,其中包含class或其祖先的enum中的所有键。


PackedStringArray class_get_enum_list(class: StringName, no_inheritance: bool = false) const 🔗

返回包含class或其祖先的所有枚举的数组。


int class_get_integer_constant(class: StringName, name: StringName) const 🔗

返回class或其祖先的整数常量name的值。找不到常量时始终返回0。


StringName class_get_integer_constant_enum(class: StringName, name: StringName, no_inheritance: bool = false) const 🔗

返回枚举class或其祖先所属的整数常量name


PackedStringArray class_get_integer_constant_list(class: StringName, no_inheritance: bool = false) const 🔗

返回一个数组,其中包含class或其祖先的所有整数常量的名称。


int class_get_method_argument_count(class: StringName, method: StringName, no_inheritance: bool = false) const 🔗

如果no_inheritancefalse,则返回class的方法method或其祖先的参数数。


Array[Dictionary] class_get_method_list(class: StringName, no_inheritance: bool = false) const 🔗

如果no_inheritancefalse,则返回包含class或其祖先的所有方法的数组。数组的每个元素都是一个Dictionary,具有以下键:argsdefault_args标志id名称返回:(class_name,提示,hint_string,名称,类型,用法)

注意:在导出的版本中,调试信息不可用,因此返回的字典将仅包含方法名称。


Variant class_get_property(object: Object, property: StringName) const 🔗

返回object或其祖先的property的值。


Variant class_get_property_default_value(class: StringName, property: StringName) const 🔗

返回class或其祖先类的property的默认值。


StringName class_get_property_getter(class: StringName, property: StringName) 🔗

返回classproperty的getter方法名称。


Array[Dictionary] class_get_property_list(class: StringName, no_inheritance: bool = false) const 🔗

如果no_inheritancefalse,则返回具有class或其祖先的所有属性的数组。


StringName class_get_property_setter(class: StringName, property: StringName) 🔗

返回classproperty的setter方法名称。


Dictionary class_get_signal(class: StringName, signal: StringName) const 🔗

返回class或其祖先的signal数据。返回值是具有以下键的Dictionaryargsdefault_args标志id名称返回:(class_name,提示,hint_string,名称,类型,用法)


Array[Dictionary] class_get_signal_list(class: StringName, no_inheritance: bool = false) const 🔗

如果no_inheritancefalse,则返回包含class或其祖先的所有信号的数组。数组的每个元素都是class_get_signal()中描述的Dictionary


bool class_has_enum(class: StringName, name: StringName, no_inheritance: bool = false) const 🔗

返回class或其祖先是否具有名为name的枚举。


bool class_has_integer_constant(class: StringName, name: StringName) const 🔗

返回class或其祖先是否具有名为name的整数常量。


bool class_has_method(class: StringName, method: StringName, no_inheritance: bool = false) const 🔗

返回class(如果no_inheritancefalse,则返回其祖先)是否具有名为method的方法。


bool class_has_signal(class: StringName, signal: StringName) const 🔗

返回class或其祖先是否具有称为signal的信号。


Error class_set_property(object: Object, property: StringName, value: Variant) const 🔗

objectproperty值设置为value


PackedStringArray get_class_list() const 🔗

返回所有可用类的名称。


PackedStringArray get_inheriters_from_class(class: StringName) const 🔗

返回直接或间接继承自class的所有类的名称。


StringName get_parent_class(class: StringName) const 🔗

返回class的父类。


Variant instantiate(class: StringName) const 🔗

创建class的实例。


bool is_class_enabled(class: StringName) const 🔗

返回是否启用此class


bool is_class_enum_bitfield(class: StringName, enum: StringName, no_inheritance: bool = false) const 🔗

返回class(如果no_inheritancefalse,则返回其祖先类)是否具有名为enum的位域枚举。


bool is_parent_class(class: StringName, inherits: StringName) const 🔗

返回inherits是否是class的祖先。