Defines a diagnostic with a strongly-typed set of parameters that are typically specified by using a named tuple for generic parameter
T
. For diagnostics that accept a single parameter, T
must be set to the type of this parameter.
To accept several parameters, use a tuple.
For a diagnostic that does not accept parameters, use DiagnosticDefinition.
Implements
Namespace: Metalama.Framework.Diagnostics
Assembly: Metalama.Framework.dll
Syntax
public class DiagnosticDefinition<T> : IDiagnosticDefinition where T : notnull
Type Parameters
Name | Description |
---|---|
T | Type of arguments: a single type if there is a single argument, or a named tuple type for several arguments
Alternatively, you can also use |
Constructors
Name | Description |
---|---|
DiagnosticDefinition(string, Severity, string, string?, string?) | Initializes a new instance of the DiagnosticDefinition<T> class. |
Properties
Name | Description |
---|---|
Category | Gets the category of the diagnostic (e.g. your product name). |
Id | Gets an unique identifier for the diagnostic (e.g. |
MessageFormat | Gets the formatting string of the diagnostic message. |
Severity | Gets the severity of the diagnostic. |
Title | Gets a short title describing the diagnostic. This title is typically described in the solution explorer of the IDE and does not contain formatting string parameters. |
Methods
Name | Description |
---|---|
ToString() | |
WithArguments(T) | Creates an instance of the current diagnostic definition with specific arguments. |