Пример #1
0
 public int Compare(object o1, object o2)
 {
     if (o1 == o2)
     {
         return(0);
     }
     else if (!(o1 is PointerValue) || !(o2 is PointerValue))
     {
         return(1);
     }
     else
     {
         PointerValue ptr1 = o1 as PointerValue;
         PointerValue ptr2 = o2 as PointerValue;
         int          res  = (int)this.objHash[ptr1.GetHeapObject()] - (int)this.objHash[ptr2.GetHeapObject()];
         if (res == 0)
         {
             res = ptr1.GetQuasiOffset() - ptr2.GetQuasiOffset();
         }
         return(res);
     }
 }