# Diagnostic

Class in [Yarn.Compiler](/3.1/api/csharp/yarn.compiler.md)

Inherits from `System.Object`

## Summary

A diagnostic message that describes an error, warning or informational message that the user can take action on.

```csharp
public sealed class Diagnostic
```

## Remarks

Diagnostics are presented to the user as the result of compilation, through the [CompilationResult](/3.1/api/csharp/yarn.compiler/yarn.compiler.compilationresult.md) class's [Diagnostics](/3.1/api/csharp/yarn.compiler/yarn.compiler.compilationresult/yarn.compiler.compilationresult.diagnostics.md) property.

## Constructors

| Name                                                                                                                                                          | Description                                                                                                      |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
| [Diagnostic(string,IToken,string,DiagnosticSeverity)](/3.1/api/csharp/yarn.compiler/yarn.compiler.diagnostic/yarn.compiler.diagnostic..ctor-4.md)             | Initializes a new instance of the [Diagnostic](/3.1/api/csharp/yarn.compiler/yarn.compiler.diagnostic.md) class. |
| [Diagnostic(string,ParserRuleContext?,string,DiagnosticSeverity)](/3.1/api/csharp/yarn.compiler/yarn.compiler.diagnostic/yarn.compiler.diagnostic..ctor-3.md) | Initializes a new instance of the [Diagnostic](/3.1/api/csharp/yarn.compiler/yarn.compiler.diagnostic.md) class. |
| [Diagnostic(string,string,DiagnosticSeverity)](/3.1/api/csharp/yarn.compiler/yarn.compiler.diagnostic/yarn.compiler.diagnostic..ctor-1.md)                    | Initializes a new instance of the [Diagnostic](/3.1/api/csharp/yarn.compiler/yarn.compiler.diagnostic.md) class. |
| [Diagnostic(string,DiagnosticSeverity)](/3.1/api/csharp/yarn.compiler/yarn.compiler.diagnostic/yarn.compiler.diagnostic..ctor-2.md)                           | Initializes a new instance of the [Diagnostic](/3.1/api/csharp/yarn.compiler/yarn.compiler.diagnostic.md) class. |
| [Diagnostic(string,Range,string,DiagnosticSeverity)](/3.1/api/csharp/yarn.compiler/yarn.compiler.diagnostic/yarn.compiler.diagnostic..ctor-5.md)              | Initializes a new instance of the [Diagnostic](/3.1/api/csharp/yarn.compiler/yarn.compiler.diagnostic.md) class. |

## Enums

| Name                                                                                                                        | Description                |
| --------------------------------------------------------------------------------------------------------------------------- | -------------------------- |
| [DiagnosticSeverity](/3.1/api/csharp/yarn.compiler/yarn.compiler.diagnostic/yarn.compiler.diagnostic.diagnosticseverity.md) | The severity of the issue. |

## Methods

| Name                                                                                                            | Description |
| --------------------------------------------------------------------------------------------------------------- | ----------- |
| [Equals(object)](/3.1/api/csharp/yarn.compiler/yarn.compiler.diagnostic/yarn.compiler.diagnostic.equals.md)     |             |
| [GetHashCode()](/3.1/api/csharp/yarn.compiler/yarn.compiler.diagnostic/yarn.compiler.diagnostic.gethashcode.md) |             |
| [ToString()](/3.1/api/csharp/yarn.compiler/yarn.compiler.diagnostic/yarn.compiler.diagnostic.tostring.md)       |             |

## Properties

| Name                                                                                                    | Description                                                                                                                                                                         |
| ------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Column](/3.1/api/csharp/yarn.compiler/yarn.compiler.diagnostic/yarn.compiler.diagnostic.column.md)     | Gets the zero-indexed character number in FileName at which the issue begins.                                                                                                       |
| [Context](/3.1/api/csharp/yarn.compiler/yarn.compiler.diagnostic/yarn.compiler.diagnostic.context.md)   | Gets or sets the source text of [FileName](/3.1/api/csharp/yarn.compiler/yarn.compiler.diagnostic/yarn.compiler.diagnostic.filename.md) containing the issue.                       |
| [FileName](/3.1/api/csharp/yarn.compiler/yarn.compiler.diagnostic/yarn.compiler.diagnostic.filename.md) | Gets or sets the path, URI or file-name that the issue occurred in.                                                                                                                 |
| [Line](/3.1/api/csharp/yarn.compiler/yarn.compiler.diagnostic/yarn.compiler.diagnostic.line.md)         | Gets the zero-indexed line number in FileName at which the issue begins.                                                                                                            |
| [Message](/3.1/api/csharp/yarn.compiler/yarn.compiler.diagnostic/yarn.compiler.diagnostic.message.md)   | Gets or sets the description of the issue.                                                                                                                                          |
| [Range](/3.1/api/csharp/yarn.compiler/yarn.compiler.diagnostic/yarn.compiler.diagnostic.range.md)       | Gets or sets the range of the file indicated by [FileName](/3.1/api/csharp/yarn.compiler/yarn.compiler.diagnostic/yarn.compiler.diagnostic.filename.md) that the issue occurred in. |
| [Severity](/3.1/api/csharp/yarn.compiler/yarn.compiler.diagnostic/yarn.compiler.diagnostic.severity.md) | Gets or sets the severity of the issue.                                                                                                                                             |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.yarnspinner.dev/3.1/api/csharp/yarn.compiler/yarn.compiler.diagnostic.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
