Outdated documentation

This documentation page refers to Godot 4.3, and may be outdated or incorrect.
Additionally, this engine version is no longer supported.

Check this page in the stable branch for the latest additions and corrections.

GD0201: The name of the delegate must end with 'EventHandler'

Rule ID

GD0201

Category

Usage

Fix is breaking or non-breaking

Breaking

Enabled by default

Yes

Cause

A delegate annotated with the [Signal] attribute has a name that doesn't end with 'EventHandler'.

Rule description

Godot source generators will generate C# events using the name of the delegate with the 'EventHandler' suffix removed. Adding the 'EventHandler' suffix to the name of delegates used in events is a .NET naming convention.

Using a suffix for the delegate allows the generated event to use the name without the suffix avoiding a naming conflict.

// This delegate is invalid since the name doesn't end with 'EventHandler'.
[Signal]
public void InvalidSignal();

// This delegate is valid since the name ends with 'EventHandler'.
[Signal]
public void ValidSignalEventHandler();

Take a look at the C# signals documentation for more information about how to declare and use signals.

How to fix violations

To fix a violation of this rule, add 'EventHandler' to the end of the delegate name.

When to suppress warnings

Do not suppress a warning from this rule. Signal delegates without the suffix will be ignored by the source generator, so the signal won't be registered.


User-contributed notes

Please read the User-contributed notes policy before submitting a comment.