protected int BaseCompareHelper(AnalysisEntityBasedPredicateAnalysisData <TValue> newData, MapAbstractDomain <AnalysisEntity, TValue> coreDataAnalysisDomain) { var baseCompareResult = base.BaseCompareHelper(newData); if (baseCompareResult != 0) { Debug.Assert(baseCompareResult < 0, "Non-monotonic Merge function"); return(baseCompareResult); } var coreAnalysisDataCompareResult = coreDataAnalysisDomain.Compare(CoreAnalysisData, newData.CoreAnalysisData); Debug.Assert(coreAnalysisDataCompareResult <= 0, "Non-monotonic Merge function"); return(coreAnalysisDataCompareResult); }
public abstract AnalysisEntityBasedPredicateAnalysisData <TValue> WithMergedData(AnalysisEntityBasedPredicateAnalysisData <TValue> data, MapAbstractDomain <AnalysisEntity, TValue> coreDataAnalysisDomain);
public abstract int Compare(AnalysisEntityBasedPredicateAnalysisData <TValue> other, MapAbstractDomain <AnalysisEntity, TValue> coreDataAnalysisDomain);
public PredicatedAnalysisDataDomain(MapAbstractDomain <AnalysisEntity, TValue> coreDataAnalysisDomain) { CoreDataAnalysisDomain = coreDataAnalysisDomain; }