Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

ClassDB

Успадковує: Object

Репозиторій інформації про клас.

Опис

Надає доступ до метаданих, що зберігаються для кожного доступного класу двигуна.

Примітка: Класи, визначені скриптом за допомогою class_name, не входять до складу ClassDB, тому вони не повертають дані рефлексії, такі як список методів або властивостей. Однак класи, визначені за допомогою GDExtension, входять до складу ClassDB, тому вони повертають дані рефлексії.

Методи

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

Тип класу Native Core.

APIType API_EDITOR = 1

Тип класу Native Editor.

APIType API_EXTENSION = 2

Тип класу GDExtension.

APIType API_EDITOR_EXTENSION = 3

Тип класу редактора GDExtension.

APIType API_NONE = 4

Невідомий тип класу.


Описи методів

bool can_instantiate(class: StringName) const 🔗

Повертає true, якщо об’єкти можуть бути створені з указаного class, інакше повертає 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 🔗

Повертає тип API зазначеного class.


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

Повертає масив з усіма ключами в enum class або його предків.


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

Повертає масив з усіма переліками class або його походження.


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

Повертає значення цілочисельної константи name класу class або його походження. Завжди повертає 0, якщо константу не вдалося знайти.


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

Повертає перелік, до якого належить ціла константа name class] або його походження.


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 🔗

Повертає кількість аргументів методу method class або його походження, якщо no_inheritance має значення false.


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

Повертає масив із усіма методами class або його предків, якщо no_inheritance має значення false. Кожен елемент масиву є Словником із такими ключами: args, default_args, flags, id , назва, повернення: (назва_класу, підказка, рядок_підказки, назва, тип, використання).

Примітка: В експортованих збірках випуску інформація про налагодження недоступна, тому повернуті словники міститимуть лише назви методів.


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

Повертає значення property object або його походження.


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

Повертає значення за замовчуванням property class або його класів-попередників.


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

Повертає назву методу отримання property class.


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

Повертає масив з усіма властивостями class або його предків, якщо no_inheritance має значення false.


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

Повертає назву методу налаштування property class.


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

Повертає дані signal class або його походження. Поверненим значенням є Dictionary із такими ключами: аргументи, замовчування_арги, прапорці, ідентифікатор, назва, повернення: (назва_класу, підказка, рядок_підказки, назва, тип, використання).


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

Повертає масив із усіма сигналами class або його походження, якщо no_inheritance має значення false. Кожен елемент масиву є Dictionary, як описано в class_get_signal().


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_inheritance false) метод під назвою method чи ні.


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

Повертає, чи має class або його походження сигнал під назвою signal чи ні.


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

Встановлює property значення object у value.


PackedStringArray get_class_list() const 🔗

Повертає імена всіх доступних класів двигуна.

Примітка: Класи, визначені скриптом за допомогою class_name, не включені до цього списку. Замість цього використовуйте ProjectSettings.get_global_class_list(), щоб отримати список класів, визначених скриптом.


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_inheritance false) перелік під назвою enum, який є бітовим полем.


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

Повертає, чи є inherits предком class чи ні.