# PowerShellVariableReferenceAnnotation<T>

- Kind: `record`
- Package: [CommunityToolkit.Aspire.Hosting.PowerShell](/reference/api/csharp/communitytoolkit.aspire.hosting.powershell.md)
- Version: `13.4.0`
- Namespace: `CommunityToolkit.Aspire.Hosting.PowerShell`
- Target framework: `net10.0`
- Source: [GitHub](https://github.com/CommunityToolkit/Aspire/blob/d9dc6fc02412d7398c5722840513d99965a6e98f/src/CommunityToolkit.Aspire.Hosting.PowerShell/PowerShellRunspacePoolResourceBuilderExtensions.cs)
- Implements: `IResourceAnnotation`, `IEquatable<PowerShellVariableReferenceAnnotation<T>>`

Represents a PowerShell variable reference annotation.

## Definition

```csharp
namespace CommunityToolkit.Aspire.Hosting.PowerShell;

public record PowerShellVariableReferenceAnnotation<T>
    : Aspire.Hosting.ApplicationModel.IResourceAnnotation,
      System.IEquatable<CommunityToolkit.Aspire.Hosting.PowerShell.PowerShellVariableReferenceAnnotation<T>>
{
    // ...
}
```

## Constructors

- [PowerShellVariableReferenceAnnotation(string, T)](/reference/api/csharp/communitytoolkit.aspire.hosting.powershell/powershellvariablereferenceannotation-1/constructors.md#constructor-string-t) -- Represents a PowerShell variable reference annotation.

## Properties

- [Name](/reference/api/csharp/communitytoolkit.aspire.hosting.powershell/powershellvariablereferenceannotation-1/properties.md#name) : `string` `get; init`
- [Value](/reference/api/csharp/communitytoolkit.aspire.hosting.powershell/powershellvariablereferenceannotation-1/properties.md#value) : `T` `get; init`

## Methods

- [<Clone>$](/reference/api/csharp/communitytoolkit.aspire.hosting.powershell/powershellvariablereferenceannotation-1/methods.md#clone) : [PowerShellVariableReferenceAnnotation<T>](/reference/api/csharp/communitytoolkit.aspire.hosting.powershell/powershellvariablereferenceannotation-1.md) `virtual`
- [Deconstruct(string, T)](/reference/api/csharp/communitytoolkit.aspire.hosting.powershell/powershellvariablereferenceannotation-1/methods.md#deconstruct-string-t)
- [Equals(object?)](/reference/api/csharp/communitytoolkit.aspire.hosting.powershell/powershellvariablereferenceannotation-1/methods.md#equals-object) : `bool` -- Determines whether the specified object is equal to the current object.
- [Equals(PowerShellVariableReferenceAnnotation<T>)](/reference/api/csharp/communitytoolkit.aspire.hosting.powershell/powershellvariablereferenceannotation-1/methods.md#equals-powershellvariablereferenceannotation-t) : `bool` `virtual` -- Indicates whether the current object is equal to another object of the same type.
- [GetHashCode](/reference/api/csharp/communitytoolkit.aspire.hosting.powershell/powershellvariablereferenceannotation-1/methods.md#gethashcode) : `int` -- Serves as the default hash function.
- [op_Equality(PowerShellVariableReferenceAnnotation<T>, PowerShellVariableReferenceAnnotation<T>)](/reference/api/csharp/communitytoolkit.aspire.hosting.powershell/powershellvariablereferenceannotation-1/methods.md#op-equality-powershellvariablereferenceannotation-t-powershellvariablereferenceannotation-t) : `bool` `static`
- [op_Inequality(PowerShellVariableReferenceAnnotation<T>, PowerShellVariableReferenceAnnotation<T>)](/reference/api/csharp/communitytoolkit.aspire.hosting.powershell/powershellvariablereferenceannotation-1/methods.md#op-inequality-powershellvariablereferenceannotation-t-powershellvariablereferenceannotation-t) : `bool` `static`
- [ToString](/reference/api/csharp/communitytoolkit.aspire.hosting.powershell/powershellvariablereferenceannotation-1/methods.md#tostring) : `string` -- Returns a string that represents the current object.
