示例#1
0
        public void AppendFrom(ChunkListMap *src)
        {
            if (src->buckets == null)
            {
                return;
            }

            Node *srcBuckets     = src->buckets;
            int   srcBucketCount = (int)src->hashMask + 1;

            for (int i = 0; i < srcBucketCount; i++)
            {
                Node *srcNode = &srcBuckets[i];
                if (!srcNode->IsDeleted() && !srcNode->IsFree())
                {
                    AddMultiple(&srcNode->list);
                }
            }
        }
 public unsafe void AppendFrom(ChunkListMap *src)
 {
     if (src.buckets != null)
     {
         Node *buckets = src.buckets;
         int   num     = ((int)src.hashMask) + 1;
         int   num2    = 0;
         while (true)
         {
             if (num2 >= num)
             {
                 break;
             }
             Node *nodePtr2 = buckets + num2;
             if (!nodePtr2.IsDeleted() && !nodePtr2.IsFree())
             {
                 this.AddMultiple(&nodePtr2->list);
             }
             num2++;
         }
     }
 }