Skip to main content

Documentation Index

Fetch the complete documentation index at: https://ancplua.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

Source: Al0051UseGuardDefinedEnumAnalyzer.cs

Description

Use Guard.DefinedEnum() instead of verbose enum-validation and throw patterns.

Bad Code

public void SetStatus(Status status)
{
    if (!Enum.IsDefined(typeof(Status), status))
        throw new ArgumentOutOfRangeException(nameof(status));
}

Good Code

public void SetStatus(Status status)
{
    Guard.DefinedEnum(status);
}

Properties

  • Category: Roslyn Utilities
  • Severity: Warning
  • Enabled by default: True
  • Code fix available: True

Configuration

dotnet_diagnostic.AL0051.severity = warning