예제 #1
0
 public void Visit(object slotChange)
 {
     if (!((SlotChange)slotChange).SlotModified())
     {
         return;
     }
     _enclosing._bTree.Remove(_enclosing.Transaction(), new IdSlotMapping(((
                                                                               TreeInt)slotChange)._key, 0, 0));
     if (((SlotChange)slotChange).RemoveId())
     {
         return;
     }
     _enclosing._bTree.Add(_enclosing.Transaction(), new IdSlotMapping(((TreeInt
                                                                         )slotChange)._key, ((SlotChange)slotChange).NewSlot()));
     if (DTrace.enabled)
     {
         DTrace.SlotMapped.LogLength(((TreeInt)slotChange)._key, ((SlotChange)slotChange).
                                     NewSlot());
     }
 }
예제 #2
0
 public void Visit(object id)
 {
     _enclosing._bTree.Remove(_enclosing.Transaction(), new IdSlotMapping(((
                                                                               (int)id)), 0, 0));
 }