public override void VisitConditional([NotNull] IConditionalOperation operation) { EvaluationResult trueResult = owner.AnalyzeExpression(operation.WhenTrue); if (operation.WhenFalse == null || trueResult.IsDeferred) { Result.CopyFrom(trueResult); } else { EvaluationResult falseResult = owner.AnalyzeExpression(operation.WhenFalse); Result.CopyFrom(EvaluationResult.Unify(trueResult, falseResult)); } }
private void AnalyzeAssignmentValue([NotNull] IOperation assignedValue) { Guard.NotNull(assignedValue, nameof(assignedValue)); EvaluationResult result = owner.AnalyzeExpression(assignedValue); Result.CopyIfConclusiveFrom(result); }
private void AnalyzeAssignmentValue([NotNull] IOperation assignedValue) { Guard.NotNull(assignedValue, nameof(assignedValue)); EvaluationResult result = owner.AnalyzeExpression(assignedValue); UpdateResult(result); }