// Copyright (c) Microsoft. All rights reserved. using System.Linq.Expressions; namespace Microsoft.Agents.AI.Workflows.UnitTests; internal sealed class SubstitutionVisitor(ParameterExpression parameter, Expression substitution) : ExpressionVisitor { private ParameterExpression Parameter => parameter; private Expression Substitution => substitution; protected override Expression VisitParameter(ParameterExpression node) { if (node.Name == this.Parameter.Name) { return this.Substitution; } return base.VisitParameter(node); } }