# CompilationResult

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

Inherits from `System.Object`

## Summary

The result of a compilation.

```csharp
public class CompilationResult : ICodeDumpHelper
```

## Remarks

Instances of this class are produced as a result of supplying a [CompilationJob](/3.1/api/csharp/yarn.compiler/yarn.compiler.compilationjob.md) to [Compile(CompilationJob)](/3.1/api/csharp/yarn.compiler/yarn.compiler.compiler/yarn.compiler.compiler.compile.md) .

## Methods

| Name                                                                                                                                                            | Description                                                                           |
| --------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- |
| [GetDescriptionForVariable(string)](/3.1/api/csharp/yarn.compiler/yarn.compiler.compilationresult/yarn.compiler.compilationresult.getdescriptionforvariable.md) | Gets the description for a given variable, if it exists.                              |
| [GetLabelsForNode(string)](/3.1/api/csharp/yarn.compiler/yarn.compiler.compilationresult/yarn.compiler.compilationresult.getlabelsfornode.md)                   | Gets the mapping of instruction indices to named labels found in the node.            |
| [GetStringForKey(string)](/3.1/api/csharp/yarn.compiler/yarn.compiler.compilationresult/yarn.compiler.compilationresult.getstringforkey.md)                     | Gets the user-facing string for a given key from the code dump helper's string table. |

## Properties

| Name                                                                                                                                                      | Description                                                                                                                                                                                                                                                                                   |
| --------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [ContainsErrors](/3.1/api/csharp/yarn.compiler/yarn.compiler.compilationresult/yarn.compiler.compilationresult.containserrors.md)                         | Gets a value indicating whether this compilation result contains any error diagnostics.                                                                                                                                                                                                       |
| [ContainsImplicitStringTags](/3.1/api/csharp/yarn.compiler/yarn.compiler.compilationresult/yarn.compiler.compilationresult.containsimplicitstringtags.md) | Gets a value indicating whether the compiler had to create line IDs for lines in the source code that lacked `#line:` tags.                                                                                                                                                                   |
| [DebugInfo](/3.1/api/csharp/yarn.compiler/yarn.compiler.compilationresult/yarn.compiler.compilationresult.debuginfo.md)                                   | Gets the collection of [DebugInfo](/3.1/api/csharp/yarn.compiler/yarn.compiler.compilationresult/yarn.compiler.compilationresult.debuginfo.md) objects for each node in [Program](/3.1/api/csharp/yarn.compiler/yarn.compiler.compilationresult/yarn.compiler.compilationresult.program.md) . |
| [Declarations](/3.1/api/csharp/yarn.compiler/yarn.compiler.compilationresult/yarn.compiler.compilationresult.declarations.md)                             | Gets the collection of variable declarations that were found during compilation.                                                                                                                                                                                                              |
| [Diagnostics](/3.1/api/csharp/yarn.compiler/yarn.compiler.compilationresult/yarn.compiler.compilationresult.diagnostics.md)                               | Gets the collection of [Diagnostic](/3.1/api/csharp/yarn.compiler/yarn.compiler.diagnostic.md) objects that describe problems in the source code.                                                                                                                                             |
| [FileTags](/3.1/api/csharp/yarn.compiler/yarn.compiler.compilationresult/yarn.compiler.compilationresult.filetags.md)                                     | Gets the collection of file-level tags found in the source code.                                                                                                                                                                                                                              |
| [ParseResults](/3.1/api/csharp/yarn.compiler/yarn.compiler.compilationresult/yarn.compiler.compilationresult.parseresults.md)                             | Contains the results of parsing each input of the compilation.                                                                                                                                                                                                                                |
| [Program](/3.1/api/csharp/yarn.compiler/yarn.compiler.compilationresult/yarn.compiler.compilationresult.program.md)                                       | Gets the compiled Yarn program that the [Compiler](/3.1/api/csharp/yarn.compiler/yarn.compiler.compiler.md) produced.                                                                                                                                                                         |
| [ProjectDebugInfo](/3.1/api/csharp/yarn.compiler/yarn.compiler.compilationresult/yarn.compiler.compilationresult.projectdebuginfo.md)                     | Gets the debugging information for this compiled project.                                                                                                                                                                                                                                     |
| [StringTable](/3.1/api/csharp/yarn.compiler/yarn.compiler.compilationresult/yarn.compiler.compilationresult.stringtable.md)                               | Gets a dictionary mapping line IDs to StringInfo objects.                                                                                                                                                                                                                                     |
| [UserDefinedTypes](/3.1/api/csharp/yarn.compiler/yarn.compiler.compilationresult/yarn.compiler.compilationresult.userdefinedtypes.md)                     | Gets a collection of any types that were defined by the user in the input (for example, user-defined enum types.)                                                                                                                                                                             |


---

# 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.compilationresult.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.
