protected override EvaluationResult EvaluateImpl(SyntaxNode node)
{
var assignment = (AssignmentExpressionSyntax)node;
var left = assignment.Left as MemberAccessExpressionSyntax;
if (left == null || !left.Expression.IsKind(SyntaxKind.ThisExpression))
{
return null;
}
var variable = left.Name as IdentifierNameSyntax;
var right = assignment.Right as IdentifierNameSyntax;
if (right == null || variable == null)
{
return null;
}
if (variable.Identifier.ValueText == right.Identifier.ValueText)
{
return new EvaluationResult
{
Snippet = assignment.ToFullString()
};
}
return null;
}
}