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.
Checking the stable version of the documentation...
GD0203: підпис делегата сигналу має повертатися недійсним
Ідентифікатор правила |
GD0203 |
Категорія |
Використання |
Виправлення ламається або не ламається |
Розрив – якщо тип повернення змінено Нерозривний – якщо видалено атрибут |
Увімкнено за замовчуванням |
Да |
Причина
Делегат, анотований атрибутом [Signal], має тип повернення, коли очікувався void.
Опис правила
Кожен сигнал має повертати пустоту. Для кожного сигналу може бути зареєстровано кілька зворотних викликів. Якби зворотні виклики сигналів могли щось повернути, було б неможливо визначити, яке з повернених значень використовувати.
// This signal delegate is invalid because it doesn't return void.
public int InvalidSignalEventHandler();
// This signal delegate is valid because it returns void.
public void ValidSignalEventHandler();
Перегляньте документацію C# signals, щоб дізнатися більше про те, як декларувати та використовувати сигнали.
Як усунути порушення
Щоб виправити порушення цього правила, змініть делегат на повернення void або видаліть атрибут [Signal] з делегату. Зауважте, що видалення атрибута означатиме, що сигнал не зареєстровано.
Порада
Якщо сигналу не потрібно взаємодіяти з Godot, розгляньте можливість безпосереднього використання C# події. Чисті події C# дозволяють використовувати будь-який тип C# для його параметрів.
Коли придушувати попередження
Не приховуйте попередження з цього правила. Делегати сигналу, які повертають щось, призведуть до неочікуваних помилок виконання.