GD0402: Класс не должен быть универсальным
Идентификатор правила |
GD0402 |
Категория |
Использование |
Исправление может быть как ломающим, так и не ломающим |
Breaking (Прерывание) |
Включено по умолчанию |
Да |
Причина
Универсальный тип аннотируется атрибутом [GlobalClass].
Описание правила
Редактор Godot предполагает, что каждый global class может быть инстанцирован, но универсальные типы не могут быть инстанцированы, поскольку параметры типа не связаны.
// This type is a valid global class because it's not generic.
[GlobalClass]
class SomeType : Node { }
// This type is not a valid global class because it's generic.
[GlobalClass]
class SomeGenericType<T> { }
Как устранить нарушения
Чтобы устранить нарушение этого правила, измените тип, удалив параметры универсального типа, или удалите атрибут [GlobalClass].
Когда следует подавлять предупреждения
Не подавляйте предупреждение из этого правила. Добавление [GlobalClass] к универсальному типу — простая ошибка, и это предупреждение помогает пользователям понять, что это может привести к непредвиденным ошибкам.