Exemplo n.º 1
0
 public override ExpressionSyntax VisitDeconstructionAssignment(
     IDeconstructionAssignmentOperation operation,
     Scope scope) =>
 AssignmentExpression(
     SyntaxKind.SimpleAssignmentExpression,
     operation.Target.Accept(this, scope),
     operation.Value.Accept(this, scope)
     );
Exemplo n.º 2
0
            public override void VisitDeconstructionAssignment([NotNull] IDeconstructionAssignmentOperation operation)
            {
                if (operation.Target is ITupleOperation tuple)
                {
                    foreach (IOperation element in tuple.Elements)
                    {
                        RegisterAssignmentToParameter(element);
                    }
                }

                base.VisitDeconstructionAssignment(operation);
            }
                public override void VisitDeconstructionAssignment([NotNull] IDeconstructionAssignmentOperation operation)
                {
                    base.VisitDeconstructionAssignment(operation);

                    if (operation.Target is ITupleOperation tupleOperation && EndsBeforeMaxLocation(operation))
                    {
                        foreach (IOperation element in tupleOperation.Elements)
                        {
                            if (element is ILocalReferenceOperation targetLocal && currentLocal.Equals(targetLocal.Local))
                            {
                                UpdateResult(EvaluationResult.Unknown);
                            }
                        }
                    }
                }
Exemplo n.º 4
0
 public override IOperation VisitDeconstructionAssignment(IDeconstructionAssignmentOperation operation, object argument)
 {
     return(new DeconstructionAssignmentExpression(Visit(operation.Target), Visit(operation.Value), ((Operation)operation).SemanticModel, operation.Syntax, operation.Type, operation.ConstantValue, operation.IsImplicit));
 }
Exemplo n.º 5
0
 public override void VisitDeconstructionAssignment(IDeconstructionAssignmentOperation operation)
 {
     Assert.Equal(OperationKind.DeconstructionAssignment, operation.Kind);
     VisitAssignment(operation);
 }
Exemplo n.º 6
0
 public virtual void VisitDeconstructionAssignment(IDeconstructionAssignmentOperation operation)
 {
     DefaultVisit(operation);
 }
Exemplo n.º 7
0
 public override void VisitDeconstructionAssignment([NotNull] IDeconstructionAssignmentOperation operation)
 {
     base.VisitDeconstructionAssignment(operation);
 }
 public override TAbstractAnalysisValue VisitDeconstructionAssignment(IDeconstructionAssignmentOperation operation, object argument)
 {
     return(VisitAssignmentOperation(operation, argument));
 }
Exemplo n.º 9
0
        public override Scope VisitDeconstructionAssignment(IDeconstructionAssignmentOperation operation, Scope currentScope)
        {
            var newScope = operation.Target.Accept(this, currentScope);

            return(operation.Value.Accept(this, newScope));
        }
Exemplo n.º 10
0
 public override bool VisitDeconstructionAssignment([NotNull] IDeconstructionAssignmentOperation operation1,
                                                    [CanBeNull] IOperation argument)
 {
     return(argument is IDeconstructionAssignmentOperation operation2 &&
            AreBaseOperationsEqual(operation1, operation2));
 }