예제 #1
0
 public DiffEngine()
 {
     _source    = null;
     _dest      = null;
     _matchList = null;
     _stateList = null;
     _level     = DiffEngineLevel.FastImperfect;
 }
예제 #2
0
        public double ProcessDiff(IDiffList source, IDiffList destination)
        {
            DateTime dt = DateTime.Now;

            _source    = source;
            _dest      = destination;
            _matchList = new ArrayList();

            int dcount = _dest.Count();
            int scount = _source.Count();


            if ((dcount > 0) && (scount > 0))
            {
                _stateList = new DiffStateList(dcount);
                ProcessRange(0, dcount - 1, 0, scount - 1);
            }

            TimeSpan ts = DateTime.Now - dt;

            return(ts.TotalSeconds);
        }