public VariableAssignmentWalker([NotNull] ILocalSymbol local, [NotNull] ReturnValueAnalyzer owner) { Guard.NotNull(local, nameof(local)); Guard.NotNull(owner, nameof(owner)); currentLocal = local; this.owner = owner; }
private void AnalyzeReturnStatement([NotNull] IReturnStatement returnStatement, OperationBlockAnalysisContext context, [NotNull] IDictionary <ILocalSymbol, EvaluationResult> variableEvaluationCache) { if (!ReturnsConstant(returnStatement) && !IsYieldBreak(returnStatement)) { var analyzer = new ReturnValueAnalyzer(context, variableEvaluationCache); analyzer.Analyze(returnStatement); } }
private static void AnalyzeReturnStatements([NotNull][ItemNotNull] IList <IReturnOperation> returnStatements, OperationBlockAnalysisContext context) { if (returnStatements.Any()) { foreach (IReturnOperation returnStatement in returnStatements) { context.CancellationToken.ThrowIfCancellationRequested(); var analyzer = new ReturnValueAnalyzer(context); analyzer.Analyze(returnStatement); } } }
public ExpressionVisitor([NotNull] ReturnValueAnalyzer owner) { Guard.NotNull(owner, nameof(owner)); this.owner = owner; }