Attention: Here be dragons (unstable version)

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Redot.

GD0105: The exported property is an indexer

Rule ID

GD0105

Category

Usage

Fix is breaking or non-breaking

Non-breaking

Enabled by default

Yes

Cause

An indexer is annotated with the [Export] attribute. Indexers can't be exported.

Rule description

Redot doesn't allow exporting indexer properties.

private int[] _backingField;

// Indexers can't be exported.
[Export]
public int this[int index]
{
    get => _backingField[index];
    set => _backingField[index] = value;
}

How to fix violations

To fix a violation of this rule, remove the [Export] attribute.

When to suppress warnings

Do not suppress a warning from this rule. Indexers can't be exported so they will be ignored by Redot, resulting in runtime errors.