File: ChangeSignature\ChangeSignatureResult.cs
Web Access
Project: src\src\Features\Core\Portable\Microsoft.CodeAnalysis.Features.csproj (Microsoft.CodeAnalysis.Features)
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.
 
using System.Diagnostics.CodeAnalysis;
 
namespace Microsoft.CodeAnalysis.ChangeSignature;
 
internal sealed class ChangeSignatureResult(
    bool succeeded,
    Solution? updatedSolution = null,
    string? name = null,
    Glyph? glyph = null,
    bool previewChanges = false,
    ChangeSignatureFailureKind? changeSignatureFailureKind = null,
    string? confirmationMessage = null)
{
    [MemberNotNullWhen(true, nameof(UpdatedSolution))]
    public bool Succeeded { get; } = succeeded;
    public Solution? UpdatedSolution { get; } = updatedSolution;
    public Glyph? Glyph { get; } = glyph;
    public bool PreviewChanges { get; } = previewChanges;
    public ChangeSignatureFailureKind? ChangeSignatureFailureKind { get; } = changeSignatureFailureKind;
    public string? ConfirmationMessage { get; } = confirmationMessage;
 
    /// <summary>
    /// Name of the symbol. Needed here for the Preview Changes dialog.
    /// </summary>
    public string? Name { get; } = name;
}