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.

EngineDebugger

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

Виставки внутрішнього дебугера.

Опис

EngineDebugger ручить зв'язок між редактором та запусковою грою. Активно працює в біговій грі. Повідомлень можна надсилати/відкласти через неї. Він також керує профілями.

Методи

void

clear_breakpoints()

void

debug(can_continue: bool = true, is_error_breakpoint: bool = false)

int

get_depth() const

int

get_lines_left() const

bool

has_capture(name: StringName)

bool

has_profiler(name: StringName)

void

insert_breakpoint(line: int, source: StringName)

bool

is_active()

bool

is_breakpoint(line: int, source: StringName) const

bool

is_profiling(name: StringName)

bool

is_skipping_breakpoints() const

void

line_poll()

void

profiler_add_frame_data(name: StringName, data: Array)

void

profiler_enable(name: StringName, enable: bool, arguments: Array = [])

void

register_message_capture(name: StringName, callable: Callable)

void

register_profiler(name: StringName, profiler: EngineProfiler)

void

remove_breakpoint(line: int, source: StringName)

void

script_debug(language: ScriptLanguage, can_continue: bool = true, is_error_breakpoint: bool = false)

void

send_message(message: String, data: Array)

void

set_depth(depth: int)

void

set_lines_left(lines: int)

void

unregister_message_capture(name: StringName)

void

unregister_profiler(name: StringName)


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

void clear_breakpoints() 🔗

Очищає всі точки перерви.


void debug(can_continue: bool = true, is_error_breakpoint: bool = false) 🔗

Починає розбійну поломку в шаблонному виконанні, додатково вказуючи, чи може програма продовжитися на підставі can_continue і чи пов’язана з поломкою.


int get_depth() const 🔗

Експериментальний: Цей метод може бути змінений або усунутий у наступних версіях.

Повертаємо точну глибинну глибину.


int get_lines_left() const 🔗

Експериментальний: Цей метод може бути змінений або усунутий у наступних версіях.

Повертаємо кількість рядків, які залишаються.


bool has_capture(name: StringName) 🔗

Повертає true, якщо запис із вказаною назвою присутній, інакше false.


bool has_profiler(name: StringName) 🔗

Повертає true, якщо профайлер із вказаною назвою присутній, інакше false.


void insert_breakpoint(line: int, source: StringName) 🔗

Вставляє нову точку зупинки з заданими значеннями source та line.


bool is_active() 🔗

Повертає true, якщо налагоджувач активний, інакше false.


bool is_breakpoint(line: int, source: StringName) const 🔗

Повертає true, якщо дані source і line представляють існуючу точку зупину.


bool is_profiling(name: StringName) 🔗

Повертає true, якщо профайлер із вказаною назвою присутній і активний, інакше false.


bool is_skipping_breakpoints() const 🔗

Повертає true, якщо налагоджувач пропускає точки зупину, інакше false.


void line_poll() 🔗

Примусово запускає цикл обробки подій налагоджувача. Метою цього методу є просто обробка подій час від часу, коли скрипт може бути занадто зайнятим, щоб можна було виявити такі помилки, як нескінченні цикли.


void profiler_add_frame_data(name: StringName, data: Array) 🔗

Викликає функцію add профайлера з заданими параметрами name of param та data.


void profiler_enable(name: StringName, enable: bool, arguments: Array = []) 🔗

Викликає функцію toggle профайлера з заданими параметрами name та arguments. Вмикає/вимикає той самий профайлер залежно від аргументу enable.


void register_message_capture(name: StringName, callable: Callable) 🔗

Реєструє захоплення повідомлення з заданим name. Якщо name має значення "my_message", тоді повідомлення, що починаються з "my_message:", викликатимуться за допомогою даного виклику.

Викликається має приймати рядок повідомлення та масив даних як аргумент. Викликаний має повернути true, якщо повідомлення розпізнано.

Примітка: Викликаний отримає повідомлення з видаленим префіксом, на відміну від EditorDebuggerPlugin._capture(). Дивіться опис EditorDebuggerPlugin для прикладу.


void register_profiler(name: StringName, profiler: EngineProfiler) 🔗

Реєструє анкетувальник з вказаною name. Детальніше EngineProfiler.


void remove_breakpoint(line: int, source: StringName) 🔗

Видаляє точку зупинки з заданими параметрами source та line.


void script_debug(language: ScriptLanguage, can_continue: bool = true, is_error_breakpoint: bool = false) 🔗

Починає розбійну поломку в шаблонному виконанні, додатково вказуючи, чи може програма продовжитися на підставі can_continue і чи пов’язана з поломкою.


void send_message(message: String, data: Array) 🔗

Відправляє повідомлення з даним message і data масив.


void set_depth(depth: int) 🔗

Експериментальний: Цей метод може бути змінений або усунутий у наступних версіях.

Налаштовує точну глибину відведення.


void set_lines_left(lines: int) 🔗

Експериментальний: Цей метод може бути змінений або усунутий у наступних версіях.

Налаштовує поточні лінії знеболювання, які залишаються.


void unregister_message_capture(name: StringName) 🔗

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


void unregister_profiler(name: StringName) 🔗

Незареєстровані анкети з наданою name.