Esempio n. 1
0
        public ConsistencyState(ConsistencyState exp)
            : base(exp)
        {
            this.consistency = new Dictionary <IPTAnalysisNode, AbstractValue>(exp.consistency);


            exposedNodes      = new Set <IPTAnalysisNode>(exp.exposedNodes);
            this.nonNullState = exp.nonNullState;
        }
Esempio n. 2
0
        public ConsistencyState(Method m, PointsToAnalysis pta)
            : base(m, pta)
        {
            consistency = new Dictionary <IPTAnalysisNode, AbstractValue>();


            exposedNodes      = new Set <IPTAnalysisNode>();
            this.nonNullState = null;
        }
Esempio n. 3
0
 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;
 }