public ConsistencyState(ConsistencyState exp) : base(exp) { this.consistency = new Dictionary <IPTAnalysisNode, AbstractValue>(exp.consistency); exposedNodes = new Set <IPTAnalysisNode>(exp.exposedNodes); this.nonNullState = exp.nonNullState; }
public ConsistencyState(Method m, PointsToAnalysis pta) : base(m, pta) { consistency = new Dictionary <IPTAnalysisNode, AbstractValue>(); exposedNodes = new Set <IPTAnalysisNode>(); this.nonNullState = null; }
protected override IDataFlowState Merge(CfgBlock previous, CfgBlock joinPoint, IDataFlowState atMerge, IDataFlowState incoming, out bool resultDiffersFromPreviousMerge, out bool mergeIsPrecise) { if (nonNullInfo != null) { INonNullState nns = nonNullInfo.OnEdge(previous, joinPoint); if (nns == null && atMerge != null) { incoming = null; } } return(base.Merge(previous, joinPoint, atMerge, incoming, out resultDiffersFromPreviousMerge, out mergeIsPrecise)); }
public ConsistencyState(ConsistencyState exp) : base(exp) { this.consistency = new Dictionary<IPTAnalysisNode, AbstractValue>(exp.consistency); exposedNodes = new Set<IPTAnalysisNode>(exp.exposedNodes); this.nonNullState = exp.nonNullState; }
public ConsistencyState(Method m, PointsToAnalysis pta) : base(m,pta) { consistency = new Dictionary<IPTAnalysisNode, AbstractValue>(); exposedNodes = new Set<IPTAnalysisNode>(); this.nonNullState = null; }