예제 #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;
        }