A sink that reports diagnostics and suppressions from aspect code.
Namespace: Metalama.Framework.Diagnostics
Assembly: Metalama.Framework.dll
Syntax
[CompileTime]
[InternalImplement]
public interface IDiagnosticSinkRemarks
This interface provides the low-level API for reporting diagnostics and suppressing diagnostics. Most aspect code should use ScopedDiagnosticSink instead, which provides a simpler API.
Diagnostics are defined as static fields in aspect classes using DiagnosticDefinition or DiagnosticDefinition<T>, then reported using the Report(IDiagnostic, IDiagnosticLocation?, IDiagnosticSource) method. Similarly, suppressions are defined using SuppressionDefinition and applied using the Suppress(ISuppression, IDeclaration, IDiagnosticSource) method.
Methods
| Name | Description |
|---|---|
| Report(IDiagnostic, IDiagnosticLocation?, IDiagnosticSource) | Reports a diagnostic at a specific location. |
| Suppress(ISuppression, IDeclaration, IDiagnosticSource) | Suppresses a diagnostic within a specific declaration scope. |