protected DataFlowOperationVisitor( AbstractDomain <TAbstractAnalysisValue> valueDomain, INamedTypeSymbol containingTypeSymbol, DataFlowAnalysisResult <NullBlockAnalysisResult, NullAbstractValue> nullAnalysisResultOpt, DataFlowAnalysisResult <PointsToBlockAnalysisResult, PointsToAbstractValue> pointsToAnalysisResultOpt) { ValueDomain = valueDomain; _nullAnalysisResultOpt = nullAnalysisResultOpt; _pointsToAnalysisResultOpt = pointsToAnalysisResultOpt; _valueCacheBuilder = ImmutableDictionary.CreateBuilder <IOperation, TAbstractAnalysisValue>(); _pendingArgumentsToReset = new List <IArgumentOperation>(); ThisOrMePointsToAbstractValue = GetThisOrMeInstancePointsToValue(containingTypeSymbol); AnalysisEntityFactory = new AnalysisEntityFactory( HasPointsToAnalysisResult ? GetPointsToAbstractValue : (Func <IOperation, PointsToAbstractValue>)null, containingTypeSymbol); }
public MapAbstractDomain(AbstractDomain <TValue> valueDomain) { _valueDomain = valueDomain; }
protected BackwardDataFlowAnalysis(AbstractDomain <TAnalysisData> analysisDomain, DataFlowOperationVisitor <TAnalysisData, TAbstractAnalysisValue> operationVisitor) : base(analysisDomain, operationVisitor) { }
protected DataFlowOperationVisitor(AbstractDomain <TAbstractAnalysisValue> valueDomain, DataFlowAnalysisResult <NullBlockAnalysisResult, NullAbstractValue> nullAnalysisResultOpt) { ValueDomain = valueDomain; _nullAnalysisResultOpt = nullAnalysisResultOpt; _valueCacheBuilder = ImmutableDictionary.CreateBuilder <IOperation, TAbstractAnalysisValue>(); }
protected DataFlowAnalysis(AbstractDomain <TAnalysisData> analysisDomain, DataFlowOperationVisitor <TAnalysisData, TAbstractAnalysisValue> operationVisitor) { AnalysisDomain = analysisDomain; OperationVisitor = operationVisitor; }