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.

GD0111: 내보낸 도구 버튼은 표현식 본문 속성이어야 합니다.

규칙 ID

GD0111

카테고리

사용례

수정 내용이 중단되거나 중단되지 않음

굽기

기본적으로 활성화됨

es

원인

속성에 [ExportToolButton] 속성으로 주석이 추가되었지만 `expression-bodied property`_가 아닙니다.

설명

.NET 어셈블리를 다시 로드할 때 Godot는 값을 보존하기 위해 내보낸 멤버를 직렬화하려고 시도합니다. ``Callable``를 저장하는 지원 필드가 있는 필드 또는 속성으로 인해 어셈블리 언로드가 방지될 수 있습니다.

표현식 본문 속성에는 지원 필드가 없고 ``Callable``를 저장하지 않으므로 Godot는 이를 직렬화하려고 시도하지 않으며 이로 인해 .NET 어셈블리가 성공적으로 다시 로드됩니다.

[ExportToolButton("Click me!")]
public Callable ValidClickMeButton => Callable.From(ClickMe);

// Invalid because the Callable will be stored in the property's backing field.
[ExportToolButton("Click me!")]
public Callable InvalidClickMeButton { get; } = Callable.From(ClickMe);

독립적으로 존재해야 하는 것

이 규칙 위반을 수정하려면 속성 구현을 `expression-bodied property`_로 바꾸세요.

경고를 억제해야 하는 경우

이 규칙에서 경고를 표시하지 마세요. Callable 인스턴스로 인해 .NET 어셈블리가 언로드되지 않을 수 있습니다.