Arnolyzer.Analyzers.ImmutabilityAnalyzers.VariableMutations.GetAllMutations C# (CSharp) Метод

GetAllMutations() приватный статический Метод

private static GetAllMutations ( Microsoft.CodeAnalysis.SyntaxNode syntax ) : IEnumerable
syntax Microsoft.CodeAnalysis.SyntaxNode
Результат IEnumerable
        private static IEnumerable<NameAndLocation> GetAllMutations(SyntaxNode syntax)
        {
            var assignments = syntax.DescendantNodes()
                                    .Where(NodeIsAssignmentExpression)
                                    .Cast<AssignmentExpressionSyntax>()
                                    .Select(expression => new NameAndLocation(
                                                GetIdentifierFromAssignmentExpression(expression),
                                                expression.GetLocation()));

            var prefixExpressions = syntax.DescendantNodes()
                                          .Where(NodeIsPrefixExpression)
                                          .Cast<PrefixUnaryExpressionSyntax>()
                                          .Select(expression => new NameAndLocation(
                                                      GetIdentifierFromPrefixOperand(expression),
                                                      expression.GetLocation()));

            var postfixExpressions = syntax.DescendantNodes()
                                           .Where(NodeIsPostfixExpression)
                                           .Cast<PostfixUnaryExpressionSyntax>()
                                           .Select(expression => new NameAndLocation(
                                                       GetIdentifierFromPostfixOperand(expression),
                                                       expression.GetLocation()));

            return assignments.Cons(prefixExpressions).Cons(postfixExpressions);
        }