> For the complete documentation index, see [llms.txt](https://docs.yarnspinner.dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.yarnspinner.dev/2.5/api/csharp/yarn.compiler/yarn.compiler.declarationbuilder.md).

# DeclarationBuilder

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

Inherits from `System.Object`

## Summary

Provides methods for constructing [Declaration](/2.5/api/csharp/yarn.compiler/yarn.compiler.declaration.md) objects.

```csharp
public class DeclarationBuilder
```

## Remarks

To use this class, create an instance of it, and call the `With` -prefixed methods to set properties. When you're done, access the [Declaration](/2.5/api/csharp/yarn.compiler/yarn.compiler.declarationbuilder/yarn.compiler.declarationbuilder.declaration.md) property to get the final, constructed [Declaration](/2.5/api/csharp/yarn.compiler/yarn.compiler.declaration.md) .

## Methods

| Name                                                                                                                                                         | Description                                                                                                                                                                                                                                                           |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [WithDefaultValue(System.IConvertible)](/2.5/api/csharp/yarn.compiler/yarn.compiler.declarationbuilder/yarn.compiler.declarationbuilder.withdefaultvalue.md) | Sets the [DefaultValue](/2.5/api/csharp/yarn.compiler/yarn.compiler.declaration/yarn.compiler.declaration.defaultvalue.md) of the [Declaration](/2.5/api/csharp/yarn.compiler/yarn.compiler.declarationbuilder/yarn.compiler.declarationbuilder.declaration.md) .     |
| [WithDescription(string)](/2.5/api/csharp/yarn.compiler/yarn.compiler.declarationbuilder/yarn.compiler.declarationbuilder.withdescription.md)                | Sets the [Description](/2.5/api/csharp/yarn.compiler/yarn.compiler.declaration/yarn.compiler.declaration.description.md) of the [Declaration](/2.5/api/csharp/yarn.compiler/yarn.compiler.declarationbuilder/yarn.compiler.declarationbuilder.declaration.md) .       |
| [WithImplicit(bool)](/2.5/api/csharp/yarn.compiler/yarn.compiler.declarationbuilder/yarn.compiler.declarationbuilder.withimplicit.md)                        | Sets the [IsImplicit](/2.5/api/csharp/yarn.compiler/yarn.compiler.declaration/yarn.compiler.declaration.isimplicit.md) of the [Declaration](/2.5/api/csharp/yarn.compiler/yarn.compiler.declarationbuilder/yarn.compiler.declarationbuilder.declaration.md) .         |
| [WithName(string)](/2.5/api/csharp/yarn.compiler/yarn.compiler.declarationbuilder/yarn.compiler.declarationbuilder.withname.md)                              | Sets the [Name](/2.5/api/csharp/yarn.compiler/yarn.compiler.declaration/yarn.compiler.declaration.name.md) of the [Declaration](/2.5/api/csharp/yarn.compiler/yarn.compiler.declarationbuilder/yarn.compiler.declarationbuilder.declaration.md) .                     |
| [WithRange(Yarn.Compiler.Range)](/2.5/api/csharp/yarn.compiler/yarn.compiler.declarationbuilder/yarn.compiler.declarationbuilder.withrange.md)               | Sets the [Range](/2.5/api/csharp/yarn.compiler/yarn.compiler.declaration/yarn.compiler.declaration.range.md) of the [Declaration](/2.5/api/csharp/yarn.compiler/yarn.compiler.declarationbuilder/yarn.compiler.declarationbuilder.declaration.md) .                   |
| [WithSourceFileName(string)](/2.5/api/csharp/yarn.compiler/yarn.compiler.declarationbuilder/yarn.compiler.declarationbuilder.withsourcefilename.md)          | Sets the [SourceFileName](/2.5/api/csharp/yarn.compiler/yarn.compiler.declaration/yarn.compiler.declaration.sourcefilename.md) of the [Declaration](/2.5/api/csharp/yarn.compiler/yarn.compiler.declarationbuilder/yarn.compiler.declarationbuilder.declaration.md) . |
| [WithSourceNodeName(string)](/2.5/api/csharp/yarn.compiler/yarn.compiler.declarationbuilder/yarn.compiler.declarationbuilder.withsourcenodename.md)          | Sets the [SourceNodeName](/2.5/api/csharp/yarn.compiler/yarn.compiler.declaration/yarn.compiler.declaration.sourcenodename.md) of the [Declaration](/2.5/api/csharp/yarn.compiler/yarn.compiler.declarationbuilder/yarn.compiler.declarationbuilder.declaration.md) . |
| [WithType(IType)](/2.5/api/csharp/yarn.compiler/yarn.compiler.declarationbuilder/yarn.compiler.declarationbuilder.withtype.md)                               | Sets the [Type](/2.5/api/csharp/yarn.compiler/yarn.compiler.declaration/yarn.compiler.declaration.type.md) of the [Declaration](/2.5/api/csharp/yarn.compiler/yarn.compiler.declarationbuilder/yarn.compiler.declarationbuilder.declaration.md) .                     |

## Properties

| Name                                                                                                                          | Description                                                                                                                                                                                                                                                   |
| ----------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Declaration](/2.5/api/csharp/yarn.compiler/yarn.compiler.declarationbuilder/yarn.compiler.declarationbuilder.declaration.md) | Gets the [Declaration](/2.5/api/csharp/yarn.compiler/yarn.compiler.declarationbuilder/yarn.compiler.declarationbuilder.declaration.md) instance constructed by this [DeclarationBuilder](/2.5/api/csharp/yarn.compiler/yarn.compiler.declarationbuilder.md) . |
